From afdfc7feafee7b7ba9dc73c496892847ae443e09 Mon Sep 17 00:00:00 2001 From: "Brian S. O'Neill" Date: Wed, 13 Aug 2008 23:14:33 +0000 Subject: Clone key before inserting into map. --- .../amazon/carbonado/repo/map/TestStorables.java | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/test') 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 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(); -- cgit v1.2.3