/** * Same as {@link #createFromXmlString(String)}, but with constraints on characters. * @param xmlContent */ public static XmlStringBuilder createFromXmlStringWithContraints(String xmlContent, PermittedCharacters permittedChars) { return XmlStringBuilder.innerXml(DocProviders.POJO.parse(xmlContent), permittedChars); }
@Override public MutableDocumentImpl<Node, Element, Text> parse(String text) { IndexedDocument<Node, Element, Text> doc = POJO.parse(text); return new MutableDocumentImpl<Node, Element, Text>(createTrivialSequencer(doc), doc); } };
private void checkGetText(String docXml, int start, int end, String expectedText) { IndexedDocument<?, ?, ?> doc = DocProviders.POJO.parse(docXml); assertEquals(expectedText, DocHelper.getText(doc, start, end)); } /**
private void checkGetText(String docXml, int start, int end, String expectedText) { IndexedDocument<?, ?, ?> doc = DocProviders.POJO.parse(docXml); assertEquals(expectedText, DocHelper.getText(doc, start, end)); } /**
private void checkGetElementTextWithTagName(String docXml, String tagName, String expectedElementText) { IndexedDocument<Node, Element, Text> doc = DocProviders.POJO.parse(docXml); assertEquals(expectedElementText, DocHelper.getTextForElement(doc, doc, tagName)); }
/** Init document state */ protected void init(String initialContent) { indexed = DocProviders.POJO.parse(initialContent); // Get a mutable doc view of our target and hook it up with the // "remote" document as the sink of outgoing ops. doc = new MutableDocumentImpl<Node, Element, Text>( createSequencer(indexed), indexed); }
public void testDocProviderParse() { String testStr = "<body><?a \"conv/title\"=\"\" \"lang\"=\"unknown\"?><line/>spelly test<?a \"conv/title\" \"lang\"?></body>"; IndexedDocument<Node, Element, Text> parse = DocProviders.POJO.parse(testStr); assertEquals(testStr, parse.toXmlString()); }
private WaveletOperation makeBlipContentOp(String id, long timestamp) throws OperationException { if (!docs.containsKey(id)) { docs.put(id, DocProviders.POJO.parse("<x></x>")); } Nindo nindo = Nindo.insertCharacters(1, "hi"); DocOp op = docs.get(id).consumeAndReturnInvertible(nindo); return new WaveletBlipOperation(id, new BlipContentOperation(getContext(timestamp), op)); }
public void testCountChildrenReturnsZeroWhenThereAreNoChildren() { IndexedDocument<Node, Element, Text> doc = DocProviders.POJO.parse(""); assertEquals(0, DocHelper.countChildren(doc, doc.getDocumentElement())); }
private static ApiView createApiViewFromXml(String xml) { IndexedDocument<Node, Element, Text> indexedDoc = DocProviders.POJO.parse(LineContainers.debugContainerWrap(xml)); Document doc = new DocumentImpl(createSequencer(indexedDoc), indexedDoc); return new ApiView(doc, mock(Wavelet.class)); }
/** * Creates an observable mutable document with some schema, content, and sink. */ public static ObservableDocument createDocument(DocumentSchema schema, String initialContent, SilentOperationSink<? super DocOp> sink) { Preconditions.checkNotNull(sink, "Sink can't be null"); DocInitialization init = DocProviders.POJO.parse(initialContent).asOperation(); ObservablePluggableMutableDocument doc = new ObservablePluggableMutableDocument(schema, init); doc.init(sink); return doc; }
private void setupDoc() { ObservablePluggableMutableDocument doc = new ObservablePluggableMutableDocument( DocumentSchema.NO_SCHEMA_CONSTRAINTS, DocProviders.POJO.parse("").asOperation()); doc.init(SilentOperationSink.VOID); listener = mock(Listener.class); states = GadgetStateCollection.create(DefaultDocumentEventRouter.create(doc), doc.getDocumentElement(), listener); } }
private void setupDoc() { ObservablePluggableMutableDocument doc = new ObservablePluggableMutableDocument( DocumentSchema.NO_SCHEMA_CONSTRAINTS, DocProviders.POJO.parse("").asOperation()); doc.init(SilentOperationSink.VOID); listener = mock(Listener.class); states = GadgetStateCollection.create(DefaultDocumentEventRouter.create(doc), doc.getDocumentElement(), listener); } }
private void checkFindCharacter(String docXml, int start, String ch, boolean forward, int expectedLocation) { IndexedDocument<Node, Element, Text> doc = DocProviders.POJO.parse(docXml); Tx<Node> startPoint = DocHelper.normalizePoint(doc.locate(start), doc).asTextPoint(); assert startPoint != null : "Invalid start point"; Point<Node> found = TextLocator.findCharacter(doc, startPoint, ch, forward); assertNotNull(found); assertEquals(expectedLocation, doc.getLocation(found)); }
private void checkFindCharacter(String docXml, int start, String ch, boolean forward, int expectedLocation) { IndexedDocument<Node, Element, Text> doc = DocProviders.POJO.parse(docXml); Tx<Node> startPoint = DocHelper.normalizePoint(doc.locate(start), doc).asTextPoint(); assert startPoint != null : "Invalid start point"; Point<Node> found = TextLocator.findCharacter(doc, startPoint, ch, forward); assertNotNull(found); assertEquals(expectedLocation, doc.getLocation(found)); }
public void testDeletionResets() throws OperationException { IndexedDocument<Node, Element, Text> doc = DocProviders.POJO.parse("abcdefghijkl"); Nindo.Builder b; b = new Nindo.Builder(); b.startAnnotation("a", "1"); b.skip(3); b.deleteCharacters(3); b.skip(3); b.endAnnotation("a"); checkApply(doc, b.build()); }
public void testOrdering() { String initialContent = "abc"; TestDocumentContext<Node, Element, Text> test = ContextProviders.createTestPojoContext( DocProviders.POJO.parse(initialContent).asOperation(), null, null, null, DocumentSchema.NO_SCHEMA_CONSTRAINTS); RangeTracker tracker = new RangeTracker(test.localAnnotations()); tracker.trackRange(new FocusedRange(2, 1)); assertEquals(new Range(1, 2), tracker.getRange()); assertEquals(new FocusedRange(2, 1), tracker.getFocusedRange()); } }
public void testOrdering() { String initialContent = "abc"; TestDocumentContext<Node, Element, Text> test = ContextProviders.createTestPojoContext( DocProviders.POJO.parse(initialContent).asOperation(), null, null, null, DocumentSchema.NO_SCHEMA_CONSTRAINTS); RangeTracker tracker = new RangeTracker(test.localAnnotations()); tracker.trackRange(new FocusedRange(2, 1)); assertEquals(new Range(1, 2), tracker.getRange()); assertEquals(new FocusedRange(2, 1), tracker.getFocusedRange()); } }