package com.hazelcast.samples.spring.data.migration; import lombok.extern.slf4j.Slf4j; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.EnableAutoConfiguration; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.context.annotation.ComponentScan; import org.springframework.test.context.jdbc.Sql; import org.springframework.test.context.junit4.SpringRunner; import java.util.Iterator; import java.util.Set; import java.util.TreeSet; import static org.hamcrest.Matchers.hasItems; import static org.hamcrest.Matchers.not; import static org.hamcrest.Matchers.nullValue; import static org.junit.Assert.assertThat; /** * Test the {@link DatabaseService}, that provides database operations to Hazelcast. * * <u><b>MIGRATION PATH</b></u> * <ol> * <li>Add this test class.</li> * </ol> */ @ComponentScan @EnableAutoConfiguration @RunWith(SpringRunner.class) @Slf4j @SpringBootTest(classes = {DatabaseServiceTest.class}) @Sql("classpath:testdata.sql") public class DatabaseServiceTest { @Autowired private DatabaseService databaseService; @Test public void findNoun() { Noun noun = this.databaseService.findNoun(1); log.info("findNoun(), {}", noun); assertThat(noun, not(nullValue())); } @Test public void findVerb() { Verb verb = this.databaseService.findVerb(9); log.info("findVerb(), {}", verb); assertThat(verb, not(nullValue())); } @Test public void findNounIds() { Iterator<Integer> iterator = this.databaseService.findNounIds().iterator(); Set<Integer> results = new TreeSet<>(); while (iterator.hasNext()) { results.add(iterator.next()); } assertThat(results, hasItems(1, 2)); } @Test public void findVerbIds() { Iterator<Integer> iterator = this.databaseService.findVerbIds().iterator(); Set<Integer> results = new TreeSet<>(); while (iterator.hasNext()) { results.add(iterator.next()); } assertThat(results, hasItems(9, 10)); } }