blob: 5de7cd245c495455c5758c27ef7320cd25ddd9a1 [file] [log] [blame]
/*
* Copyright 2013 Google Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not
* use this file except in compliance with the License. You may obtain a copy of
* the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations under
* the License.
*/
package com.google.gwt.emultest.java.util;
import org.apache.commons.collections.TestSet;
import java.util.LinkedHashSet;
import java.util.Set;
/**
* Tests <code>LinkedHashSet</code>.
*/
public class LinkedHashSetTest extends TestSet {
private static final String VALUE_1 = "val1";
private static final String VALUE_2 = "val2";
private static final String VALUE_3 = "val3";
private static final String VALUE_4 = "val4";
/**
* Check the state of a newly constructed, empty LinkedHashSet.
*
* @param hashSet
*/
private static void checkEmptyLinkedHashSetAssumptions(LinkedHashSet<?> hashSet) {
assertNotNull(hashSet);
assertTrue(hashSet.isEmpty());
}
public LinkedHashSetTest() {
super("LinkedHashSet");
}
@Override
public String getModuleName() {
return "com.google.gwt.emultest.EmulSuite";
}
/*
* Test method for 'java.util.LinkedHashSet.clone()'
*/
@SuppressWarnings("unchecked")
public void testClone() {
LinkedHashSet<String> srcSet = new LinkedHashSet<String>();
checkEmptyLinkedHashSetAssumptions(srcSet);
// Check empty clone behavior
LinkedHashSet<String> dstSet = (LinkedHashSet<String>) srcSet.clone();
assertNotNull(dstSet);
assertEquals(dstSet.size(), srcSet.size());
assertEquals(dstSet.toArray(), srcSet.toArray());
// Check non-empty clone behavior
srcSet.add(VALUE_1);
srcSet.add(VALUE_2);
srcSet.add(VALUE_3);
srcSet.add(VALUE_4);
dstSet = (LinkedHashSet<String>) srcSet.clone();
assertNotNull(dstSet);
assertEquals(dstSet.size(), srcSet.size());
assertEquals(dstSet.toArray(), srcSet.toArray());
}
@Override
protected Set<?> makeEmptySet() {
return new LinkedHashSet<Object>();
}
}