use of io.atlasmap.v2.DataSource in project atlasmap by atlasmap.
the class AtlasEndpointTest method noConversionIfJsonTargetDataSource.
@Test(expected = ComparisonFailure.class)
public void noConversionIfJsonTargetDataSource() throws Exception {
final List<DataSource> dataSources = new ArrayList<>();
final DataSource dataSource = new DataSource();
dataSource.setDataSourceType(DataSourceType.TARGET);
dataSource.setUri("atlas:json:SomeType");
dataSources.add(dataSource);
perform(dataSources, null, null, true);
}
use of io.atlasmap.v2.DataSource in project atlasmap by atlasmap.
the class AtlasEndpointTest method perform.
private void perform(List<DataSource> dataSources, String sourceDocId, String targetDocId, boolean fromStream) throws Exception {
final AtlasMapping mapping = new AtlasMapping();
mapping.getDataSource().addAll(dataSources);
final AtlasContext context = spy(AtlasContext.class);
final AtlasSession session = spy(AtlasSession.class);
when(context.createSession()).thenReturn(session);
when(session.getAtlasContext()).thenReturn(context);
when(session.getMapping()).thenReturn(mapping);
when(session.getAudits()).thenReturn(new Audits());
final AtlasEndpoint endpoint = new AtlasEndpoint("atlas:test.xml", new AtlasComponent(), "test.xml");
endpoint.setAtlasContext(context);
final Exchange exchange = spy(Exchange.class);
final Message inMessage = spy(Message.class);
when(inMessage.getBody()).thenReturn(fromStream ? new ByteArrayInputStream("{test}".getBytes()) : "{test}");
when(inMessage.getBody(String.class)).thenReturn("{test}");
when(exchange.getIn()).thenReturn(inMessage);
if (sourceDocId == null) {
doAnswer(new Answer<Void>() {
@Override
public Void answer(InvocationOnMock invocation) {
LOG.debug("setDefaultSourceDocument({})", invocation.getArgument(0).toString());
assertEquals("{test}", invocation.getArgument(0).toString());
return null;
}
}).when(session).setDefaultSourceDocument(any());
} else {
doAnswer(new Answer<Void>() {
@Override
public Void answer(InvocationOnMock invocation) {
LOG.debug("setSourceDocument({}, {})", invocation.getArgument(0), invocation.getArgument(1));
assertEquals(sourceDocId, invocation.getArgument(0));
assertEquals("{test}", invocation.getArgument(1));
return null;
}
}).when(session).setSourceDocument(any(), any());
}
final Message outMessage = spy(Message.class);
doAnswer(new Answer<Void>() {
@Override
public Void answer(InvocationOnMock invocation) {
LOG.debug("setBody({})", invocation.getArgument(0).toString());
assertEquals("<target/>", invocation.getArgument(0));
return null;
}
}).when(outMessage).setBody(any());
doNothing().when(outMessage).setHeaders(any());
doNothing().when(outMessage).setAttachments(any());
if (targetDocId == null) {
when(session.getDefaultTargetDocument()).thenAnswer(new Answer<Object>() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
LOG.debug("getDefaultTargetDocument()");
return "<target/>";
}
});
} else {
when(session.getTargetDocument(any())).thenAnswer(new Answer<Object>() {
@Override
public Object answer(InvocationOnMock invocation) throws Throwable {
LOG.debug("getTargetDocument({})", invocation.getArgument(0).toString());
assertEquals(targetDocId, invocation.getArgument(0));
return "<target/>";
}
});
}
when(exchange.getOut()).thenReturn(outMessage);
endpoint.onExchange(exchange);
}
use of io.atlasmap.v2.DataSource in project atlasmap by atlasmap.
the class AtlasEndpointTest method noConversionIfXmlTargetDataSource.
@Test(expected = ComparisonFailure.class)
public void noConversionIfXmlTargetDataSource() throws Exception {
final List<DataSource> dataSources = new ArrayList<>();
final DataSource dataSource = new DataSource();
dataSource.setDataSourceType(DataSourceType.TARGET);
dataSource.setUri("atlas:xml:SomeType");
dataSources.add(dataSource);
perform(dataSources, null, null, true);
}
use of io.atlasmap.v2.DataSource in project atlasmap by atlasmap.
the class AtlasEndpointTest method doConversionIfXmlDataSource.
@Test
public void doConversionIfXmlDataSource() throws Exception {
final List<DataSource> dataSources = new ArrayList<>();
final DataSource dataSource = new DataSource();
dataSource.setDataSourceType(DataSourceType.SOURCE);
dataSource.setUri("atlas:xml:SomeType");
dataSources.add(dataSource);
perform(dataSources, null, null, true);
}
use of io.atlasmap.v2.DataSource in project atlasmap by atlasmap.
the class XmlJsonFlatMappingTest method generateDataSource.
protected DataSource generateDataSource(String uri, DataSourceType type) {
DataSource ds = new DataSource();
ds.setUri(uri);
ds.setDataSourceType(type);
return ds;
}
Aggregations