Class DatenpaketControllerIT

java.lang.Object
gdv.xport.srv.web.AbstractControllerIT
gdv.xport.srv.web.DatenpaketControllerIT

public final class DatenpaketControllerIT extends AbstractControllerIT
Integrationstests fuer den DatenpaketController.
Author:
oliver
  • Constructor Details

    • DatenpaketControllerIT

      public DatenpaketControllerIT()
  • Method Details

    • testValidateURI

      @Test public void testValidateURI() throws Exception
      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

      @Test public void testValidatePost() throws Exception
      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

      @Test public void testFormat() throws Exception
      Hier schicken wir ein leeres Dummy-Paket und erwarten als Antwort das Datenpaket wieder zurueck.
      Throws:
      Exception - im Fehlerfall
    • testDatenpaketAsHtml

      @Test public void testDatenpaketAsHtml() throws Exception
      Hier testen wir die HTML-Formatierung.
      Throws:
      Exception - im Fehlerfall
    • testDatenpaketV2

      @Test public void testDatenpaketV2() throws Exception
      Throws:
      Exception
    • testDatenpaketFromURI

      @Test public void testDatenpaketFromURI() throws Exception
      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

      @Test public void testErrorDetailAsJSON() throws Exception
      Hier testen wir, ob die Fehlermeldung im bevorzugten Format (JSON) zurueckgegeben wird.
      Throws:
      Exception - im Fehlerfall
    • testErrorDetailAsXML

      @Test public void testErrorDetailAsXML() throws Exception
      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 public void testErrorDetailAsHTML() throws Exception
      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

      @Test public void testGetDatenpaketAsText() throws Exception
      Mit der Endung ".txt" soll der Restservice ein Datenpaket in Textform zurueckliefern.
      Throws:
      Exception - im Fehlerfall
    • testGetDatenpaketAsXML

      @Test public void testGetDatenpaketAsXML() throws Exception
      Mit der Endung ".xml" soll der Restservice ein Datenpaket als XML zurueckliefern.
      Throws:
      Exception - im Fehlerfall
    • testGetDatenpaketAsCSV

      @Test public void testGetDatenpaketAsCSV() throws Exception
      Mit der Endung ".csv" soll der Restservice ein Datenpaket als CSV zurueckliefern.
      Throws:
      Exception - sollte nicht passieren
    • testContentNegotiation

      @Test public void testContentNegotiation() throws Exception
      Hier setzen wir nur den Accept-Header auf XML, um die Funktionsweise der Content-Negotiation zu testen.
      Throws:
      Exception - sollte nicht passieren
    • testFormatArgument

      @Test public void testFormatArgument() throws Exception
      Dies ist der Testfall fuer Issue 48.
      Throws:
      Exception - im Fehlerfall