summaryrefslogtreecommitdiff
path: root/src/test/java/com/amazon/carbonado
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/java/com/amazon/carbonado')
-rw-r--r--src/test/java/com/amazon/carbonado/repo/map/TestStorables.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/java/com/amazon/carbonado/repo/map/TestStorables.java b/src/test/java/com/amazon/carbonado/repo/map/TestStorables.java
index 8210ca9..60498af 100644
--- a/src/test/java/com/amazon/carbonado/repo/map/TestStorables.java
+++ b/src/test/java/com/amazon/carbonado/repo/map/TestStorables.java
@@ -30,6 +30,7 @@ import com.amazon.carbonado.Query;
import com.amazon.carbonado.Storage;
import com.amazon.carbonado.stored.StorableDateIndex;
+import com.amazon.carbonado.stored.StorableTestBasic;
/**
*
@@ -87,6 +88,26 @@ public class TestStorables extends com.amazon.carbonado.TestStorables {
}
}
+ public void test_keyClone() throws Exception {
+ // This test makes sure that map key is properly cloned before being
+ // inserted into map.
+
+ Repository repo = buildRepository(true);
+ Storage<StorableTestBasic> storage = repo.storageFor(StorableTestBasic.class);
+
+ StorableTestBasic s = storage.prepare();
+ s.setId(1);
+ s.setStringProp("a");
+ s.setIntProp(1);
+ s.setLongProp(1L);
+ s.setDoubleProp(1.0);
+ s.insert();
+
+ s.markPropertiesDirty();
+ s.setId(2);
+ s.insert();
+ }
+
@Override
protected Repository buildRepository(boolean isMaster) throws RepositoryException {
MapRepositoryBuilder builder = new MapRepositoryBuilder();