Coverage Summary for Class: SortedMapGenerators (com.google.common.collect.testing.google)
| Class | Method, % | Line, % |
|---|---|---|
| SortedMapGenerators | 0% (0/1) | 0% (0/1) |
| SortedMapGenerators$ImmutableSortedMapCopyOfEntriesGenerator | 0% (0/2) | 0% (0/2) |
| SortedMapGenerators$ImmutableSortedMapEntryListGenerator | 0% (0/5) | 0% (0/15) |
| SortedMapGenerators$ImmutableSortedMapEntryListGenerator$1 | 0% (0/2) | 0% (0/2) |
| SortedMapGenerators$ImmutableSortedMapGenerator | 0% (0/2) | 0% (0/6) |
| SortedMapGenerators$ImmutableSortedMapKeyListGenerator | 0% (0/3) | 0% (0/6) |
| SortedMapGenerators$ImmutableSortedMapValueListGenerator | 0% (0/2) | 0% (0/5) |
| Total | 0% (0/17) | 0% (0/37) |
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.testing.google; 18 19 import static com.google.common.base.Preconditions.checkNotNull; 20 import static com.google.common.collect.testing.Helpers.mapEntry; 21 22 import com.google.common.annotations.GwtCompatible; 23 import com.google.common.collect.ImmutableSortedMap; 24 import com.google.common.collect.Ordering; 25 import com.google.common.collect.testing.SampleElements; 26 import com.google.common.collect.testing.TestListGenerator; 27 import com.google.common.collect.testing.TestStringListGenerator; 28 import com.google.common.collect.testing.TestStringSortedMapGenerator; 29 import java.util.Arrays; 30 import java.util.List; 31 import java.util.Map.Entry; 32 import java.util.SortedMap; 33 34 /** 35 * Generators of sorted maps and derived collections. 36 * 37 * @author Kevin Bourrillion 38 * @author Jesse Wilson 39 * @author Jared Levy 40 * @author Hayward Chan 41 * @author Chris Povirk 42 * @author Louis Wasserman 43 */ 44 @GwtCompatible 45 public class SortedMapGenerators { 46 public static class ImmutableSortedMapGenerator extends TestStringSortedMapGenerator { 47 @Override 48 public SortedMap<String, String> create(Entry<String, String>[] entries) { 49 ImmutableSortedMap.Builder<String, String> builder = ImmutableSortedMap.naturalOrder(); 50 for (Entry<String, String> entry : entries) { 51 checkNotNull(entry); 52 builder.put(entry.getKey(), entry.getValue()); 53 } 54 return builder.build(); 55 } 56 } 57 58 public static class ImmutableSortedMapCopyOfEntriesGenerator 59 extends TestStringSortedMapGenerator { 60 @Override 61 public SortedMap<String, String> create(Entry<String, String>[] entries) { 62 return ImmutableSortedMap.copyOf(Arrays.asList(entries)); 63 } 64 } 65 66 public static class ImmutableSortedMapEntryListGenerator 67 implements TestListGenerator<Entry<String, Integer>> { 68 69 @Override 70 public SampleElements<Entry<String, Integer>> samples() { 71 return new SampleElements<>( 72 mapEntry("foo", 5), 73 mapEntry("bar", 3), 74 mapEntry("baz", 17), 75 mapEntry("quux", 1), 76 mapEntry("toaster", -2)); 77 } 78 79 @SuppressWarnings("unchecked") 80 @Override 81 public Entry<String, Integer>[] createArray(int length) { 82 return new Entry[length]; 83 } 84 85 @Override 86 public Iterable<Entry<String, Integer>> order(List<Entry<String, Integer>> insertionOrder) { 87 return new Ordering<Entry<String, Integer>>() { 88 @Override 89 public int compare(Entry<String, Integer> left, Entry<String, Integer> right) { 90 return left.getKey().compareTo(right.getKey()); 91 } 92 }.sortedCopy(insertionOrder); 93 } 94 95 @Override 96 public List<Entry<String, Integer>> create(Object... elements) { 97 ImmutableSortedMap.Builder<String, Integer> builder = ImmutableSortedMap.naturalOrder(); 98 for (Object o : elements) { 99 @SuppressWarnings("unchecked") 100 Entry<String, Integer> entry = (Entry<String, Integer>) o; 101 builder.put(entry); 102 } 103 return builder.build().entrySet().asList(); 104 } 105 } 106 107 public static class ImmutableSortedMapKeyListGenerator extends TestStringListGenerator { 108 @Override 109 protected List<String> create(String[] elements) { 110 ImmutableSortedMap.Builder<String, Integer> builder = ImmutableSortedMap.naturalOrder(); 111 for (int i = 0; i < elements.length; i++) { 112 builder.put(elements[i], i); 113 } 114 return builder.build().keySet().asList(); 115 } 116 117 @Override 118 public List<String> order(List<String> insertionOrder) { 119 return Ordering.natural().sortedCopy(insertionOrder); 120 } 121 } 122 123 public static class ImmutableSortedMapValueListGenerator extends TestStringListGenerator { 124 @Override 125 protected List<String> create(String[] elements) { 126 ImmutableSortedMap.Builder<Integer, String> builder = ImmutableSortedMap.naturalOrder(); 127 for (int i = 0; i < elements.length; i++) { 128 builder.put(i, elements[i]); 129 } 130 return builder.build().values().asList(); 131 } 132 } 133 }