mirror of
https://github.com/tiennm99/zfoo.git
synced 2026-08-18 14:23:56 +00:00
test[hashmap]: test
This commit is contained in:
@@ -325,41 +325,186 @@ public class HashMapTest {
|
||||
|
||||
@Test
|
||||
public void intIntEqualsTest() {
|
||||
var map = Map.of(1, 2, 3, 4, 5, 6, Integer.MAX_VALUE, Integer.MIN_VALUE);
|
||||
var map = Map.of(1, 2, 3, 4, 5, 6, Integer.MAX_VALUE, Integer.MIN_VALUE, Integer.MIN_VALUE, Integer.MAX_VALUE);
|
||||
var myMap = new HashMapIntInt();
|
||||
myMap.putAll(map);
|
||||
Assert.assertEquals(map, myMap);
|
||||
Assert.assertFalse(myMap.isEmpty());
|
||||
for (var entry : map.entrySet()) {
|
||||
Assert.assertTrue(myMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(myMap.containsValue(entry.getValue()));
|
||||
Assert.assertNotNull(myMap.get(entry.getKey()));
|
||||
}
|
||||
myMap.clear();
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
for (int i = 1; i <= 1000; i++) {
|
||||
for (var entry : map.entrySet()) {
|
||||
myMap.put(entry.getKey() * i, entry.getValue() * i);
|
||||
}
|
||||
}
|
||||
var newMap = new HashMap<>(myMap);
|
||||
for (var key : myMap.keySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(key));
|
||||
}
|
||||
for (var value : myMap.values()) {
|
||||
Assert.assertTrue(newMap.containsValue(value));
|
||||
}
|
||||
for (var entry : myMap.entrySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(newMap.containsValue(entry.getValue()));
|
||||
}
|
||||
Assert.assertEquals(myMap, newMap);
|
||||
for (var key : newMap.keySet()) {
|
||||
myMap.remove(key);
|
||||
}
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void intLongEqualsTest() {
|
||||
var map = Map.of(1, 2L, 3, 4L, 5, 6L, Integer.MAX_VALUE, Long.MIN_VALUE);
|
||||
var map = Map.of(1, 2L, 3, 4L, 5, 6L, Integer.MAX_VALUE, Long.MIN_VALUE, Integer.MIN_VALUE, Long.MAX_VALUE);
|
||||
var myMap = new HashMapIntLong();
|
||||
myMap.putAll(map);
|
||||
Assert.assertEquals(map, myMap);
|
||||
Assert.assertFalse(myMap.isEmpty());
|
||||
for (var entry : map.entrySet()) {
|
||||
Assert.assertTrue(myMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(myMap.containsValue(entry.getValue()));
|
||||
Assert.assertNotNull(myMap.get(entry.getKey()));
|
||||
}
|
||||
myMap.clear();
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
for (int i = 1; i <= 1000; i++) {
|
||||
for (var entry : map.entrySet()) {
|
||||
myMap.put(entry.getKey() * i, entry.getValue() * i);
|
||||
}
|
||||
}
|
||||
var newMap = new HashMap<>(myMap);
|
||||
for (var key : myMap.keySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(key));
|
||||
}
|
||||
for (var value : myMap.values()) {
|
||||
Assert.assertTrue(newMap.containsValue(value));
|
||||
}
|
||||
for (var entry : myMap.entrySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(newMap.containsValue(entry.getValue()));
|
||||
}
|
||||
Assert.assertEquals(myMap, newMap);
|
||||
for (var key : newMap.keySet()) {
|
||||
myMap.remove(key);
|
||||
}
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void intShortEqualsTest() {
|
||||
var map = Map.of(1, (short) 2, 3, (short) 4, 5, (short) 6, Integer.MAX_VALUE, Short.MIN_VALUE);
|
||||
var map = Map.of(1, (short) 2, 3, (short) 4, 5, (short) 6, Integer.MAX_VALUE, Short.MIN_VALUE, Integer.MIN_VALUE, Short.MAX_VALUE);
|
||||
var myMap = new HashMapIntShort();
|
||||
myMap.putAll(map);
|
||||
Assert.assertEquals(map, myMap);
|
||||
Assert.assertFalse(myMap.isEmpty());
|
||||
for (var entry : map.entrySet()) {
|
||||
Assert.assertTrue(myMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(myMap.containsValue(entry.getValue()));
|
||||
Assert.assertNotNull(myMap.get(entry.getKey()));
|
||||
}
|
||||
myMap.clear();
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
for (int i = 1; i <= 1000; i++) {
|
||||
for (var entry : map.entrySet()) {
|
||||
myMap.put(entry.getKey() * i, (short) (entry.getValue() * i));
|
||||
}
|
||||
}
|
||||
var newMap = new HashMap<>(myMap);
|
||||
for (var key : myMap.keySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(key));
|
||||
}
|
||||
for (var value : myMap.values()) {
|
||||
Assert.assertTrue(newMap.containsValue(value));
|
||||
}
|
||||
for (var entry : myMap.entrySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(newMap.containsValue(entry.getValue()));
|
||||
}
|
||||
Assert.assertEquals(myMap, newMap);
|
||||
for (var key : newMap.keySet()) {
|
||||
myMap.remove(key);
|
||||
}
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void longIntEqualsTest() {
|
||||
var map = Map.of(1L, 2, 3L, 4, 5L, 6, Long.MAX_VALUE, Integer.MIN_VALUE);
|
||||
var map = Map.of(1L, 2, 3L, 4, 5L, 6, Long.MAX_VALUE, Integer.MIN_VALUE, Long.MIN_VALUE, Integer.MAX_VALUE);
|
||||
var myMap = new HashMapLongInt();
|
||||
myMap.putAll(map);
|
||||
Assert.assertEquals(map, myMap);
|
||||
Assert.assertFalse(myMap.isEmpty());
|
||||
for (var entry : map.entrySet()) {
|
||||
Assert.assertTrue(myMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(myMap.containsValue(entry.getValue()));
|
||||
Assert.assertNotNull(myMap.get(entry.getKey()));
|
||||
}
|
||||
myMap.clear();
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
for (int i = 1; i <= 1000; i++) {
|
||||
for (var entry : map.entrySet()) {
|
||||
myMap.put(entry.getKey() * i, entry.getValue() * i);
|
||||
}
|
||||
}
|
||||
var newMap = new HashMap<>(myMap);
|
||||
for (var key : myMap.keySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(key));
|
||||
}
|
||||
for (var value : myMap.values()) {
|
||||
Assert.assertTrue(newMap.containsValue(value));
|
||||
}
|
||||
for (var entry : myMap.entrySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(newMap.containsValue(entry.getValue()));
|
||||
}
|
||||
Assert.assertEquals(myMap, newMap);
|
||||
for (var key : newMap.keySet()) {
|
||||
myMap.remove(key);
|
||||
}
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void longLongEqualsTest() {
|
||||
var map = Map.of(1L, 2L, 3L, 4L, 5L, 6L, Long.MAX_VALUE, Long.MIN_VALUE);
|
||||
var map = Map.of(1L, 2L, 3L, 4L, 5L, 6L, Long.MAX_VALUE, Long.MIN_VALUE, Long.MIN_VALUE, Long.MAX_VALUE);
|
||||
var myMap = new HashMapLongLong();
|
||||
myMap.putAll(map);
|
||||
Assert.assertEquals(map, myMap);
|
||||
Assert.assertFalse(myMap.isEmpty());
|
||||
for (var entry : map.entrySet()) {
|
||||
Assert.assertTrue(myMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(myMap.containsValue(entry.getValue()));
|
||||
Assert.assertNotNull(myMap.get(entry.getKey()));
|
||||
}
|
||||
myMap.clear();
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
for (int i = 1; i <= 1000; i++) {
|
||||
for (var entry : map.entrySet()) {
|
||||
myMap.put(entry.getKey() * i, entry.getValue() * i);
|
||||
}
|
||||
}
|
||||
var newMap = new HashMap<>(myMap);
|
||||
for (var key : myMap.keySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(key));
|
||||
}
|
||||
for (var value : myMap.values()) {
|
||||
Assert.assertTrue(newMap.containsValue(value));
|
||||
}
|
||||
for (var entry : myMap.entrySet()) {
|
||||
Assert.assertTrue(newMap.containsKey(entry.getKey()));
|
||||
Assert.assertTrue(newMap.containsValue(entry.getValue()));
|
||||
}
|
||||
Assert.assertEquals(myMap, newMap);
|
||||
for (var key : newMap.keySet()) {
|
||||
myMap.remove(key);
|
||||
}
|
||||
Assert.assertTrue(myMap.isEmpty());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user