# sprint-2 added test

Project: http://git-wip-us.apache.org/repos/asf/incubator-ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-ignite/commit/1eb870e6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-ignite/tree/1eb870e6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-ignite/diff/1eb870e6

Branch: refs/heads/ignite-release-test-no-mod
Commit: 1eb870e630c6490795f463a42669ab2c75944480
Parents: b820035
Author: sboikov <sboi...@gridgain.com>
Authored: Wed Mar 11 15:10:12 2015 +0300
Committer: sboikov <sboi...@gridgain.com>
Committed: Wed Mar 11 15:10:12 2015 +0300

----------------------------------------------------------------------
 .../GridCacheOnCopyFlagAbstractSelfTest.java    |   2 +
 .../GridCacheOnCopyFlagAtomicSelfTest.java      |   3 +-
 .../cache/GridCacheOnCopyFlagLocalSelfTest.java |   3 +-
 .../GridCacheOnCopyFlagReplicatedSelfTest.java  |   3 +-
 ...ridCacheOnCopyFlagTxPartitionedSelfTest.java |   3 +-
 ...IgniteCacheAtomicCopyOnReadDisabledTest.java |  32 +++++
 ...niteCacheCopyOnReadDisabledAbstractTest.java | 123 +++++++++++++++++++
 .../IgniteCacheTxCopyOnReadDisabledTest.java    |  32 +++++
 .../ignite/testsuites/IgniteCacheTestSuite.java |   2 +
 9 files changed, 195 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
index 5657d9b..ea846dd 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAbstractSelfTest.java
@@ -104,6 +104,8 @@ public abstract class GridCacheOnCopyFlagAbstractSelfTest 
extends GridCacheAbstr
     @Override protected CacheConfiguration cacheConfiguration(String gridName) 
throws Exception {
         CacheConfiguration ccfg = super.cacheConfiguration(gridName);
 
+        assertTrue(ccfg.isCopyOnRead());
+
         assertNotNull(interceptor);
 
         ccfg.setInterceptor(interceptor);

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAtomicSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAtomicSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAtomicSelfTest.java
index bc9eb1b..d5b61ad 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAtomicSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagAtomicSelfTest.java
@@ -25,8 +25,7 @@ import static org.apache.ignite.cache.CacheMode.*;
 /**
  * Tests {@link org.apache.ignite.cache.CacheInterceptor}.
  */
-public class GridCacheOnCopyFlagAtomicSelfTest extends
-    GridCacheOnCopyFlagAbstractSelfTest {
+public class GridCacheOnCopyFlagAtomicSelfTest extends 
GridCacheOnCopyFlagAbstractSelfTest {
     /** {@inheritDoc} */
     @Override protected CacheMode cacheMode() {
         return PARTITIONED;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagLocalSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagLocalSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagLocalSelfTest.java
index 1da5d0e..c487f05 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagLocalSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagLocalSelfTest.java
@@ -25,8 +25,7 @@ import static org.apache.ignite.cache.CacheMode.*;
 /**
  * Tests {@link org.apache.ignite.cache.CacheInterceptor}.
  */
-public class GridCacheOnCopyFlagLocalSelfTest extends
-    GridCacheOnCopyFlagAbstractSelfTest {
+public class GridCacheOnCopyFlagLocalSelfTest extends 
GridCacheOnCopyFlagAbstractSelfTest {
     /** {@inheritDoc} */
     @Override protected CacheMode cacheMode() {
         return LOCAL;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagReplicatedSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagReplicatedSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagReplicatedSelfTest.java
index 72a4dc5..18ae80c 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagReplicatedSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagReplicatedSelfTest.java
@@ -25,8 +25,7 @@ import static org.apache.ignite.cache.CacheMode.*;
 /**
  * Tests {@link org.apache.ignite.cache.CacheInterceptor}.
  */
-public class GridCacheOnCopyFlagReplicatedSelfTest extends
-    GridCacheOnCopyFlagAbstractSelfTest {
+public class GridCacheOnCopyFlagReplicatedSelfTest extends 
GridCacheOnCopyFlagAbstractSelfTest {
     /** {@inheritDoc} */
     @Override protected CacheMode cacheMode() {
         return REPLICATED;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagTxPartitionedSelfTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagTxPartitionedSelfTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagTxPartitionedSelfTest.java
index 7a24b3b..750c781 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagTxPartitionedSelfTest.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/GridCacheOnCopyFlagTxPartitionedSelfTest.java
@@ -25,8 +25,7 @@ import static org.apache.ignite.cache.CacheMode.*;
 /**
  * Tests {@link org.apache.ignite.cache.CacheInterceptor}.
  */
-public class GridCacheOnCopyFlagTxPartitionedSelfTest extends
-    GridCacheOnCopyFlagAbstractSelfTest {
+public class GridCacheOnCopyFlagTxPartitionedSelfTest extends 
GridCacheOnCopyFlagAbstractSelfTest {
     /** {@inheritDoc} */
     @Override protected CacheMode cacheMode() {
         return PARTITIONED;

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicCopyOnReadDisabledTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicCopyOnReadDisabledTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicCopyOnReadDisabledTest.java
new file mode 100644
index 0000000..f5ee2bb
--- /dev/null
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheAtomicCopyOnReadDisabledTest.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.apache.ignite.internal.processors.cache;
+
+import org.apache.ignite.cache.*;
+
+import static org.apache.ignite.cache.CacheAtomicityMode.*;
+
+/**
+ *
+ */
+public class IgniteCacheAtomicCopyOnReadDisabledTest extends 
IgniteCacheCopyOnReadDisabledAbstractTest {
+    /** {@inheritDoc} */
+    @Override protected CacheAtomicityMode atomicityMode() {
+        return ATOMIC;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheCopyOnReadDisabledAbstractTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheCopyOnReadDisabledAbstractTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheCopyOnReadDisabledAbstractTest.java
new file mode 100644
index 0000000..4a0f991
--- /dev/null
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheCopyOnReadDisabledAbstractTest.java
@@ -0,0 +1,123 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.apache.ignite.internal.processors.cache;
+
+import org.apache.ignite.*;
+import org.apache.ignite.configuration.*;
+
+import javax.cache.processor.*;
+import java.io.*;
+
+/**
+ *
+ */
+public abstract class IgniteCacheCopyOnReadDisabledAbstractTest extends 
GridCacheAbstractSelfTest {
+    /** {@inheritDoc} */
+    @Override protected int gridCount() {
+        return 1;
+    }
+
+    /** {@inheritDoc} */
+    @Override protected CacheConfiguration cacheConfiguration(String gridName) 
throws Exception {
+        CacheConfiguration ccfg = super.cacheConfiguration(gridName);
+
+        assertTrue(ccfg.isCopyOnRead());
+
+        ccfg.setCopyOnRead(false);
+
+        return ccfg;
+    }
+
+    /**
+     * @throws Exception If failed.
+     */
+    public void testCopyOnReadDisabled() throws Exception {
+        IgniteCache<TestKey, TestValue> cache = ignite(0).jcache(null);
+
+        for (int i = 0; i < 100; i++) {
+            TestKey key = new TestKey(i);
+            TestValue val = new TestValue(i);
+
+            cache.put(key, val);
+
+            TestValue val0 = cache.get(key);
+
+            assertNotSame(val, val0); // Original user value is always copied.
+
+            assertSame(val0, cache.localPeek(key));
+        }
+
+        TestKey key = new TestKey(0);
+
+        TestValue val0 = cache.get(key);
+
+        TestValue invokeVal = cache.invoke(key, new EntryProcessor<TestKey, 
TestValue, TestValue>() {
+            @Override public TestValue process(MutableEntry<TestKey, 
TestValue> entry, Object... args) {
+                return entry.getValue();
+            }
+        });
+
+        assertSame(val0, invokeVal);
+    }
+
+    /**
+     *
+     */
+    public static class TestKey implements Serializable {
+        /** */
+        private int key;
+
+        /**
+         * @param key Key.
+         */
+        public TestKey(int key) {
+            this.key = key;
+        }
+
+        /** {@inheritDoc} */
+        @Override public boolean equals(Object o) {
+            if (!(o instanceof TestKey))
+                return false;
+
+            TestKey testKey = (TestKey)o;
+
+            return key == testKey.key;
+
+        }
+
+        /** {@inheritDoc} */
+        @Override public int hashCode() {
+            return key;
+        }
+    }
+
+    /**
+     *
+     */
+    static class TestValue implements Serializable {
+        /** */
+        private int val;
+
+        /**
+         * @param val Value.
+         */
+        public TestValue(int val) {
+            this.val = val;
+        }
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheTxCopyOnReadDisabledTest.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheTxCopyOnReadDisabledTest.java
 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheTxCopyOnReadDisabledTest.java
new file mode 100644
index 0000000..19d1b52
--- /dev/null
+++ 
b/modules/core/src/test/java/org/apache/ignite/internal/processors/cache/IgniteCacheTxCopyOnReadDisabledTest.java
@@ -0,0 +1,32 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.apache.ignite.internal.processors.cache;
+
+import org.apache.ignite.cache.*;
+
+import static org.apache.ignite.cache.CacheAtomicityMode.*;
+
+/**
+ *
+ */
+public class IgniteCacheTxCopyOnReadDisabledTest extends 
IgniteCacheCopyOnReadDisabledAbstractTest {
+    /** {@inheritDoc} */
+    @Override protected CacheAtomicityMode atomicityMode() {
+        return TRANSACTIONAL;
+    }
+}

http://git-wip-us.apache.org/repos/asf/incubator-ignite/blob/1eb870e6/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
----------------------------------------------------------------------
diff --git 
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
 
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
index 3290827..4f37982 100644
--- 
a/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
+++ 
b/modules/core/src/test/java/org/apache/ignite/testsuites/IgniteCacheTestSuite.java
@@ -397,6 +397,8 @@ public class IgniteCacheTestSuite extends TestSuite {
         // suite.addTestSuite(GridCacheVersionMultinodeTest.class);
 
         suite.addTestSuite(IgniteCacheNearReadCommittedTest.class);
+        suite.addTestSuite(IgniteCacheAtomicCopyOnReadDisabledTest.class);
+        suite.addTestSuite(IgniteCacheTxCopyOnReadDisabledTest.class);
 
         return suite;
     }

Reply via email to