Coverage Summary for Class: TestEnumSetGenerator (com.google.common.collect.testing)

Class Class, % Method, % Line, %
TestEnumSetGenerator 100% (1/1) 100% (5/5) 100% (10/10)


1 /* 2  * Copyright (C) 2007 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; 18  19 import com.google.common.annotations.GwtCompatible; 20 import com.google.common.collect.testing.SampleElements.Enums; 21 import java.util.Collections; 22 import java.util.List; 23 import java.util.Set; 24  25 /** 26  * An abstract TestSetGenerator for generating sets containing enum values. 27  * 28  * @author Kevin Bourrillion 29  */ 30 @GwtCompatible 31 public abstract class TestEnumSetGenerator implements TestSetGenerator<AnEnum> { 32  @Override 33  public SampleElements<AnEnum> samples() { 34  return new Enums(); 35  } 36  37  @Override 38  public Set<AnEnum> create(Object... elements) { 39  AnEnum[] array = new AnEnum[elements.length]; 40  int i = 0; 41  for (Object e : elements) { 42  array[i++] = (AnEnum) e; 43  } 44  return create(array); 45  } 46  47  protected abstract Set<AnEnum> create(AnEnum[] elements); 48  49  @Override 50  public AnEnum[] createArray(int length) { 51  return new AnEnum[length]; 52  } 53  54  /** Sorts the enums according to their natural ordering. */ 55  @Override 56  public List<AnEnum> order(List<AnEnum> insertionOrder) { 57  Collections.sort(insertionOrder); 58  return insertionOrder; 59  } 60 }