Search in sources :

Example 6 with User

use of com.pushtorefresh.storio3.sqlite.integration.User in project storio by pushtorefresh.

the class ObserveChangesInTableTest method insertEmission.

@Test
public void insertEmission() {
    final List<User> users = TestFactory.newUsers(10);
    final Queue<Changes> expectedChanges = new LinkedList<Changes>();
    expectedChanges.add(Changes.newInstance(UserTableMeta.TABLE, UserTableMeta.NOTIFICATION_TAG));
    final EmissionChecker emissionChecker = new EmissionChecker(expectedChanges);
    final Disposable disposable = emissionChecker.subscribe();
    putUsersBlocking(users);
    // Should receive changes of Users table
    emissionChecker.awaitNextExpectedValue();
    emissionChecker.assertThatNoExpectedValuesLeft();
    disposable.dispose();
}
Also used : Changes(com.pushtorefresh.storio3.sqlite.Changes) Disposable(io.reactivex.disposables.Disposable) AbstractEmissionChecker(com.pushtorefresh.storio3.test.AbstractEmissionChecker) LinkedList(java.util.LinkedList) Test(org.junit.Test)

Example 7 with User

use of com.pushtorefresh.storio3.sqlite.integration.User in project storio by pushtorefresh.

the class BaseTest method putUserBlocking.

@NonNull
User putUserBlocking(@NonNull final User user) {
    final PutResult putResult = storIOSQLite.put().object(user).prepare().executeAsBlocking();
    assertThat(putResult).isNotNull();
    assertThat(putResult.wasInserted()).isTrue();
    return user;
}
Also used : PutResult(com.pushtorefresh.storio3.sqlite.operations.put.PutResult) NonNull(android.support.annotation.NonNull)

Example 8 with User

use of com.pushtorefresh.storio3.sqlite.integration.User in project storio by pushtorefresh.

the class BaseTest method deleteUserBlocking.

@NonNull
DeleteResult deleteUserBlocking(@NonNull final User user) {
    final DeleteResult deleteResult = storIOSQLite.delete().object(user).prepare().executeAsBlocking();
    assertThat(deleteResult.numberOfRowsDeleted()).isEqualTo(1);
    return deleteResult;
}
Also used : DeleteResult(com.pushtorefresh.storio3.sqlite.operations.delete.DeleteResult) NonNull(android.support.annotation.NonNull)

Example 9 with User

use of com.pushtorefresh.storio3.sqlite.integration.User in project storio by pushtorefresh.

the class RxQueryTest method deleteEmission.

@Test
public void deleteEmission() {
    final List<User> usersThatShouldBeSaved = TestFactory.newUsers(10);
    final List<User> usersThatShouldBeDeleted = TestFactory.newUsers(10);
    final List<User> allUsers = new ArrayList<User>();
    allUsers.addAll(usersThatShouldBeSaved);
    allUsers.addAll(usersThatShouldBeDeleted);
    putUsersBlocking(allUsers);
    final Queue<List<User>> expectedUsers = new LinkedList<List<User>>();
    expectedUsers.add(allUsers);
    expectedUsers.add(usersThatShouldBeSaved);
    final EmissionChecker emissionChecker = new EmissionChecker(expectedUsers);
    final Disposable disposable = emissionChecker.subscribe();
    // Should receive all users
    emissionChecker.awaitNextExpectedValue();
    deleteUsersBlocking(usersThatShouldBeDeleted);
    // Should receive users that should be saved
    emissionChecker.awaitNextExpectedValue();
    emissionChecker.assertThatNoExpectedValuesLeft();
    disposable.dispose();
}
Also used : Disposable(io.reactivex.disposables.Disposable) AbstractEmissionChecker(com.pushtorefresh.storio3.test.AbstractEmissionChecker) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) LinkedList(java.util.LinkedList) List(java.util.List) LinkedList(java.util.LinkedList) Test(org.junit.Test)

Example 10 with User

use of com.pushtorefresh.storio3.sqlite.integration.User in project storio by pushtorefresh.

the class RxQueryTest method insertEmission.

@Test
public void insertEmission() {
    final List<User> initialUsers = putUsersBlocking(10);
    final List<User> usersForInsert = TestFactory.newUsers(10);
    final List<User> allUsers = new ArrayList<User>(initialUsers.size() + usersForInsert.size());
    allUsers.addAll(initialUsers);
    allUsers.addAll(usersForInsert);
    final Queue<List<User>> expectedUsers = new LinkedList<List<User>>();
    expectedUsers.add(initialUsers);
    expectedUsers.add(allUsers);
    final EmissionChecker emissionChecker = new EmissionChecker(expectedUsers);
    final Disposable disposable = emissionChecker.subscribe();
    // Should receive initial users
    emissionChecker.awaitNextExpectedValue();
    putUsersBlocking(usersForInsert);
    // Should receive initial users + inserted users
    emissionChecker.awaitNextExpectedValue();
    emissionChecker.assertThatNoExpectedValuesLeft();
    disposable.dispose();
}
Also used : Disposable(io.reactivex.disposables.Disposable) AbstractEmissionChecker(com.pushtorefresh.storio3.test.AbstractEmissionChecker) ArrayList(java.util.ArrayList) ArrayList(java.util.ArrayList) LinkedList(java.util.LinkedList) List(java.util.List) LinkedList(java.util.LinkedList) Test(org.junit.Test)

Aggregations

Test (org.junit.Test)13 Disposable (io.reactivex.disposables.Disposable)10 AbstractEmissionChecker (com.pushtorefresh.storio3.test.AbstractEmissionChecker)9 LinkedList (java.util.LinkedList)9 Changes (com.pushtorefresh.storio3.sqlite.Changes)6 ArrayList (java.util.ArrayList)6 List (java.util.List)5 NonNull (android.support.annotation.NonNull)4 Tweet (com.pushtorefresh.storio3.sample.db.entities.Tweet)3 PutResult (com.pushtorefresh.storio3.sqlite.operations.put.PutResult)3 User (com.pushtorefresh.storio3.sample.db.entities.User)2 BaseTest (com.pushtorefresh.storio3.sqlite.integration.BaseTest)2 User (com.pushtorefresh.storio3.sqlite.integration.User)2 DeleteResult (com.pushtorefresh.storio3.sqlite.operations.delete.DeleteResult)2 RawQuery (com.pushtorefresh.storio3.sqlite.queries.RawQuery)2 TestSubscriber (io.reactivex.subscribers.TestSubscriber)2 Optional (com.pushtorefresh.storio3.Optional)1 TweetWithUser (com.pushtorefresh.storio3.sample.db.entities.TweetWithUser)1 UserWithTweets (com.pushtorefresh.storio3.sample.db.entities.UserWithTweets)1