blob: 77781f55d433c6be2a8e3f847136fcb6128e3575 [file] [log] [blame]
/*
* Copyright 2015-present Open Networking Laboratory
*
* 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 org.onlab.util;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
/**
* Unit tests for {@link DefaultHashMap}.
*/
public class DefaultHashMapTest {
private static final String ONE = "one";
private static final String TWO = "two";
private static final String THREE = "three";
private static final String FOUR = "four";
private static final String ALPHA = "Alpha";
private static final String BETA = "Beta";
private static final String OMEGA = "Omega";
private DefaultHashMap<String, Integer> map;
private DefaultHashMap<String, String> chartis;
private void loadMap() {
map.put(ONE, 1);
map.put(TWO, 2);
}
private void fortioCharti() {
chartis.put(ONE, ALPHA);
chartis.put(TWO, BETA);
}
@Test
public void nullDefaultIsAllowed() {
// but makes this class behave no different than HashMap
map = new DefaultHashMap<>(null);
loadMap();
assertEquals("missing 1", 1, (int) map.get(ONE));
assertEquals("missing 2", 2, (int) map.get(TWO));
assertEquals("three?", null, map.get(THREE));
assertEquals("four?", null, map.get(FOUR));
}
@Test
public void defaultToFive() {
map = new DefaultHashMap<>(5);
loadMap();
assertEquals("missing 1", 1, (int) map.get(ONE));
assertEquals("missing 2", 2, (int) map.get(TWO));
assertEquals("three?", 5, (int) map.get(THREE));
assertEquals("four?", 5, (int) map.get(FOUR));
}
@Test
public void defaultToOmega() {
chartis = new DefaultHashMap<>(OMEGA);
fortioCharti();
assertEquals("missing 1", ALPHA, chartis.get(ONE));
assertEquals("missing 2", BETA, chartis.get(TWO));
assertEquals("three?", OMEGA, chartis.get(THREE));
assertEquals("four?", OMEGA, chartis.get(FOUR));
}
}