use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.
the class BookNamesake method getAll.
/**
* Create links between each local book and each remote book with the same name.
*/
public static Map<String, BookNamesake> getAll(Context context, List<BookView> books, List<VersionedRook> versionedRooks) {
Map<String, BookNamesake> namesakes = new HashMap<>();
/* Create links from all local books first. */
for (BookView book : books) {
BookNamesake pair = new BookNamesake(book.getBook().getName());
namesakes.put(book.getBook().getName(), pair);
pair.setBook(book);
}
/* Set repo books. */
for (VersionedRook book : versionedRooks) {
String fileName = BookName.getFileName(context, book.getUri());
String name = BookName.fromFileName(fileName).getName();
BookNamesake pair = namesakes.get(name);
if (pair == null) {
/* Local file doesn't exists, create new pair. */
pair = new BookNamesake(name);
namesakes.put(name, pair);
}
/* Add remote book. */
pair.addRook(book);
}
return namesakes;
}
use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.
the class TestUtils method setupBook.
public BookView setupBook(String name, String content, Repo link) {
BookView bookView = null;
try {
bookView = loadBookFromContent(name, BookFormat.ORG, content, null);
} catch (IOException e) {
e.printStackTrace();
fail(e.toString());
}
dataRepository.setLink(bookView.getBook().getId(), link);
return bookView;
}
use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.
the class DirectoryRepoTest method testRenameBook.
// TODO: Do the same for dropbox repo
@Test
public void testRenameBook() {
BookView bookView;
testUtils.setupRepo(RepoType.DIRECTORY, repoUriString);
testUtils.setupBook("booky", "");
testUtils.sync();
bookView = dataRepository.getBookView("booky");
assertEquals(repoUriString, bookView.getLinkRepo().getUrl());
assertEquals(repoUriString, bookView.getSyncedTo().getRepoUri().toString());
assertEquals(repoUriString + "/booky.org", bookView.getSyncedTo().getUri().toString());
dataRepository.renameBook(bookView, "booky-renamed");
bookView = dataRepository.getBookView("booky-renamed");
assertEquals(repoUriString, bookView.getLinkRepo().getUrl());
assertEquals(repoUriString, bookView.getSyncedTo().getRepoUri().toString());
assertEquals(repoUriString + "/booky-renamed.org", bookView.getSyncedTo().getUri().toString());
}
use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.
the class SyncTest method testMtimeOfLoadedBook.
@Test
public void testMtimeOfLoadedBook() {
Repo repo = testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
testUtils.setupRook(repo, "mock://repo-a/book.org", "Content", "rev", 1234567890000L);
testUtils.sync();
BookView book = dataRepository.getBooks().get(0);
assertEquals(BookSyncStatus.DUMMY_WITHOUT_LINK_AND_ONE_ROOK.toString(), book.getBook().getSyncStatus());
assertEquals(1234567890000L, book.getBook().getMtime().longValue());
}
use of com.orgzly.android.db.entity.BookView in project orgzly-android by orgzly.
the class SyncTest method testRenameSyncedBook.
@Test
public void testRenameSyncedBook() {
testUtils.setupRepo(RepoType.MOCK, "mock://repo-a");
testUtils.setupBook("Booky", "1 2 3");
testUtils.sync();
BookView book = dataRepository.getBookView("Booky");
assertEquals("mock://repo-a/Booky.org", book.getSyncedTo().getUri().toString());
dataRepository.renameBook(book, "BookyRenamed");
BookView renamedBook = dataRepository.getBookView("BookyRenamed");
assertNotNull(renamedBook);
assertEquals("mock://repo-a", renamedBook.getLinkRepo().getUrl());
assertEquals("mock://repo-a", renamedBook.getSyncedTo().getRepoUri().toString());
assertEquals("mock://repo-a/BookyRenamed.org", renamedBook.getSyncedTo().getUri().toString());
}
Aggregations