@Test public void readEmployeesFeedWithInlineCountValid() throws Exception { // prepare String content = readFile("feed_employees_full.xml"); assertNotNull(content); EdmEntitySet entitySet = MockFacade.getMockEdm().getDefaultEntityContainer().getEntitySet("Employees"); InputStream reqContent = createContentAsStream(content); // execute XmlEntityConsumer xec = new XmlEntityConsumer(); EntityProviderReadProperties consumerProperties = EntityProviderReadProperties.init().mergeSemantic(false).build(); ODataFeed feed = xec.readFeed(entitySet, reqContent, consumerProperties); assertNotNull(feed); FeedMetadata feedMetadata = feed.getFeedMetadata(); assertNotNull(feedMetadata); int inlineCount = feedMetadata.getInlineCount(); // Null means no inlineCount found assertNotNull(inlineCount); assertEquals(6, inlineCount); }
@Test(expected = EntityProviderException.class) public void readEmployeesFeedWithInlineCountLetters() throws Exception { // prepare String content = readFile("feed_employees_full.xml") .replace("<m:count>6</m:count>", "<m:count>AAA</m:count>"); assertNotNull(content); EdmEntitySet entitySet = MockFacade.getMockEdm().getDefaultEntityContainer().getEntitySet("Employees"); InputStream reqContent = createContentAsStream(content); // execute XmlEntityConsumer xec = new XmlEntityConsumer(); EntityProviderReadProperties consumerProperties = EntityProviderReadProperties.init().mergeSemantic(false).build(); try { xec.readFeed(entitySet, reqContent, consumerProperties); } catch (EntityProviderException e) { assertEquals(EntityProviderException.INLINECOUNT_INVALID, e.getMessageReference()); throw e; } Assert.fail("Exception expected"); }
@Test public void readDeltaFeed() throws Exception { // prepare String content = readFile("feed_with_deleted_entries.xml"); assertNotNull(content); EdmEntitySet entitySet = MockFacade.getMockEdm().getDefaultEntityContainer().getEntitySet("Rooms"); InputStream reqContent = createContentAsStream(content); XmlEntityConsumer xec = new XmlEntityConsumer(); EntityProviderReadProperties consumerProperties = EntityProviderReadProperties.init().build(); ODataDeltaFeed deltaFeed = xec.readFeed(entitySet, reqContent, consumerProperties); assertNotNull(deltaFeed); assertNotNull(deltaFeed.getDeletedEntries()); assertNotNull(deltaFeed.getEntries()); assertEquals(1, deltaFeed.getEntries().size()); assertEquals(1, deltaFeed.getDeletedEntries().size()); }