Search in sources :

Example 11 with Book

use of com.orgzly.android.Book in project orgzly-android by orgzly.

the class SyncTest method testDummyShouldNotBeSavedWhenHavingOneRepo.

@Test
public void testDummyShouldNotBeSavedWhenHavingOneRepo() {
    shelfTestUtils.setupRepo("mock://repo-a");
    shelfTestUtils.setupRepo("mock://repo-b");
    shelfTestUtils.setupRook("mock://repo-a", "mock://repo-a/booky.org", "", "1abcdef", 1400067155);
    shelfTestUtils.setupRook("mock://repo-b", "mock://repo-b/booky.org", "", "2abcdef", 1400067156);
    Book book;
    Map<String, BookNamesake> namesakes;
    namesakes = shelf.sync();
    book = shelf.getBook("booky");
    assertEquals(BookSyncStatus.DUMMY_WITHOUT_LINK_AND_MULTIPLE_ROOKS, namesakes.get("booky").getStatus());
    assertTrue(book.isDummy());
    shelfTestUtils.deleteRepo("mock://repo-a");
    shelfTestUtils.deleteRepo("mock://repo-b");
    shelfTestUtils.setupRepo("mock://repo-c");
    namesakes = shelf.sync();
    book = shelf.getBook("booky");
    // TODO: We should delete it, no point of having a dummy and no remote book
    assertEquals(BookSyncStatus.ONLY_DUMMY, namesakes.get("booky").getStatus());
    assertTrue(book.isDummy());
}
Also used : Book(com.orgzly.android.Book) BookNamesake(com.orgzly.android.sync.BookNamesake) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 12 with Book

use of com.orgzly.android.Book 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() {
    shelfTestUtils.setupRepo("mock://repo-a");
    shelfTestUtils.setupRook("mock://repo-a", "mock://repo-a/booky.org.txt", "", "1abcdef", 1400067155);
    shelf.sync();
    Book book = shelf.getBook("booky");
    assertEquals("mock://repo-a", book.getLinkRepo().toString());
    assertEquals("mock://repo-a", book.getLastSyncedToRook().getRepoUri().toString());
    assertEquals("mock://repo-a/booky.org.txt", book.getLastSyncedToRook().getUri().toString());
}
Also used : Book(com.orgzly.android.Book) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 13 with Book

use of com.orgzly.android.Book in project orgzly-android by orgzly.

the class SyncTest method testRenameSyncedBook.

@Test
public void testRenameSyncedBook() throws IOException {
    shelfTestUtils.setupRepo("mock://repo-a");
    shelfTestUtils.setupBook("Booky", "1 2 3");
    shelf.sync();
    Book book = BooksClient.get(context, "Booky");
    assertEquals("mock://repo-a/Booky.org", book.getLastSyncedToRook().getUri().toString());
    shelf.renameBook(book, "BookyRenamed");
    Book renamedBook = BooksClient.get(context, "BookyRenamed");
    assertNotNull(renamedBook);
    assertEquals("mock://repo-a", renamedBook.getLinkRepo().toString());
    assertEquals("mock://repo-a", renamedBook.getLastSyncedToRook().getRepoUri().toString());
    assertEquals("mock://repo-a/BookyRenamed.org", renamedBook.getLastSyncedToRook().getUri().toString());
}
Also used : Book(com.orgzly.android.Book) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 14 with Book

use of com.orgzly.android.Book in project orgzly-android by orgzly.

the class SyncTest method testDeletingUsedRepo.

@Test
public void testDeletingUsedRepo() {
    Book book;
    shelfTestUtils.setupRepo("mock://repo-a");
    shelfTestUtils.setupRook("mock://repo-a", "mock://repo-a/book.org", "Content A", "1abcde", 1400067156000L);
    shelf.sync();
    shelfTestUtils.deleteRepo("mock://repo-a");
    shelfTestUtils.setupRepo("mock://repo-b");
    shelf.sync();
    book = shelf.getBook("book");
    assertEquals(BookSyncStatus.ONLY_BOOK_WITHOUT_LINK_AND_ONE_REPO, book.getSyncStatus());
    assertEquals("mock://repo-b", book.getLinkRepo().toString());
    assertEquals("mock://repo-b", book.getLastSyncedToRook().getRepoUri().toString());
    assertEquals("mock://repo-b/book.org", book.getLastSyncedToRook().getUri().toString());
    shelfTestUtils.deleteRepo("mock://repo-b");
    shelfTestUtils.setupRepo("mock://repo-a");
    shelf.sync();
    book = shelf.getBook("book");
    assertEquals(BookSyncStatus.BOOK_WITHOUT_LINK_AND_ONE_OR_MORE_ROOKS_EXIST, book.getSyncStatus());
    assertNull(book.getLinkRepo());
    assertEquals("mock://repo-b/book.org", book.getLastSyncedToRook().getUri().toString());
}
Also used : Book(com.orgzly.android.Book) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 15 with Book

use of com.orgzly.android.Book in project orgzly-android by orgzly.

the class SyncTest method testMtimeOfLoadedBook.

@Test
public void testMtimeOfLoadedBook() {
    shelfTestUtils.setupRepo("mock://repo-a");
    shelfTestUtils.setupRook("mock://repo-a", "mock://repo-a/book.org", "Content", "rev", 1234567890000L);
    shelf.sync();
    Book book = shelf.getBooks().get(0);
    assertEquals(BookSyncStatus.DUMMY_WITHOUT_LINK_AND_ONE_ROOK, book.getSyncStatus());
    assertEquals(0, book.getMtime());
}
Also used : Book(com.orgzly.android.Book) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Aggregations

Book (com.orgzly.android.Book)60 OrgzlyTest (com.orgzly.android.OrgzlyTest)47 Test (org.junit.Test)47 Note (com.orgzly.android.Note)21 NotePosition (com.orgzly.android.NotePosition)11 IOException (java.io.IOException)8 Shelf (com.orgzly.android.Shelf)6 Uri (android.net.Uri)5 Context (android.content.Context)4 Intent (android.content.Intent)4 TypedArray (android.content.res.TypedArray)4 NavigationView (android.support.design.widget.NavigationView)4 SearchView (android.support.v7.widget.SearchView)4 MenuItem (android.view.MenuItem)4 View (android.view.View)4 TextView (android.widget.TextView)4 Query (com.orgzly.android.query.Query)4 File (java.io.File)4 Activity (android.app.Activity)3 AlertDialog (android.app.AlertDialog)3