• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2008 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.collect.testing.SortedMapInterfaceTest;
21 import java.util.SortedMap;
22 
23 @GwtCompatible
24 public class TreeBasedTableRowMapInterfaceTest extends SortedMapInterfaceTest<String, String> {
TreeBasedTableRowMapInterfaceTest()25   public TreeBasedTableRowMapInterfaceTest() {
26     super(false, false, true, true, true);
27   }
28 
29   @Override
makeEmptyMap()30   protected SortedMap<String, String> makeEmptyMap() {
31     TreeBasedTable<String, String, String> table = TreeBasedTable.create();
32     table.put("a", "b", "c");
33     table.put("c", "b", "a");
34     table.put("a", "a", "d");
35     return table.row("b");
36   }
37 
38   @Override
makePopulatedMap()39   protected SortedMap<String, String> makePopulatedMap() {
40     TreeBasedTable<String, String, String> table = TreeBasedTable.create();
41     table.put("a", "b", "c");
42     table.put("c", "b", "a");
43     table.put("b", "b", "x");
44     table.put("b", "c", "y");
45     table.put("b", "x", "n");
46     table.put("a", "a", "d");
47     return table.row("b");
48   }
49 
50   @Override
getKeyNotInPopulatedMap()51   protected String getKeyNotInPopulatedMap() {
52     return "q";
53   }
54 
55   @Override
getValueNotInPopulatedMap()56   protected String getValueNotInPopulatedMap() {
57     return "p";
58   }
59 
testClearSubMapOfRowMap()60   public void testClearSubMapOfRowMap() {
61     TreeBasedTable<String, String, String> table = TreeBasedTable.create();
62     table.put("a", "b", "c");
63     table.put("c", "b", "a");
64     table.put("b", "b", "x");
65     table.put("b", "c", "y");
66     table.put("b", "x", "n");
67     table.put("a", "a", "d");
68     table.row("b").subMap("c", "x").clear();
69     assertEquals(table.row("b"), ImmutableMap.of("b", "x", "x", "n"));
70     table.row("b").subMap("b", "y").clear();
71     assertEquals(table.row("b"), ImmutableMap.of());
72     assertFalse(table.backingMap.containsKey("b"));
73   }
74 }
75