Search in sources :

Example 1 with UserToken

use of org.springframework.data.cassandra.domain.UserToken in project spring-data-cassandra by spring-projects.

the class MappingCassandraConverterUnitTests method updateShouldUseSpecifiedColumnNames.

// DATACASS-206
@Test
void updateShouldUseSpecifiedColumnNames() {
    UserToken userToken = new UserToken();
    userToken.setUserId(UUID.randomUUID());
    userToken.setToken(UUID.randomUUID());
    userToken.setAdminComment("admin comment");
    userToken.setUserComment("user comment");
    Map<CqlIdentifier, Object> update = new LinkedHashMap<>();
    Where where = new Where();
    mappingCassandraConverter.write(userToken, update);
    mappingCassandraConverter.write(userToken, where);
    assertThat(update).containsEntry(CqlIdentifier.fromCql("admincomment"), "admin comment");
    assertThat(update).containsEntry(CqlIdentifier.fromCql("user_comment"), "user comment");
    assertThat(where).containsEntry(CqlIdentifier.fromCql("user_id"), userToken.getUserId());
}
Also used : JSONObject(org.json.simple.JSONObject) CqlIdentifier(com.datastax.oss.driver.api.core.CqlIdentifier) UserToken(org.springframework.data.cassandra.domain.UserToken) Test(org.junit.jupiter.api.Test)

Example 2 with UserToken

use of org.springframework.data.cassandra.domain.UserToken in project spring-data-cassandra by spring-projects.

the class CassandraTemplateIntegrationTests method shouldSelectOneByQuery.

// DATACASS-343
@Test
void shouldSelectOneByQuery() {
    UserToken token1 = new UserToken();
    token1.setUserId(Uuids.endOf(System.currentTimeMillis()));
    token1.setToken(Uuids.startOf(System.currentTimeMillis()));
    token1.setUserComment("foo");
    template.insert(token1);
    Query query = Query.query(where("userId").is(token1.getUserId()));
    UserToken loaded = template.selectOne(query, UserToken.class);
    assertThat(loaded).isEqualTo(token1);
}
Also used : Query(org.springframework.data.cassandra.core.query.Query) UserToken(org.springframework.data.cassandra.domain.UserToken) Test(org.junit.jupiter.api.Test)

Example 3 with UserToken

use of org.springframework.data.cassandra.domain.UserToken in project spring-data-cassandra by spring-projects.

the class CassandraTemplateIntegrationTests method shouldSelectByQueryWithAllowFiltering.

// DATACASS-343
@Test
void shouldSelectByQueryWithAllowFiltering() {
    assumeTrue(cassandraVersion.isGreaterThanOrEqualTo(CASSANDRA_3));
    UserToken userToken = new UserToken();
    userToken.setUserId(Uuids.endOf(System.currentTimeMillis()));
    userToken.setToken(Uuids.startOf(System.currentTimeMillis()));
    userToken.setUserComment("cook");
    template.insert(userToken);
    Query query = Query.query(where("userId").is(userToken.getUserId())).and(where("userComment").is("cook")).withAllowFiltering();
    UserToken loaded = template.selectOne(query, UserToken.class);
    assertThat(loaded).isNotNull();
    assertThat(loaded.getUserComment()).isEqualTo("cook");
}
Also used : Query(org.springframework.data.cassandra.core.query.Query) UserToken(org.springframework.data.cassandra.domain.UserToken) Test(org.junit.jupiter.api.Test)

Example 4 with UserToken

use of org.springframework.data.cassandra.domain.UserToken in project spring-data-cassandra by spring-projects.

the class AsyncCassandraTemplateIntegrationTests method shouldSelectByQueryWithSorting.

// DATACASS-343
@Test
void shouldSelectByQueryWithSorting() {
    UserToken token1 = new UserToken();
    token1.setUserId(Uuids.endOf(System.currentTimeMillis()));
    token1.setToken(Uuids.startOf(System.currentTimeMillis()));
    token1.setUserComment("foo");
    UserToken token2 = new UserToken();
    token2.setUserId(token1.getUserId());
    token2.setToken(Uuids.endOf(System.currentTimeMillis() + 100));
    token2.setUserComment("bar");
    getUninterruptibly(template.insert(token1));
    getUninterruptibly(template.insert(token2));
    Query query = Query.query(where("userId").is(token1.getUserId())).sort(Sort.by("token"));
    assertThat(getUninterruptibly(template.select(query, UserToken.class))).containsSequence(token1, token2);
}
Also used : Query(org.springframework.data.cassandra.core.query.Query) UserToken(org.springframework.data.cassandra.domain.UserToken) Test(org.junit.jupiter.api.Test)

Example 5 with UserToken

use of org.springframework.data.cassandra.domain.UserToken in project spring-data-cassandra by spring-projects.

the class SimpleReactiveCassandraRepositoryIntegrationTests method findAllWithPagingAndSorting.

// DATACASS-700
@Test
void findAllWithPagingAndSorting() {
    assumeTrue(cassandraVersion.isGreaterThan(CASSANDRA_3));
    UserTokenRepostitory repository = factory.getRepository(UserTokenRepostitory.class);
    repository.deleteAll();
    UUID id = UUID.randomUUID();
    List<UserToken> users = IntStream.range(0, 100).mapToObj(value -> {
        UserToken token = new UserToken();
        token.setUserId(id);
        token.setToken(UUID.randomUUID());
        return token;
    }).collect(Collectors.toList());
    repository.saveAll(users).then().as(StepVerifier::create).verifyComplete();
    List<UserToken> result = new ArrayList<>();
    Slice<UserToken> slice = repository.findAllByUserId(id, CassandraPageRequest.first(10, Sort.by("token"))).block(Duration.ofSeconds(10));
    while (!slice.isEmpty() || slice.hasNext()) {
        result.addAll(slice.getContent());
        slice = repository.findAllByUserId(id, slice.nextPageable()).block(Duration.ofSeconds(10));
    }
    assertThat(result).hasSize(100);
}
Also used : IntStream(java.util.stream.IntStream) BeforeEach(org.junit.jupiter.api.BeforeEach) Arrays(java.util.Arrays) StepVerifier(reactor.test.StepVerifier) Autowired(org.springframework.beans.factory.annotation.Autowired) ArrayList(java.util.ArrayList) SpringJUnitConfig(org.springframework.test.context.junit.jupiter.SpringJUnitConfig) User(org.springframework.data.cassandra.domain.User) IntegrationTestsSupport(org.springframework.data.cassandra.test.util.IntegrationTestsSupport) CqlSession(com.datastax.oss.driver.api.core.CqlSession) BeanFactoryAware(org.springframework.beans.factory.BeanFactoryAware) Duration(java.time.Duration) Assertions(org.assertj.core.api.Assertions) UserToken(org.springframework.data.cassandra.domain.UserToken) Version(org.springframework.data.util.Version) Assume(org.junit.Assume) Pageable(org.springframework.data.domain.Pageable) Sort(org.springframework.data.domain.Sort) Mono(reactor.core.publisher.Mono) BeansException(org.springframework.beans.BeansException) UUID(java.util.UUID) Collectors(java.util.stream.Collectors) Slice(org.springframework.data.domain.Slice) Test(org.junit.jupiter.api.Test) Configuration(org.springframework.context.annotation.Configuration) Flux(reactor.core.publisher.Flux) List(java.util.List) BeanFactory(org.springframework.beans.factory.BeanFactory) BeanClassLoaderAware(org.springframework.beans.factory.BeanClassLoaderAware) ReactiveCassandraOperations(org.springframework.data.cassandra.core.ReactiveCassandraOperations) CassandraPageRequest(org.springframework.data.cassandra.core.query.CassandraPageRequest) ReactiveCassandraRepository(org.springframework.data.cassandra.repository.ReactiveCassandraRepository) CassandraVersion(org.springframework.data.cassandra.support.CassandraVersion) ArrayList(java.util.ArrayList) UUID(java.util.UUID) UserToken(org.springframework.data.cassandra.domain.UserToken) Test(org.junit.jupiter.api.Test)

Aggregations

Test (org.junit.jupiter.api.Test)11 UserToken (org.springframework.data.cassandra.domain.UserToken)11 Query (org.springframework.data.cassandra.core.query.Query)7 CqlSession (com.datastax.oss.driver.api.core.CqlSession)2 ArrayList (java.util.ArrayList)2 Arrays (java.util.Arrays)2 List (java.util.List)2 UUID (java.util.UUID)2 Collectors (java.util.stream.Collectors)2 IntStream (java.util.stream.IntStream)2 Assertions (org.assertj.core.api.Assertions)2 Assume (org.junit.Assume)2 BeforeEach (org.junit.jupiter.api.BeforeEach)2 BeansException (org.springframework.beans.BeansException)2 BeanClassLoaderAware (org.springframework.beans.factory.BeanClassLoaderAware)2 BeanFactory (org.springframework.beans.factory.BeanFactory)2 BeanFactoryAware (org.springframework.beans.factory.BeanFactoryAware)2 Autowired (org.springframework.beans.factory.annotation.Autowired)2 Configuration (org.springframework.context.annotation.Configuration)2 CassandraPageRequest (org.springframework.data.cassandra.core.query.CassandraPageRequest)2