Skip to content

Commit

Permalink
Merge pull request usdot-jpo-ode#12 from CDOT-CV/jackson-extra-proper…
Browse files Browse the repository at this point in the history
…ties

Jackson extra properties
  • Loading branch information
payneBrandon authored Jan 14, 2022
2 parents 969aff5 + 191ed0f commit 554c02a
Show file tree
Hide file tree
Showing 8 changed files with 133 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@
import java.awt.geom.Point2D;
import java.math.BigDecimal;

import com.fasterxml.jackson.annotation.JsonIgnore;

import us.dot.its.jpo.ode.model.OdeObject;

public class OdeGeoRegion extends OdeObject{
Expand Down Expand Up @@ -79,6 +81,7 @@ public OdeGeoRegion setSeCorner(OdePosition3D seCorner) {
return this;
}

@JsonIgnore
public OdePosition3D getCenterPosition() {
Point2D nw = new Point2D.Double(
nwCorner.getLongitude().doubleValue(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@ public class DataFrames extends OdeObject {

private static final long serialVersionUID = 1L;

@JsonProperty("TravelerDataFrame")
private TravelerDataFrame[] TravelerDataFrame;

@JsonProperty("TravelerDataFrame")
public TravelerDataFrame[] getTravelerDataFrame() {
return TravelerDataFrame;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,9 @@

public class ITIS_CodesAndText extends Asn1Object {
private static final long serialVersionUID = 1L;
@JsonProperty("SEQUENCE")
private Items[] SEQUENCE;

@JsonProperty("SEQUENCE")
public Items[] getSEQUENCE() {
return SEQUENCE;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,21 @@
******************************************************************************/
package us.dot.its.jpo.ode.plugin.j2735.timstorage;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

import us.dot.its.jpo.ode.plugin.asn1.Asn1Object;

@JsonIgnoreProperties(ignoreUnknown = true)
@JsonPropertyOrder({ "lat", "llong", "elevation" })
public class Position extends Asn1Object {
private static final long serialVersionUID = 1L;

@JsonProperty("latitude")
@JsonProperty("lat")
private String lat;

@JsonProperty("longitude")
@JsonProperty("long")
private String llong; // TODO needs to be "long"

@JsonProperty("elevation")
private String elevation;

Expand All @@ -41,11 +41,11 @@ public void setElevation(String elevation) {
this.elevation = elevation;
}

public String getlon() {
public String getLlong() {
return llong;
}

public void setlon(String lon) {
public void setLlong(String lon) {
this.llong = lon;
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,10 +21,9 @@

public class Regions extends Asn1Object {
private static final long serialVersionUID = 1L;

@JsonProperty("GeographicalPath")
private GeographicalPath[] GeographicalPath;

@JsonProperty("GeographicalPath")
public GeographicalPath[] getGeographicalPath() {
return GeographicalPath;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,13 +15,14 @@
******************************************************************************/
package us.dot.its.jpo.ode.plugin.j2735.timstorage;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

import us.dot.its.jpo.ode.plugin.asn1.Asn1Object;

@JsonPropertyOrder({ "sspTimRights", "frameType", "startYear", "startTime", "duratonTime", "priority",
"sspLocationRights", "regions", "sspMsgRights1", "sspMsgRights2", "content", "url" })
@JsonPropertyOrder({ "sspTimRights", "frameType", "msgId", "startYear", "startTime", "duratonTime", "priority",
"sspLocationRights", "regions", "sspMsgRights1", "sspMsgRights2", "tcontent", "url" })
public class TravelerDataFrame extends Asn1Object {
private static final long serialVersionUID = 1L;

Expand Down Expand Up @@ -93,6 +94,7 @@ public void setDuratonTime(String duratonTime) {
this.duratonTime = duratonTime;
}

@JsonIgnore
public Content getContent() {
return tcontent;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

import static org.junit.Assert.assertEquals;

import org.apache.commons.io.IOUtils;
import org.junit.Test;
import org.springframework.http.ResponseEntity;

Expand Down Expand Up @@ -47,8 +48,6 @@ public class TimDepositControllerTest {

@Capturing
MessageProducer<?, ?> capturingMessageProducer;
@Capturing
TimTransmogrifier capturingTimTransmogrifier;

@Test
public void nullRequestShouldReturnEmptyError() {
Expand Down Expand Up @@ -118,32 +117,44 @@ public void failedXmlConversionShouldReturnConversionError(@Capturing TimTransmo
{
TimTransmogrifier.convertToXml((DdsAdvisorySituationData) any, (ObjectNode) any, (OdeMsgMetadata) any,
(SerialId) any);
result = new XmlUtilsException("testException123", null);
result = new XmlUtilsException("testException123", null);
}
};

ResponseEntity<String> actualResponse = testTimDepositController.postTim(
"{\"request\":{\"rsus\":[],\"snmp\":{}},\"tim\":{\"msgCnt\":\"13\",\"timeStamp\":\"2017-03-13T01:07:11-05:00\"}}");
assertEquals("{\"error\":\"Error sending data to ASN.1 Encoder module: testException123\"}", actualResponse.getBody());
assertEquals("{\"error\":\"Error sending data to ASN.1 Encoder module: testException123\"}",
actualResponse.getBody());

}

@Test
public void testSuccessfulMessageReturnsSuccessMessagePost(@Capturing XmlUtils capturingXmlUtils) {
public void testSuccessfulMessageReturnsSuccessMessagePost(@Capturing TimTransmogrifier capturingTimTransmogrifier, @Capturing XmlUtils capturingXmlUtils) {
ResponseEntity<String> actualResponse = testTimDepositController.postTim(
"{\"request\":{\"rsus\":[],\"snmp\":{}},\"tim\":{\"msgCnt\":\"13\",\"timeStamp\":\"2017-03-13T01:07:11-05:00\"}}");
assertEquals("{\"success\":\"true\"}", actualResponse.getBody());
}

@Test
public void testSuccessfulMessageReturnsSuccessMessagePostWithOde(@Capturing XmlUtils capturingXmlUtils) {
public void testSuccessfullSdwRequestMessageReturnsSuccessMessagePost()
throws Exception {
String file = "/sdwRequest.json";
String json = IOUtils.toString(
TimDepositControllerTest.class.getResourceAsStream(file),
"UTF-8");
ResponseEntity<String> actualResponse = testTimDepositController.postTim(json);
assertEquals("{\"success\":\"true\"}", actualResponse.getBody());
}

@Test
public void testSuccessfulMessageReturnsSuccessMessagePostWithOde(@Capturing TimTransmogrifier capturingTimTransmogrifier, @Capturing XmlUtils capturingXmlUtils) {
ResponseEntity<String> actualResponse = testTimDepositController.postTim(
"{\"request\":{\"ode\":{},\"rsus\":[],\"snmp\":{}},\"tim\":{\"msgCnt\":\"13\",\"timeStamp\":\"2017-03-13T01:07:11-05:00\"}}");
assertEquals("{\"success\":\"true\"}", actualResponse.getBody());
}

@Test
public void testSuccessfulMessageReturnsSuccessMessagePut(@Capturing XmlUtils capturingXmlUtils) {
public void testSuccessfulMessageReturnsSuccessMessagePut(@Capturing TimTransmogrifier capturingTimTransmogrifier, @Capturing XmlUtils capturingXmlUtils) {
ResponseEntity<String> actualResponse = testTimDepositController.putTim(
"{\"request\":{\"rsus\":[],\"snmp\":{}},\"tim\":{\"msgCnt\":\"13\",\"timeStamp\":\"2017-03-13T01:07:11-05:00\"}}");
assertEquals("{\"success\":\"true\"}", actualResponse.getBody());
Expand Down
95 changes: 95 additions & 0 deletions jpo-ode-svcs/src/test/resources/sdwRequest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
{
"request": {
"sdw": {
"ttl": "oneday",
"recordId": "9044E029",
"serviceRegion": {
"nwCorner": {
"latitude": 41.715253,
"longitude": -106.229851
},
"seCorner": {
"latitude": 40.227193,
"longitude": -104.620706
}
}
}
},
"tim": {
"msgCnt": "1",
"timeStamp": "2020-04-30T14:24:11.581Z",
"packetID": "67AEF692F8BB63067D",
"urlB": "null",
"dataframes": [
{
"startDateTime": "2020-04-30T14:23:59.497Z",
"durationTime": 1440,
"sspTimRights": "1",
"frameType": "advisory",
"msgId": {
"roadSignID": {
"mutcdCode": "warning",
"viewAngle": "1111111111111111",
"position": {
"latitude": 40.60476,
"longitude": -105.00139
}
}
},
"priority": "5",
"sspLocationRights": "1",
"regions": [
{
"name": "I_I 25_SAT-1CEE1793",
"anchorPosition": {
"latitude": 40.60476,
"longitude": -105.00139
},
"laneWidth": "327",
"directionality": "3",
"closedPath": "false",
"description": "path",
"path": {
"nodes": [
{
"nodeLong": "-105.00128",
"nodeLat": "40.61901",
"delta": "node-LatLon"
},
{
"nodeLong": "-105.00097",
"nodeLat": "40.63349",
"delta": "node-LatLon"
},
{
"nodeLong": "-105.00086",
"nodeLat": "40.64806",
"delta": "node-LatLon"
},
{
"nodeLong": "-105.00092",
"nodeLat": "40.66257",
"delta": "node-LatLon"
},
{
"nodeLong": "-105.0008",
"nodeLat": "40.67695",
"delta": "node-LatLon"
}
],
"type": "xy"
},
"direction": "1000000000000001"
}
],
"sspMsgTypes": "1",
"sspMsgContent": "1",
"content": "advisory",
"items": [
"5127"
],
"url": "null"
}
]
}
}

0 comments on commit 554c02a

Please sign in to comment.