diff --git a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/collections/CollectionsRowValueProviderTest.java b/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/collections/CollectionsRowValueProviderTest.java deleted file mode 100644 index 30f3677a4..000000000 --- a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/collections/CollectionsRowValueProviderTest.java +++ /dev/null @@ -1,166 +0,0 @@ -/* - * Copyright 2013-2014 the original author or authors. - * - * Licensed 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.springframework.data.cassandra.test.integration.collections; - -import static org.springframework.cassandra.core.keyspace.CreateKeyspaceSpecification.createKeyspace; - -import java.io.IOException; -import java.util.Arrays; -import java.util.Date; -import java.util.HashMap; -import java.util.HashSet; -import java.util.LinkedList; -import java.util.List; -import java.util.Map; -import java.util.Set; - -import org.junit.Assert; -import org.junit.Before; -import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.cassandra.core.keyspace.CreateKeyspaceSpecification; -import org.springframework.context.annotation.Configuration; -import org.springframework.data.cassandra.config.SchemaAction; -import org.springframework.data.cassandra.test.integration.simpletons.BookHistory; -import org.springframework.data.cassandra.test.integration.simpletons.BookReference; -import org.springframework.data.cassandra.test.integration.support.AbstractSpringDataEmbeddedCassandraIntegrationTest; -import org.springframework.data.cassandra.test.integration.support.TestConfig; -import org.springframework.test.context.ContextConfiguration; -import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; - -import com.datastax.driver.core.querybuilder.QueryBuilder; -import com.datastax.driver.core.querybuilder.Select; - -/** - * Tests the mapping of the collections types in Cassandra - * - * @author dwebb - * - */ -@RunWith(SpringJUnit4ClassRunner.class) -@ContextConfiguration -public class CollectionsRowValueProviderTest extends AbstractSpringDataEmbeddedCassandraIntegrationTest { - - @Configuration - public static class Config extends TestConfig { - - @Override - public SchemaAction getSchemaAction() { - return SchemaAction.RECREATE; - } - - @Override - protected List getKeyspaceCreations() { - return Arrays.asList(createKeyspace().name(getKeyspaceName()).withSimpleReplication()); - } - - @Override - public String[] getEntityBasePackages() { - return new String[] { BookHistory.class.getPackage().getName() }; - } - } - - @Before - public void before() throws IOException { - recreateAllTables(); - } - - @Test - public void mapTest() { - - BookHistory b1 = new BookHistory(); - b1.setIsbn("123456-1"); - b1.setTitle("Spring Data Cassandra Guide"); - b1.setAuthor("Cassandra Guru"); - b1.setPages(521); - b1.setSaleDate(new Date()); - b1.setInStock(true); - - Map checkOutMap = new HashMap(); - checkOutMap.put("dwebb", 50); - checkOutMap.put("madams", 100); - checkOutMap.put("jmcpeek", 150); - - b1.setCheckOuts(checkOutMap); - - template.insert(b1); - - Select select = QueryBuilder.select().all().from("bookHistory"); - select.where(QueryBuilder.eq("isbn", "123456-1")); - - BookHistory b = template.selectOne(select.getQueryString(), BookHistory.class); - - Assert.assertNotNull(b.getCheckOuts()); - - log.info("Checkouts map data"); - for (String username : b.getCheckOuts().keySet()) { - log.info(username + " has " + b.getCheckOuts().get(username) + " checkouts of this book."); - } - - Assert.assertEquals(b.getTitle(), "Spring Data Cassandra Guide"); - Assert.assertEquals(b.getAuthor(), "Cassandra Guru"); - - } - - @Test - public void listSetTest() { - - BookReference b1 = new BookReference(); - b1.setIsbn("123456-1"); - b1.setTitle("Spring Data Cassandra Guide"); - b1.setAuthor("Cassandra Guru"); - b1.setPages(521); - b1.setSaleDate(new Date()); - b1.setInStock(true); - - Set refs = new HashSet(); - refs.add("Spring Data by O'Reilly"); - refs.add("Spring by Example"); - refs.add("Spring Recipies"); - b1.setReferences(refs); - - List marks = new LinkedList(); - marks.add(13); - marks.add(52); - marks.add(144); - b1.setBookmarks(marks); - - template.insert(b1); - - Select select = QueryBuilder.select().all().from("bookReference"); - select.where(QueryBuilder.eq("isbn", "123456-1")); - - BookReference b = template.selectOne(select.getQueryString(), BookReference.class); - - Assert.assertNotNull(b.getReferences()); - Assert.assertNotNull(b.getBookmarks()); - - log.info("Bookmark List Data"); - for (Integer mark : b.getBookmarks()) { - log.info("Bookmark set on page + " + mark); - } - - log.info("Reference Set Data"); - for (String ref : b.getReferences()) { - log.info("Reference -> " + ref); - } - - Assert.assertEquals(b.getTitle(), "Spring Data Cassandra Guide"); - Assert.assertEquals(b.getAuthor(), "Cassandra Guru"); - - } - -} diff --git a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraDataOperationsTest.java b/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraDataOperationsTest.java index f48d7b67f..60942c070 100644 --- a/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraDataOperationsTest.java +++ b/spring-data-cassandra/src/test/java/org/springframework/data/cassandra/test/integration/template/CassandraDataOperationsTest.java @@ -21,7 +21,12 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; +import java.util.HashMap; +import java.util.HashSet; +import java.util.LinkedList; import java.util.List; +import java.util.Map; +import java.util.Set; import java.util.UUID; import org.junit.Assert; @@ -35,6 +40,8 @@ import org.springframework.cassandra.core.keyspace.CreateKeyspaceSpecification; import org.springframework.context.annotation.Configuration; import org.springframework.data.cassandra.config.SchemaAction; import org.springframework.data.cassandra.test.integration.simpletons.Book; +import org.springframework.data.cassandra.test.integration.simpletons.BookHistory; +import org.springframework.data.cassandra.test.integration.simpletons.BookReference; import org.springframework.data.cassandra.test.integration.support.AbstractSpringDataEmbeddedCassandraIntegrationTest; import org.springframework.data.cassandra.test.integration.support.TestConfig; import org.springframework.test.context.ContextConfiguration; @@ -660,4 +667,90 @@ public class CassandraDataOperationsTest extends AbstractSpringDataEmbeddedCassa Assert.assertEquals(count, template.count(Book.class)); } + + @Test + public void mapTest() { + + BookHistory b1 = new BookHistory(); + b1.setIsbn("123456-1"); + b1.setTitle("Spring Data Cassandra Guide"); + b1.setAuthor("Cassandra Guru"); + b1.setPages(521); + b1.setSaleDate(new Date()); + b1.setInStock(true); + + Map checkOutMap = new HashMap(); + checkOutMap.put("dwebb", 50); + checkOutMap.put("madams", 100); + checkOutMap.put("jmcpeek", 150); + + b1.setCheckOuts(checkOutMap); + + template.insert(b1); + + Select select = QueryBuilder.select().all().from("bookHistory"); + select.where(QueryBuilder.eq("isbn", "123456-1")); + + BookHistory b = template.selectOne(select.getQueryString(), BookHistory.class); + + Assert.assertNotNull(b.getCheckOuts()); + + log.info("Checkouts map data"); + for (String username : b.getCheckOuts().keySet()) { + log.info(username + " has " + b.getCheckOuts().get(username) + " checkouts of this book."); + } + + Assert.assertEquals(b.getTitle(), "Spring Data Cassandra Guide"); + Assert.assertEquals(b.getAuthor(), "Cassandra Guru"); + + } + + @Test + public void listSetTest() { + + BookReference b1 = new BookReference(); + b1.setIsbn("123456-1"); + b1.setTitle("Spring Data Cassandra Guide"); + b1.setAuthor("Cassandra Guru"); + b1.setPages(521); + b1.setSaleDate(new Date()); + b1.setInStock(true); + + Set refs = new HashSet(); + refs.add("Spring Data by O'Reilly"); + refs.add("Spring by Example"); + refs.add("Spring Recipies"); + b1.setReferences(refs); + + List marks = new LinkedList(); + marks.add(13); + marks.add(52); + marks.add(144); + b1.setBookmarks(marks); + + template.insert(b1); + + Select select = QueryBuilder.select().all().from("bookReference"); + select.where(QueryBuilder.eq("isbn", "123456-1")); + + BookReference b = template.selectOne(select.getQueryString(), BookReference.class); + + Assert.assertNotNull(b.getReferences()); + Assert.assertNotNull(b.getBookmarks()); + + log.info("Bookmark List Data"); + for (Integer mark : b.getBookmarks()) { + log.info("Bookmark set on page + " + mark); + } + + log.info("Reference Set Data"); + for (String ref : b.getReferences()) { + log.info("Reference -> " + ref); + } + + Assert.assertEquals(b.getTitle(), "Spring Data Cassandra Guide"); + Assert.assertEquals(b.getAuthor(), "Cassandra Guru"); + + } + }