• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2009 The Guava Authors
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.google.common.collect;
18 
19 import com.google.common.annotations.GwtCompatible;
20 import com.google.common.annotations.GwtIncompatible;
21 import com.google.common.testing.EqualsTester;
22 
23 /**
24  * Tests {@link EmptyImmutableTable}
25  *
26  * @author Gregory Kick
27  */
28 @GwtCompatible(emulated = true)
29 public class EmptyImmutableTableTest extends AbstractImmutableTableTest {
30   private static final ImmutableTable<Character, Integer, String> INSTANCE = ImmutableTable.of();
31 
getTestInstances()32   @Override Iterable<ImmutableTable<Character, Integer, String>> getTestInstances() {
33     return ImmutableSet.of(INSTANCE);
34   }
35 
testHashCode()36   public void testHashCode() {
37     assertEquals(0, INSTANCE.hashCode());
38   }
39 
testEqualsObject()40   public void testEqualsObject() {
41     Table<Character, Integer, String> nonEmptyTable = HashBasedTable.create();
42     nonEmptyTable.put('A', 1, "blah");
43 
44     new EqualsTester()
45         .addEqualityGroup(INSTANCE, HashBasedTable.create(), TreeBasedTable.create())
46         .addEqualityGroup(nonEmptyTable)
47         .testEquals();
48   }
49 
50   @GwtIncompatible("ArrayTable")
testEqualsObjectNullValues()51   public void testEqualsObjectNullValues() {
52     new EqualsTester()
53         .addEqualityGroup(INSTANCE)
54         .addEqualityGroup(ArrayTable.create(ImmutableSet.of('A'), ImmutableSet.of(1)))
55         .testEquals();
56   }
57 
testToString()58   public void testToString() {
59     assertEquals("{}", INSTANCE.toString());
60   }
61 
testSize()62   public void testSize() {
63     assertEquals(0, INSTANCE.size());
64   }
65 
testGet()66   public void testGet() {
67     assertNull(INSTANCE.get('a', 1));
68   }
69 
testIsEmpty()70   public void testIsEmpty() {
71     assertTrue(INSTANCE.isEmpty());
72   }
73 
testCellSet()74   public void testCellSet() {
75     assertEquals(ImmutableSet.of(), INSTANCE.cellSet());
76   }
77 
testColumn()78   public void testColumn() {
79     assertEquals(ImmutableMap.of(), INSTANCE.column(1));
80   }
81 
testColumnKeySet()82   public void testColumnKeySet() {
83     assertEquals(ImmutableSet.of(), INSTANCE.columnKeySet());
84   }
85 
testColumnMap()86   public void testColumnMap() {
87     assertEquals(ImmutableMap.of(), INSTANCE.columnMap());
88   }
89 
testContains()90   public void testContains() {
91     assertFalse(INSTANCE.contains('a', 1));
92   }
93 
testContainsColumn()94   public void testContainsColumn() {
95     assertFalse(INSTANCE.containsColumn(1));
96   }
97 
testContainsRow()98   public void testContainsRow() {
99     assertFalse(INSTANCE.containsRow('a'));
100   }
101 
testContainsValue()102   public void testContainsValue() {
103     assertFalse(INSTANCE.containsValue("blah"));
104   }
105 
testRow()106   public void testRow() {
107     assertEquals(ImmutableMap.of(), INSTANCE.row('a'));
108   }
109 
testRowKeySet()110   public void testRowKeySet() {
111     assertEquals(ImmutableSet.of(), INSTANCE.rowKeySet());
112   }
113 
testRowMap()114   public void testRowMap() {
115     assertEquals(ImmutableMap.of(), INSTANCE.rowMap());
116   }
117 
testValues()118   public void testValues() {
119     assertTrue(INSTANCE.values().isEmpty());
120   }
121 }
122