Package com.google.collide.shared.document

Examples of com.google.collide.shared.document.LineInfo


  private void checkCut(String text, int line, int column, String expected) {
    Document document = Document.createFromString(text);
    final Editor editor = Editor.create(new MockAppContext());
    editor.setDocument(document);

    LineInfo lineInfo = document.getLineFinder().findLine(line);
    editor.getSelection().setSelection(lineInfo, column, lineInfo, column);
    editor.getInput().processSignalEvent(TestCutPasteEvent.create(null));
    assertEquals(expected, document.asText());
  }
View Full Code Here


  }

  public void testSettingDocumentDoesNothingToDocument() {
    calculator.handleDocumentChange(basicDocument);

    LineInfo lineInfo = basicDocument.getFirstLineInfo();
    do {
      assertTag(null, lineInfo.line());
    } while (lineInfo.moveToNext());
  }
View Full Code Here

  }

  public void testLinesAreLazilyTagged() {
    calculator.handleDocumentChange(basicDocument);

    LineInfo lineTwo = SearchTestsUtil.gotoLineInfo(basicDocument, 2);
    LineInfo lineThree = SearchTestsUtil.gotoLineInfo(basicDocument, 3);
    calculator.convertColumnToX(lineTwo.line(), 3);
    calculator.convertColumnToX(lineThree.line(), 3);

    LineInfo lineInfo = basicDocument.getFirstLineInfo();
    do {
      if (lineInfo.number() == lineTwo.number() || lineInfo.number() == lineThree.number()) {
        assertTag(false, lineInfo.line());
      } else {
        assertTag(null, lineInfo.line());
      }
    } while (lineInfo.moveToNext());
  }
View Full Code Here

  }

  public void testCalculatedCorrectlyForSimpleCase() {
    calculator.handleDocumentChange(basicDocument);

    LineInfo lineInfo = SearchTestsUtil.gotoLineInfo(basicDocument, 2);
    double x = assertReversibleAndReturnX(lineInfo.line(), 3);
    assertEquals(naiveColumnToX(3), x);

    x = assertReversibleAndReturnX(lineInfo.line(), 0);
    assertEquals(0.0, x);

    x = assertReversibleAndReturnX(lineInfo.line(), lineInfo.line().length() - 1);
    assertEquals(naiveColumnToX(lineInfo.line().length() - 1), x);
  }
View Full Code Here

  }

  public void testIndentationAndCarriageReturnDoesNotAddOffsetCache() {
    calculator.handleDocumentChange(indentAndCarriageReturnDocument);

    LineInfo lineInfo = indentAndCarriageReturnDocument.getFirstLineInfo();
    do {
      calculator.convertColumnToX(lineInfo.line(), 3);
      assertTag(false, lineInfo.line());
    } while (lineInfo.moveToNext());
  }
View Full Code Here

  }

  public void testIndentationHandled() {
    calculator.handleDocumentChange(indentAndCarriageReturnDocument);

    LineInfo lineInfo = indentAndCarriageReturnDocument.getFirstLineInfo();
    double x = assertReversibleAndReturnX(lineInfo.line(), 0);
    assertEquals(0.0, x);

    x = assertReversibleAndReturnX(lineInfo.line(), 1);
    assertWideChars(1, 1, x);

    x = assertReversibleAndReturnX(lineInfo.line(), 2);
    assertWideChars(2, 2, x);

    x = assertReversibleAndReturnX(lineInfo.line(), 3);
    assertWideChars(3, 3, x);

    x = assertReversibleAndReturnX(lineInfo.line(), 4);
    assertWideChars(4, 3, x);

    x = assertReversibleAndReturnX(lineInfo.line(), 4);
    assertWideChars(4, 3, x);

    int lastColumn = lineInfo.line().length() - 1;
    x = assertReversibleAndReturnX(lineInfo.line(), lastColumn);
    assertWideChars(lastColumn, 3, x);
  }
View Full Code Here

  }

  public void testCarriageReturnHandled() {
    calculator.handleDocumentChange(indentAndCarriageReturnDocument);

    LineInfo lineInfo = SearchTestsUtil.gotoLineInfo(indentAndCarriageReturnDocument, 1);
    double x = assertReversibleAndReturnX(lineInfo.line(), 0);
    assertEquals(0.0, x);

    x = assertReversibleAndReturnX(lineInfo.line(), 5);
    assertEquals(naiveColumnToX(5), x);

    x = assertReversibleAndReturnX(lineInfo.line(), 15);
    assertEquals(naiveColumnToX(15), x);

    // Test offset due to carriage return is correct
    int length = lineInfo.line().length();
    x = assertReversibleAndReturnX(lineInfo.line(), length - 3);
    assertWideCharsAndZeroWidthChars(length - 3, 0, 0, x);

    x = assertReversibleAndReturnXAccountingForZeroWidth(lineInfo.line(), length - 2, 1);
    assertWideCharsAndZeroWidthChars(length - 2, 0, 0, x);

    x = assertReversibleAndReturnXAccountingForZeroWidth(lineInfo.line(), length - 1, 0);
    assertWideCharsAndZeroWidthChars(length - 1, 0, 1, x);
  }
View Full Code Here

  }

  public void testBothTabAndCarriageReturn() {
    calculator.handleDocumentChange(indentAndCarriageReturnDocument);

    LineInfo lineTwo = SearchTestsUtil.gotoLineInfo(indentAndCarriageReturnDocument, 2);
    double x = assertReversibleAndReturnX(lineTwo.line(), 1);
    assertWideChars(1, 1, x);

    x = assertReversibleAndReturnX(lineTwo.line(), 2);
    assertWideChars(2, 1, x);

    x = assertReversibleAndReturnX(lineTwo.line(), 10);
    assertWideChars(10, 1, x);

    // Test offset due to carriage return is correct
    int length = lineTwo.line().length();
    x = assertReversibleAndReturnX(lineTwo.line(), length - 3);
    assertWideCharsAndZeroWidthChars(length - 3, 1, 0, x);

    x = assertReversibleAndReturnXAccountingForZeroWidth(lineTwo.line(), length - 2, 1);
    assertWideCharsAndZeroWidthChars(length - 2, 1, 0, x);

    x = assertReversibleAndReturnX(lineTwo.line(), length - 1);
    assertWideCharsAndZeroWidthChars(length - 1, 1, 1, x);
  }
View Full Code Here

  }

  public void testLineWithAllTabsAndCarriageReturn() {
    calculator.handleDocumentChange(indentAndCarriageReturnDocument);

    LineInfo lineThree = SearchTestsUtil.gotoLineInfo(indentAndCarriageReturnDocument, 3);
    double x = assertReversibleAndReturnX(lineThree.line(), 1);
    assertWideChars(1, 1, x);

    x = assertReversibleAndReturnX(lineThree.line(), 2);
    assertWideChars(2, 2, x);

    x = assertReversibleAndReturnX(lineThree.line(), 3);
    assertWideChars(3, 3, x);

    x = assertReversibleAndReturnXAccountingForZeroWidth(lineThree.line(), 4, 1);
    assertWideChars(4, 4, x);

    x = assertReversibleAndReturnXAccountingForZeroWidth(lineThree.line(), 5, 0);
    assertWideCharsAndZeroWidthChars(5, 4, 1, x);
  }
View Full Code Here

    testLineWithAllTabsAndCarriageReturn();
    testBothTabAndCarriageReturn();
  }

  public void testAssertAllLinesWithSpecialCharsHaveATag() {
    LineInfo lineInfo = fullUnicodeDocument.getFirstLineInfo();
    do {
      calculator.convertColumnToX(lineInfo.line(), 3);
      assertTag(true, lineInfo.line());
    } while (lineInfo.moveToNext());
  }
View Full Code Here

TOP

Related Classes of com.google.collide.shared.document.LineInfo

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.