use of org.eclipse.vorto.service.mapping.ditto.DittoData in project vorto by eclipse.
the class JsonMappingTest method testMapUsingBase64Converter.
@Test
public void testMapUsingBase64Converter() throws Exception {
IDataMapper<DittoData> mapper = IDataMapper.newBuilder().withSpecification(new SpecWithBase64Converter()).buildDittoMapper();
String json = "{\"data\" : \"" + Base64.encodeBase64String("20".getBytes()) + "\"}";
DittoData mappedDittoOutput = mapper.map(DataInput.newInstance().fromJson(json), MappingContext.empty());
assertEquals("20", new String((byte[]) mappedDittoOutput.getFeatures().get("button").getStatusProperties().get("digital_input_state")));
}
use of org.eclipse.vorto.service.mapping.ditto.DittoData in project vorto by eclipse.
the class JsonMappingTest method testMapWithSimpleCondition.
@Test
public void testMapWithSimpleCondition() throws Exception {
IDataMapper<DittoData> mapper = IDataMapper.newBuilder().withSpecification(new SpecWithCondition()).buildDittoMapper();
String json = "{\"count\" : 2 }";
DittoData mappedDittoOutput = mapper.map(DataInput.newInstance().fromJson(json), MappingContext.empty());
assertNull(mappedDittoOutput.getFeatures().get("button").getStatusProperties().get("sensor_value"));
assertEquals(2, mappedDittoOutput.getFeatures().get("button").getStatusProperties().get("sensor_value2"));
json = "{\"count\" : 0 }";
mappedDittoOutput = mapper.map(DataInput.newInstance().fromJson(json), MappingContext.empty());
assertEquals(0, mappedDittoOutput.getFeatures().get("button").getStatusProperties().get("sensor_value"));
assertNull(mappedDittoOutput.getFeatures().get("button").getStatusProperties().get("sensor_value2"));
}
use of org.eclipse.vorto.service.mapping.ditto.DittoData in project vorto by eclipse.
the class JsonMappingTest method testMapSingleFunctionblockOfInfomodel.
@Test
public void testMapSingleFunctionblockOfInfomodel() {
IDataMapper<DittoData> mapper = IDataMapper.newBuilder().withSpecification(new SpecWithCustomFunction()).buildDittoMapper();
String json = "{\"clickType\" : \"DOUBLE\"}";
DittoData mappedDittoOutput = mapper.map(DataInput.newInstance().fromJson(json), MappingContext.empty());
Feature buttonFeature = mappedDittoOutput.getFeatures().get("button");
assertEquals(true, (Boolean) buttonFeature.getStatusProperties().get("digital_input_state"));
assertEquals(2, buttonFeature.getStatusProperties().get("digital_input_count"));
Feature voltageFeature = mappedDittoOutput.getFeatures().get("voltage");
assertNull(voltageFeature);
System.out.println(mappedDittoOutput.toJson());
}
use of org.eclipse.vorto.service.mapping.ditto.DittoData in project vorto by eclipse.
the class JsonMappingTest method testDittoMappingTimestamp.
@Test
public void testDittoMappingTimestamp() throws Exception {
IDataMapper<DittoData> mapper = IDataMapper.newBuilder().withSpecification(new SpecWithTimestamp()).buildDittoMapper();
final Date timestamp = new Date();
String json = "{\"time\" : " + timestamp.getTime() + "}";
DittoData mappedDittoOutput = mapper.map(DataInput.newInstance().fromJson(json), MappingContext.empty());
Feature buttonFeature = mappedDittoOutput.getFeatures().get("button");
assertEquals(JSON_DATE_FORMAT.format(timestamp), buttonFeature.getStatusProperties().get("sensor_value"));
System.out.println(mappedDittoOutput.toJson());
}
use of org.eclipse.vorto.service.mapping.ditto.DittoData in project vorto by eclipse.
the class UnideMappingTest method testMapUnideMessageToDitto.
@Test
public void testMapUnideMessageToDitto() throws Exception {
IMappingSpecification mappingSpecification = MappingSpecificationBuilder.create().infomodelId("org.eclipse.unide.devices.MobilePhone:1.0.0").targetPlatformKey("org_eclipse_unide_devices_MobilePhone_1_0_0").build();
IDataMapper<DittoData> mapper = IDataMapper.newBuilder().withSpecification(mappingSpecification).buildDittoMapper();
final String unideMessage = IOUtils.toString(UnideMappingTest.class.getClassLoader().getResourceAsStream("unide.json"));
DittoData mappedDittoOutput = mapper.map(DataInput.newInstance().fromJson(unideMessage), MappingContext.empty());
Feature directionFeature = mappedDittoOutput.getFeatures().get("direction");
assertEquals(45.4231, directionFeature.getStatusProperties().get("compass_direction"));
System.out.println(mappedDittoOutput.toJson());
}
Aggregations