From 555e41fbf8af548b4f91cdd143d625488ddc3722 Mon Sep 17 00:00:00 2001 From: godotg Date: Mon, 17 Jun 2024 17:11:25 +0800 Subject: [PATCH] test[orm]: base type map test --- .../java/com/zfoo/orm/accessor/MapTest.java | 53 +++++++++-- .../com/zfoo/orm/entity/bag/MapEntity.java | 93 ++++++++++++++++--- 2 files changed, 125 insertions(+), 21 deletions(-) diff --git a/orm/src/test/java/com/zfoo/orm/accessor/MapTest.java b/orm/src/test/java/com/zfoo/orm/accessor/MapTest.java index 6a09a01b..5d49b751 100644 --- a/orm/src/test/java/com/zfoo/orm/accessor/MapTest.java +++ b/orm/src/test/java/com/zfoo/orm/accessor/MapTest.java @@ -86,12 +86,6 @@ public class MapTest { intStringHashMap.put(104, null); entity.setIntStringMap(intStringHashMap); - var intBagMap = new HashMap(); - entity.setIntBagMap(intBagMap); - intBagMap.put(1, bagItem1); - intBagMap.put(2, bagItem2); - intBagMap.put(3, bagItem3); - var intBaseMap = new HashMap>(); intBaseMap.put(1, Map.of(1, "1")); intBaseMap.put(2, Map.of(2, "2")); @@ -99,6 +93,53 @@ public class MapTest { intBaseMap.put(4, null); entity.setIntBaseMap(intBaseMap); + var charBagMap = new HashMap(); + entity.setCharBagMap(charBagMap); + charBagMap.put('a', bagItem1); + charBagMap.put('b', bagItem2); + charBagMap.put('d', null); + + var boolBagMap = new HashMap(); + entity.setBoolBagMap(boolBagMap); + boolBagMap.put(true, bagItem1); + boolBagMap.put(false, null); + + var byteBagMap = new HashMap(); + entity.setByteBagMap(byteBagMap); + byteBagMap.put((byte) 1, bagItem1); + byteBagMap.put((byte) 2, bagItem2); + byteBagMap.put((byte) 3, null); + + var shortBagMap = new HashMap(); + entity.setShortBagMap(shortBagMap); + shortBagMap.put((short) 1, bagItem1); + shortBagMap.put((short) 2, bagItem2); + shortBagMap.put((short) 3, null); + + var intBagMap = new HashMap(); + entity.setIntBagMap(intBagMap); + intBagMap.put(1, bagItem1); + intBagMap.put(2, bagItem2); + intBagMap.put(3, null); + + var longBagMap = new HashMap(); + entity.setLongBagMap(longBagMap); + longBagMap.put(1L, bagItem1); + longBagMap.put(2L, bagItem2); + longBagMap.put(3L, null); + + var floatBagMap = new HashMap(); + entity.setFloatBagMap(floatBagMap); + floatBagMap.put(1F, bagItem1); + floatBagMap.put(2F, bagItem2); + floatBagMap.put(3F, null); + + var doubleBagMap = new HashMap(); + entity.setDoubleBagMap(doubleBagMap); + doubleBagMap.put(1D, bagItem1); + doubleBagMap.put(2D, bagItem2); + doubleBagMap.put(3D, null); + OrmContext.getAccessor().insert(entity); var myEntity = OrmContext.getAccessor().load(id, MapEntity.class); Assert.assertEquals(entity.getBagMap(), myEntity.getBagMap()); diff --git a/orm/src/test/java/com/zfoo/orm/entity/bag/MapEntity.java b/orm/src/test/java/com/zfoo/orm/entity/bag/MapEntity.java index 515bb1e6..009cb3ef 100644 --- a/orm/src/test/java/com/zfoo/orm/entity/bag/MapEntity.java +++ b/orm/src/test/java/com/zfoo/orm/entity/bag/MapEntity.java @@ -33,8 +33,15 @@ public class MapEntity implements IEntity { private Map longStringMap = new HashMap<>(); private Map intStringMap = new HashMap<>(); - private Map intBagMap = new HashMap<>(); private Map> intBaseMap = new HashMap<>(); + private Map charBagMap = new HashMap<>(); + private Map boolBagMap = new HashMap<>(); + private Map byteBagMap = new HashMap<>(); + private Map shortBagMap = new HashMap<>(); + private Map intBagMap = new HashMap<>(); + private Map longBagMap = new HashMap<>(); + private Map floatBagMap = new HashMap<>(); + private Map doubleBagMap = new HashMap<>(); @Override public Long id() { @@ -65,14 +72,6 @@ public class MapEntity implements IEntity { this.baseMap = baseMap; } - public Map getIntStringMap() { - return intStringMap; - } - - public void setIntStringMap(Map intStringMap) { - this.intStringMap = intStringMap; - } - public Map getLongStringMap() { return longStringMap; } @@ -81,12 +80,12 @@ public class MapEntity implements IEntity { this.longStringMap = longStringMap; } - public Map getIntBagMap() { - return intBagMap; + public Map getIntStringMap() { + return intStringMap; } - public void setIntBagMap(Map intBagMap) { - this.intBagMap = intBagMap; + public void setIntStringMap(Map intStringMap) { + this.intStringMap = intStringMap; } public Map> getIntBaseMap() { @@ -97,16 +96,80 @@ public class MapEntity implements IEntity { this.intBaseMap = intBaseMap; } + public Map getCharBagMap() { + return charBagMap; + } + + public void setCharBagMap(Map charBagMap) { + this.charBagMap = charBagMap; + } + + public Map getBoolBagMap() { + return boolBagMap; + } + + public void setBoolBagMap(Map boolBagMap) { + this.boolBagMap = boolBagMap; + } + + public Map getByteBagMap() { + return byteBagMap; + } + + public void setByteBagMap(Map byteBagMap) { + this.byteBagMap = byteBagMap; + } + + public Map getShortBagMap() { + return shortBagMap; + } + + public void setShortBagMap(Map shortBagMap) { + this.shortBagMap = shortBagMap; + } + + public Map getIntBagMap() { + return intBagMap; + } + + public void setIntBagMap(Map intBagMap) { + this.intBagMap = intBagMap; + } + + public Map getLongBagMap() { + return longBagMap; + } + + public void setLongBagMap(Map longBagMap) { + this.longBagMap = longBagMap; + } + + public Map getFloatBagMap() { + return floatBagMap; + } + + public void setFloatBagMap(Map floatBagMap) { + this.floatBagMap = floatBagMap; + } + + public Map getDoubleBagMap() { + return doubleBagMap; + } + + public void setDoubleBagMap(Map doubleBagMap) { + this.doubleBagMap = doubleBagMap; + } + @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; MapEntity mapEntity = (MapEntity) o; - return id == mapEntity.id && Objects.equals(bagMap, mapEntity.bagMap) && Objects.equals(baseMap, mapEntity.baseMap) && Objects.equals(longStringMap, mapEntity.longStringMap) && Objects.equals(intStringMap, mapEntity.intStringMap) && Objects.equals(intBagMap, mapEntity.intBagMap) && Objects.equals(intBaseMap, mapEntity.intBaseMap); + return id == mapEntity.id && Objects.equals(bagMap, mapEntity.bagMap) && Objects.equals(baseMap, mapEntity.baseMap) && Objects.equals(longStringMap, mapEntity.longStringMap) && Objects.equals(intStringMap, mapEntity.intStringMap) && Objects.equals(intBaseMap, mapEntity.intBaseMap) && Objects.equals(charBagMap, mapEntity.charBagMap) && Objects.equals(boolBagMap, mapEntity.boolBagMap) && Objects.equals(byteBagMap, mapEntity.byteBagMap) && Objects.equals(shortBagMap, mapEntity.shortBagMap) && Objects.equals(intBagMap, mapEntity.intBagMap) && Objects.equals(longBagMap, mapEntity.longBagMap) && Objects.equals(floatBagMap, mapEntity.floatBagMap) && Objects.equals(doubleBagMap, mapEntity.doubleBagMap); } @Override public int hashCode() { - return Objects.hash(id, bagMap, baseMap, longStringMap, intStringMap, intBagMap, intBaseMap); + return Objects.hash(id, bagMap, baseMap, longStringMap, intStringMap, intBaseMap, charBagMap, boolBagMap, byteBagMap, shortBagMap, intBagMap, longBagMap, floatBagMap, doubleBagMap); } }