Package gdv.xport.srv.web
Class DatenpaketControllerIT
java.lang.Object
gdv.xport.srv.web.AbstractControllerIT
gdv.xport.srv.web.DatenpaketControllerIT
Integrationstests fuer den
DatenpaketController
.- Author:
- oliver
-
Field Summary
Fields inherited from class gdv.xport.srv.web.AbstractControllerIT
mockMvc
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Hier setzen wir nur den Accept-Header auf XML, um die Funktionsweise der Content-Negotiation zu testen.void
Hier testen wir die HTML-Formatierung.void
Hier schicken wir eine URI und erwarten als Antwort CSV-Datei.void
void
Test, ob ErorDetail auch als HTML geliefert wird.void
Hier testen wir, ob die Fehlermeldung im bevorzugten Format (JSON) zurueckgegeben wird.void
Fuer die XML-Serialisierung muessen die entsprechenden XML-Bibliotheken eingebunden sein.void
Hier schicken wir ein leeres Dummy-Paket und erwarten als Antwort das Datenpaket wieder zurueck.void
Dies ist der Testfall fuer Issue 48.void
Mit der Endung ".csv" soll der Restservice ein Datenpaket als CSV zurueckliefern.void
Mit der Endung ".txt" soll der Restservice ein Datenpaket in Textform zurueckliefern.void
Mit der Endung ".xml" soll der Restservice ein Datenpaket als XML zurueckliefern.void
Hier testen wir den Exceptionhandler direkt.void
Hier testen wir ein leeres Dummy-Datenpaket, bei dem die VU-Nummer nicht gesetzt ist.void
Hier testen wir, ob wir mit dem Musterdatensatz eine leere Liste von Violations zurueckbekommen.Methods inherited from class gdv.xport.srv.web.AbstractControllerIT
getResponseStringFor, postResponseStringFor
-
Constructor Details
-
DatenpaketControllerIT
public DatenpaketControllerIT()
-
-
Method Details
-
testValidateURI
Hier testen wir, ob wir mit dem Musterdatensatz eine leere Liste von Violations zurueckbekommen. Aus folgenden Gruenden kann dieser Test fehlschlagen:- keine Internetverbindung,
- die verwendete URI ist nicht (mehr) erreichbar,
- Programmierfehler.
- Throws:
Exception
- im Fehlerfall
-
testValidatePost
Hier testen wir ein leeres Dummy-Datenpaket, bei dem die VU-Nummer nicht gesetzt ist. Dies sollte zu einem Validierungs-Fehler fuehren.- Throws:
Exception
- im Fehlerfall
-
testFormat
Hier schicken wir ein leeres Dummy-Paket und erwarten als Antwort das Datenpaket wieder zurueck.- Throws:
Exception
- im Fehlerfall
-
testDatenpaketAsHtml
Hier testen wir die HTML-Formatierung.- Throws:
Exception
- im Fehlerfall
-
testDatenpaketV2
- Throws:
Exception
-
testDatenpaketFromURI
Hier schicken wir eine URI und erwarten als Antwort CSV-Datei. Aus folgenden Gruenden kann dieser Tes fehlschlagen:- keine Internetverbindung,
- die verwendete URI ist nicht (mehr) erreichbar,
- Programmierfehler.
- Throws:
Exception
- im Fehlerfall
-
testErrorDetailAsJSON
Hier testen wir, ob die Fehlermeldung im bevorzugten Format (JSON) zurueckgegeben wird.- Throws:
Exception
- im Fehlerfall
-
testErrorDetailAsXML
Fuer die XML-Serialisierung muessen die entsprechenden XML-Bibliotheken eingebunden sein. Falls dies nicht der Fall ist, kommt eine "ClassNotFoundException: com.fasterxml.jackson.dataformat.xml.XmlMapper" oder eine HttpMediaTypeNotAcceptableException.- Throws:
Exception
- im Fehlerfall
-
testErrorDetailAsHTML
Test, ob ErorDetail auch als HTML geliefert wird.- Throws:
Exception
- im Fehlerfall
-
testHandleExceptions
@Test public void testHandleExceptions()Hier testen wir den Exceptionhandler direkt. Im Gegensatz zur vorigen Version dieser Testmethode testen wir nicht mehr das zurueckgegebene Format (JSON), sondern das zurueckgegebenen Objekt. Trotzdem setzen wir hier im accept-Header das bevorzugte Format, falls wir den Test nochmal umschreiben wollen. Da hier Wildcards angegeben werden, sollte dabei JSON zurueckgegeben werden. -
testGetDatenpaketAsText
Mit der Endung ".txt" soll der Restservice ein Datenpaket in Textform zurueckliefern.- Throws:
Exception
- im Fehlerfall
-
testGetDatenpaketAsXML
Mit der Endung ".xml" soll der Restservice ein Datenpaket als XML zurueckliefern.- Throws:
Exception
- im Fehlerfall
-
testGetDatenpaketAsCSV
Mit der Endung ".csv" soll der Restservice ein Datenpaket als CSV zurueckliefern.- Throws:
Exception
- sollte nicht passieren
-
testContentNegotiation
Hier setzen wir nur den Accept-Header auf XML, um die Funktionsweise der Content-Negotiation zu testen.- Throws:
Exception
- sollte nicht passieren
-
testFormatArgument
Dies ist der Testfall fuer Issue 48.- Throws:
Exception
- im Fehlerfall
-