Search in sources :

Example 6 with BookView

use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.

the class SyncTest method testRenameSyncedBookWithDifferentLink.

@Test
public void testRenameSyncedBookWithDifferentLink() throws IOException {
    BookView book;
    Repo repoA = testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
    Repo repoB = testUtils.setupRepo(RepoType.MOCK, "mock://repo-b");
    book = testUtils.setupBook("Booky", "1 2 3");
    dataRepository.setLink(book.getBook().getId(), repoA);
    testUtils.sync();
    book = dataRepository.getBooks().get(0);
    assertEquals(1, testUtils.repoInstance(RepoType.MOCK, "mock://repo-a").getBooks().size());
    assertEquals(0, testUtils.repoInstance(RepoType.MOCK, "mock://repo-b").getBooks().size());
    assertEquals("mock://repo-a", book.getLinkRepo().getUrl());
    assertEquals("mock://repo-a", book.getSyncedTo().getRepoUri().toString());
    assertEquals("mock://repo-a/Booky.org", book.getSyncedTo().getUri().toString());
    dataRepository.setLink(book.getBook().getId(), repoB);
    book = dataRepository.getBooks().get(0);
    dataRepository.renameBook(book, "BookyRenamed");
    book = dataRepository.getBooks().get(0);
    assertEquals("Booky", book.getBook().getName());
    assertEquals(BookSyncStatus.ROOK_AND_VROOK_HAVE_DIFFERENT_REPOS.toString(), book.getBook().getSyncStatus());
    assertEquals("mock://repo-b", book.getLinkRepo().getUrl());
    assertEquals("mock://repo-a/Booky.org", book.getSyncedTo().getUri().toString());
}
Also used : Repo(com.orgzly.android.db.entity.Repo) BookView(com.orgzly.android.db.entity.BookView) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 7 with BookView

use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.

the class SyncTest method testMockFileRename.

@Test
public void testMockFileRename() throws IOException {
    List<VersionedRook> vrooks;
    testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
    SyncRepo repo = testUtils.repoInstance(RepoType.MOCK, "mock://repo-a");
    BookView book = testUtils.setupBook("Booky", "1 2 3");
    testUtils.sync();
    vrooks = repo.getBooks();
    assertEquals(1, vrooks.size());
    assertEquals("Booky", BookName.getInstance(context, vrooks.get(0)).getName());
    long mtime = vrooks.get(0).getMtime();
    String rev = vrooks.get(0).getRevision();
    // Rename local notebook
    dataRepository.renameBook(book, "BookyRenamed");
    // Rename rook
    repo.renameBook(Uri.parse("mock://repo-a/Booky.org"), "BookyRenamed");
    vrooks = repo.getBooks();
    assertEquals(1, vrooks.size());
    assertEquals("BookyRenamed", BookName.getInstance(context, vrooks.get(0)).getName());
    assertEquals("mock://repo-a/BookyRenamed.org", vrooks.get(0).getUri().toString());
    assertTrue(mtime < vrooks.get(0).getMtime());
    assertNotSame(rev, vrooks.get(0).getRevision());
}
Also used : BookView(com.orgzly.android.db.entity.BookView) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 8 with BookView

use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.

the class SyncTest method testDeletingUsedRepo.

@Test
public void testDeletingUsedRepo() {
    BookView book;
    Repo repo = testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
    testUtils.setupRook(repo, "mock://repo-a/book.org", "Content A", "1abcde", 1400067156000L);
    testUtils.sync();
    testUtils.deleteRepo("mock://repo-a");
    testUtils.setupRepo(RepoType.MOCK, "mock://repo-b");
    testUtils.sync();
    book = dataRepository.getBookView("book");
    assertEquals(BookSyncStatus.ONLY_BOOK_WITHOUT_LINK_AND_ONE_REPO.toString(), book.getBook().getSyncStatus());
    assertEquals("mock://repo-b", book.getLinkRepo().getUrl());
    assertEquals("mock://repo-b", book.getSyncedTo().getRepoUri().toString());
    assertEquals("mock://repo-b/book.org", book.getSyncedTo().getUri().toString());
    testUtils.deleteRepo("mock://repo-b");
    testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
    testUtils.sync();
    book = dataRepository.getBookView("book");
    assertEquals(BookSyncStatus.BOOK_WITHOUT_LINK_AND_ONE_OR_MORE_ROOKS_EXIST.toString(), book.getBook().getSyncStatus());
    assertNull(book.getLinkRepo());
    assertNull("mock://repo-b/book.org", book.getSyncedTo());
}
Also used : Repo(com.orgzly.android.db.entity.Repo) BookView(com.orgzly.android.db.entity.BookView) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 9 with BookView

use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.

the class SyncTest method testSyncingOrgTxt.

// public void testEncodingOnSyncSavingStaysTheSame() {
// setup.setupRepo("mock://repo-a");
// setup.setupRook("mock://repo-a", "mock://repo-a/book.org", "Content A", "1abcde", 1400067156000L);
// sync();
// setup.renameRepo("mock://repo-a", "mock://repo-b");
// sync();
// VersionedRook vrook = CurrentRooksHelper.get(testContext, "mock://repo-b/book.org");
// assertNull(vrook.getDetectedEncoding());
// assertEquals("UTF-8", vrook.getUsedEncoding());
// 
// }
@Test
public void testSyncingOrgTxt() {
    Repo repo = testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
    testUtils.setupRook(repo, "mock://repo-a/booky.org.txt", "", "1abcdef", 1400067155);
    testUtils.sync();
    BookView book = dataRepository.getBookView("booky");
    assertEquals("mock://repo-a", book.getLinkRepo().getUrl());
    assertEquals("mock://repo-a", book.getSyncedTo().getRepoUri().toString());
    assertEquals("mock://repo-a/booky.org.txt", book.getSyncedTo().getUri().toString());
}
Also used : Repo(com.orgzly.android.db.entity.Repo) BookView(com.orgzly.android.db.entity.BookView) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 10 with BookView

use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.

the class DataRepositoryTest method testLoadRook.

@Test
public void testLoadRook() throws IOException {
    Repo repo = testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
    testUtils.setupRook(repo, "mock://repo-a/remote-book-1.org", "", "0abcdef", 1400067156000L);
    testUtils.setupRook(repo, "mock://repo-a/remote-book-2.org", "", "1abcdef", 1300067156000L);
    testUtils.setupRook(repo, "mock://repo-a/remote-book-3.org", "", "2abcdef", 1200067156000L);
    VersionedRook vrook = SyncService.getBooksFromAllRepos(dataRepository, null).get(0);
    dataRepository.loadBookFromRepo(vrook);
    assertEquals(1, dataRepository.getBooks().size());
    BookView book = dataRepository.getBooks().get(0);
    assertEquals("remote-book-1", book.getBook().getName());
    assertEquals("/remote-book-1.org", book.getSyncedTo().getUri().getPath());
    assertEquals("remote-book-1", BookName.getInstance(context, book.getSyncedTo()).getName());
    assertEquals("0abcdef", book.getSyncedTo().getRevision());
    assertEquals(1400067156000L, book.getSyncedTo().getMtime());
}
Also used : Repo(com.orgzly.android.db.entity.Repo) BookView(com.orgzly.android.db.entity.BookView) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Aggregations

BookView (com.orgzly.android.db.entity.BookView)19 OrgzlyTest (com.orgzly.android.OrgzlyTest)16 Test (org.junit.Test)16 Repo (com.orgzly.android.db.entity.Repo)11 BookNamesake (com.orgzly.android.sync.BookNamesake)2 NotificationManager (android.app.NotificationManager)1 PendingIntent (android.app.PendingIntent)1 Intent (android.content.Intent)1 NotificationCompat (androidx.core.app.NotificationCompat)1 BookAction (com.orgzly.android.db.entity.BookAction)1 Note (com.orgzly.android.db.entity.Note)1 VersionedRook (com.orgzly.android.repos.VersionedRook)1 MainActivity (com.orgzly.android.ui.main.MainActivity)1 IOException (java.io.IOException)1 HashMap (java.util.HashMap)1