use of jakarta.nosql.tck.entities.Person in project jnosql-diana by eclipse.
the class DefaultReactiveDocumentTemplateTest method shouldUpdateIterable.
@Test
public void shouldUpdateIterable() {
AtomicReference<List<Person>> reference = new AtomicReference<>();
Person ada = Person.builder().withId(1L).withAge(30).withName("Ada").build();
Collection<Person> adas = Arrays.asList(ada, ada);
Mockito.when(template.update(adas)).thenReturn(adas);
final Observable<Person> observable = manager.update(adas);
Mockito.verify(template, Mockito.never()).update(adas);
CompletionStage<List<Person>> completion = observable.getList();
completion.thenAccept(reference::set);
Mockito.verify(template).update(adas);
MatcherAssert.assertThat(reference.get(), Matchers.containsInAnyOrder(ada, ada));
}
use of jakarta.nosql.tck.entities.Person in project jnosql-diana by eclipse.
the class DefaultReactiveDocumentTemplateTest method shouldInsertDuration.
@Test
public void shouldInsertDuration() {
Duration duration = Duration.ofSeconds(1L);
AtomicReference<Person> reference = new AtomicReference<>();
Person ada = Person.builder().withId(1L).withAge(30).withName("Ada").build();
Mockito.when(template.insert(ada, duration)).thenReturn(ada);
final Observable<Person> observable = manager.insert(ada, duration);
Mockito.verify(template, Mockito.never()).insert(ada, duration);
CompletionStage<Optional<Person>> completion = observable.getFirst();
completion.thenAccept(o -> reference.set(o.get()));
Mockito.verify(template).insert(ada, duration);
assertEquals(ada, reference.get());
}
use of jakarta.nosql.tck.entities.Person in project jnosql-diana by eclipse.
the class DefaultReactiveDocumentTemplateTest method shouldInsertIterableDuration.
@Test
public void shouldInsertIterableDuration() {
Duration duration = Duration.ofSeconds(10);
AtomicReference<List<Person>> reference = new AtomicReference<>();
Person ada = Person.builder().withId(1L).withAge(30).withName("Ada").build();
Collection<Person> adas = Arrays.asList(ada, ada);
Mockito.when(template.insert(adas, duration)).thenReturn(adas);
final Observable<Person> observable = manager.insert(adas, duration);
Mockito.verify(template, Mockito.never()).insert(adas, duration);
CompletionStage<List<Person>> completion = observable.getList();
completion.thenAccept(reference::set);
Mockito.verify(template).insert(adas, duration);
MatcherAssert.assertThat(reference.get(), Matchers.containsInAnyOrder(ada, ada));
}
use of jakarta.nosql.tck.entities.Person in project jnosql-diana by eclipse.
the class DefaultReactiveColumnTemplateTest method shouldInsertIterableDuration.
@Test
public void shouldInsertIterableDuration() {
Duration duration = Duration.ofSeconds(10);
AtomicReference<List<Person>> reference = new AtomicReference<>();
Person ada = Person.builder().withId(1L).withAge(30).withName("Ada").build();
Collection<Person> adas = Arrays.asList(ada, ada);
Mockito.when(template.insert(adas, duration)).thenReturn(adas);
final Publisher<Person> publisher = manager.insert(adas, duration).getPublisher();
CompletionSubscriber<Person, List<Person>> subscriber = ReactiveStreams.<Person>builder().toList().build();
Mockito.verify(template, Mockito.never()).insert(adas, duration);
publisher.subscribe(subscriber);
CompletionStage<List<Person>> completion = subscriber.getCompletion();
completion.thenAccept(reference::set);
Mockito.verify(template).insert(adas, duration);
MatcherAssert.assertThat(reference.get(), Matchers.containsInAnyOrder(ada, ada));
}
use of jakarta.nosql.tck.entities.Person in project jnosql-diana by eclipse.
the class DefaultReactiveColumnTemplateTest method shouldSingleResult.
@Test
public void shouldSingleResult() {
String query = "select * from Person";
AtomicReference<List<Person>> reference = new AtomicReference<>();
Person ada = Person.builder().withId(1L).withAge(30).withName("Ada").build();
Mockito.when(template.singleResult(query)).thenReturn(Optional.of(ada));
final Observable<Person> publisher = manager.singleResult(query);
Mockito.verify(template, Mockito.never()).singleResult(query);
CompletionStage<List<Person>> completion = publisher.getList();
completion.thenAccept(reference::set);
Mockito.verify(template).singleResult(query);
MatcherAssert.assertThat(reference.get(), Matchers.containsInAnyOrder(ada));
}
Aggregations