package org.odata4j.test.integration.issues; import java.io.InputStream; import java.io.InputStreamReader; import junit.framework.Assert; import org.junit.Ignore; import org.junit.Test; import org.odata4j.consumer.ODataConsumer; import org.odata4j.core.OEntity; import org.odata4j.core.OProperty; import org.odata4j.format.xml.AtomFeedFormatParser; import org.odata4j.stax2.StartElement2; import org.odata4j.stax2.XMLEventReader2; import org.odata4j.stax2.domimpl.DomXMLFactoryProvider2; import org.odata4j.test.integration.AbstractRuntimeTest; @Ignore // we need to look into this issue again, possible loss of time zone and // precision information when stored to database public class Issue15Test extends AbstractRuntimeTest { public Issue15Test(RuntimeFacadeType type) { super(type); } @Test public void issue15() { InputStream xml = getClass().getResourceAsStream( "/META-INF/issue15.xml"); XMLEventReader2 reader = DomXMLFactoryProvider2.getInstance() .newXMLInputFactory2() .createXMLEventReader(new InputStreamReader(xml)); reader.nextEvent(); StartElement2 propertiesElement = reader.nextEvent().asStartElement(); for (OProperty<?> prop : AtomFeedFormatParser.parseProperties(reader, propertiesElement, null, null)) { if (prop.getName().equals("update_date")) { Assert.assertEquals("2010-11-21T12:21:51.000", prop.getValue() .toString()); return; } } Assert.fail("Expected a property update_date"); } public void repro() throws Exception { ODataConsumer.dump.responseBody(true); ODataConsumer c = this.rtFacade .createODataConsumer("http://localhost:6794/WcfDataService2.svc/", null); // @SuppressWarnings("unused") // OEntity newEntity = c.createEntity("entity1").properties( // OProperties.string("name", "name"+System.currentTimeMillis()) // ).execute(); // throws for (OEntity e : c.getEntities("entity1").execute()) System.out.println(e); } }