public void testUpdateElement() throws Exception { Blip blip = newBlip(ROOT_BLIP_ID, Arrays.asList(CHILD_BLIP_ID), null); String url = "http://www.test.com/image.png"; blip.append(new Image(url, 100, 100, "Cool pix.")); assertEquals(2, blip.getElements().size()); // Update the image by appending a query param to the URL. blip.first(ElementType.IMAGE).updateElement(new MapFunction() { @Override public Map<String, String> call(BlipContent source) { Image matchedImage = (Image) source; Map<String, String> properties = new HashMap<String, String>(); properties.put("url", matchedImage.getUrl() + "?version=newversion"); return properties; } }); Image image = (Image) blip.first(ElementType.IMAGE).value(); assertEquals(url + "?version=newversion", image.getUrl()); }
element = blip.at(originalLength + 12).value().asElement(); assertTrue(element instanceof Image); element = blip.at(originalLength + 12 - "twelve ".length()).value().asElement(); assertTrue(element instanceof Image); assertEquals(3, blip.getElements().size()); assertTrue(blip.getContent().startsWith("\n hello")); element = blip.at(1).value().asElement(); assertTrue(element instanceof Image); assertEquals("Yet another cool pix.", ((Image) element).getCaption()); blip.append(" some piece of text."); assertEquals("\n some piece of text.", blip.getContent()); assertEquals(url, ((Image) blip.first(ElementType.IMAGE).value()).getUrl()); blip.first(ElementType.IMAGE).insertAfter(new BlipContentFunction() { @Override blip.append(" some piece of text."); assertEquals("\n some piece of text.", blip.getContent()); assertEquals(url, ((Image) blip.first(ElementType.IMAGE).value()).getUrl()); blip.first(ElementType.IMAGE).replace(new BlipContentFunction() { @Override assertEquals(url + "?query=foo", ((Image) blip.first(ElementType.IMAGE).value()).getUrl());
element = blip.at(originalLength + 12).value().asElement(); assertTrue(element instanceof Image); element = blip.at(originalLength + 12 - "twelve ".length()).value().asElement(); assertTrue(element instanceof Image); assertEquals(3, blip.getElements().size()); assertTrue(blip.getContent().startsWith("\n hello")); element = blip.at(1).value().asElement(); assertTrue(element instanceof Image); assertEquals("Yet another cool pix.", ((Image) element).getCaption()); blip.append(" some piece of text."); assertEquals("\n some piece of text.", blip.getContent()); assertEquals(url, ((Image) blip.first(ElementType.IMAGE).value()).getUrl()); blip.first(ElementType.IMAGE).insertAfter(new BlipContentFunction() { @Override blip.append(" some piece of text."); assertEquals("\n some piece of text.", blip.getContent()); assertEquals(url, ((Image) blip.first(ElementType.IMAGE).value()).getUrl()); blip.first(ElementType.IMAGE).replace(new BlipContentFunction() { @Override assertEquals(url + "?query=foo", ((Image) blip.first(ElementType.IMAGE).value()).getUrl());
public void testUpdateElement() throws Exception { Blip blip = newBlip(ROOT_BLIP_ID, Arrays.asList(CHILD_BLIP_ID), null); String url = "http://www.test.com/image.png"; blip.append(new Image(url, 100, 100, "Cool pix.")); assertEquals(2, blip.getElements().size()); // Update the image by appending a query param to the URL. blip.first(ElementType.IMAGE).updateElement(new MapFunction() { @Override public Map<String, String> call(BlipContent source) { Image matchedImage = (Image) source; Map<String, String> properties = new HashMap<String, String>(); properties.put("url", matchedImage.getUrl() + "?version=newversion"); return properties; } }); Image image = (Image) blip.first(ElementType.IMAGE).value(); assertEquals(url + "?version=newversion", image.getUrl()); }