Search in sources :

Example 56 with Book

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

the class StructureTest method testDemote.

@Test
public void testDemote() throws IOException {
    Book book = shelfTestUtils.setupBook("notebook", "" + "description\n" + "\n" + "* Note 1\n" + "** Note 1.1\n" + "* Note 2\n");
    /* Demote 2. */
    assertEquals(1, shelf.demote(book.getId(), shelf.getNote("Note 2").getId()));
    assertEquals("description\n" + "\n" + "* Note 1\n" + "** Note 1.1\n" + "** Note 2\n", shelf.getBookContent("notebook", BookName.Format.ORG));
    NotePosition n1 = shelf.getNote("Note 1").getPosition();
    NotePosition n11 = shelf.getNote("Note 1.1").getPosition();
    NotePosition n2 = shelf.getNote("Note 2").getPosition();
    assertEquals(2, n1.getDescendantsCount());
    assertEquals(0, n11.getDescendantsCount());
    assertEquals(0, n2.getDescendantsCount());
    assertEquals(1, n1.getLevel());
    assertEquals(2, n11.getLevel());
    assertEquals(2, n2.getLevel());
    assertTrue(n1.getLft() < n11.getLft());
    assertTrue(n11.getLft() < n11.getRgt());
    assertTrue(n11.getRgt() < n2.getLft());
    assertTrue(n2.getLft() < n2.getRgt());
    assertTrue(n2.getRgt() < n1.getRgt());
}
Also used : Book(com.orgzly.android.Book) NotePosition(com.orgzly.android.NotePosition) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 57 with Book

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

the class StructureTest method testPasteFolded.

@Test
public void testPasteFolded() throws IOException {
    Book book = shelfTestUtils.setupBook("notebook", "" + "description\n" + "\n" + "* Note 1\n" + "** Note 1.1\n" + "* Note 2\n");
    shelf.toggleFoldedState(shelf.getNote("Note 1").getId());
    shelf.cut(book.getId(), shelf.getNote("Note 1").getId());
    Note n = shelf.getNote("Note 2");
    shelf.paste(n.getPosition().getBookId(), n.getId(), Place.ABOVE);
    /* Remains folded. */
    assertTrue(shelf.getNote("Note 1").getPosition().isFolded());
    assertNotSame(0, shelf.getNote("Note 1.1").getPosition().getFoldedUnderId());
}
Also used : Book(com.orgzly.android.Book) Note(com.orgzly.android.Note) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 58 with Book

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

the class StructureTest method testCyclingFoldedState.

@Test
public void testCyclingFoldedState() {
    Book book = shelfTestUtils.setupBook("booky", "" + "Notebook\n" + "* Note 1\n" + "** Note 2\n" + "*** Note 3\n" + "** Note 4\n" + "* Note 5\n" + "** Note 6");
    /* Fold all. */
    shelf.cycleVisibility(book);
    /* Unfold Note 1. */
    shelf.toggleFoldedState(shelf.getNote("Note 1").getId());
    assertEquals(0, shelf.getNote("Note 2").getPosition().getFoldedUnderId());
    assertEquals(0, shelf.getNote("Note 4").getPosition().getFoldedUnderId());
    /* Fold all. */
    shelf.cycleVisibility(book);
    /* Unfold all. */
    shelf.cycleVisibility(book);
    /* Fold Note 1. */
    shelf.toggleFoldedState(shelf.getNote("Note 1").getId());
    /* Fold all. */
    shelf.cycleVisibility(book);
    /* Unfold Note 1. */
    shelf.toggleFoldedState(shelf.getNote("Note 1").getId());
    assertFalse(shelf.getNote("Note 1").getPosition().isFolded());
    assertTrue(shelf.getNote("Note 2").getPosition().isFolded());
}
Also used : Book(com.orgzly.android.Book) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 59 with Book

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

the class StructureTest method testNewNoteAfterMovingUnder.

/* After moving one note under another, test lft and rgt od third newly created note. */
@Test
public void testNewNoteAfterMovingUnder() throws IOException {
    Book book = shelfTestUtils.setupBook("notebook", "* Note 1\n* Note 2");
    shelf.cut(book.getId(), shelf.getNote("Note 1").getId());
    shelf.paste(book.getId(), shelf.getNote("Note 2").getId(), Place.UNDER);
    Note newNote = new Note();
    newNote.getPosition().setBookId(book.getId());
    newNote.getHead().setTitle("Note 3");
    shelf.createNote(newNote, null);
    assertTrue(shelf.getNote("Note 2").getPosition().getRgt() < shelf.getNote("Note 3").getPosition().getLft());
}
Also used : Book(com.orgzly.android.Book) Note(com.orgzly.android.Note) OrgzlyTest(com.orgzly.android.OrgzlyTest) Test(org.junit.Test)

Example 60 with Book

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

the class StructureTest method testFoldingAllWhenContentOnlyIsFolded.

@Test
public void testFoldingAllWhenContentOnlyIsFolded() {
    Book book = shelfTestUtils.setupBook("notebook", "" + "description\n" + "* Note 1\n" + "** Note 2\n" + "* Note 3\n" + "Content");
    /* Fold all. */
    shelf.cycleVisibility(book);
    /* Unfold Note 3's content. */
    shelf.toggleFoldedState(shelf.getNote("Note 3").getId());
    /* Fold all. */
    shelf.cycleVisibility(book);
    assertTrue(shelf.getNote("Note 1").getPosition().isFolded());
    assertTrue(shelf.getNote("Note 2").getPosition().isFolded());
    assertTrue(shelf.getNote("Note 3").getPosition().isFolded());
}
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