aboutsummaryrefslogtreecommitdiff
path: root/src/test/resources
AgeCommit message (Collapse)AuthorFilesLines
2019-12-09Add "Forward-Response-to-Service" Test CasesChristof Rabensteiner1-3/+3
- Refactor: Move genTimestamp from ITMzsServiceTest to TestUtils (because needed in multiple test cases). - application.yaml: Complete app-client config in config profile.
2019-10-04Update readme.mdChristof Rabensteiner1-0/+1
- Put SSL client auth guide into separate file. - Add download link to apps.egiz.gv.at/releases. - Put note that cluster mode is not ready.
2019-10-04Fix Property Key "filetype" (Was "type") in application.yamlChristof Rabensteiner1-1/+1
2019-10-03Update zusemsg and zusetnvz to Newest Version & Accommodate ChangesChristof Rabensteiner2-2/+0
Upgrade zusemsg 2.2.0 to 2.2.007: - msg:RelayedViaERV - Change from boolean to complex type (ervcode). - Move from msg:DeliveryRequestStatusType/Success into msg:DeliveryRequestStatusType, which affects Success, Error, and PartialSuccess. - Was removed from DeliveryNotificationType. - Change msg:DeliveryNotification/Answer from list to singleton. - Change msg:DeliveryRequestStatusType/PartialSuccess is to type AnswerType. - msg:DeliveryRequestStatusType and msg:DeliveryNotificationType receive the attribute ID (for signature referencing). - Add new optional element msg:AustrianAdressesOnly (IndicatorType) to DeliveryRequestType/Receiver/(choice sequence). - Add new optional element ClearingProfilID to DeliveryRequestType/Sender. - Add new element ERVConfirmedDelivery, which subsitutes msg:Answer and extends msg:AbstractOperation - Has element ErvCode (also new token256 type). - Has element ERVDeliveryTimestamp. - Add new optional element TargetIdentification of type p:IdentificationType to msg:DeliveryNotification/User/ as optional element. - Add new enumeration "System" to msg:DeliveryNotification/User/Role. - Rename type AustrianLanguageType from "AustrianEthicMinorityLanguageType" to "AustrianLanguageType" and add "DE" as value. - msg:Tags were unbounded, now they are limited to 20. - VersionNumberType: Patch version can have three digits. Upgrade zusetnvz 2.2.0 to 2.2.006: - Add StandardMimeTypeList to tnvz:QueryPersonResponse and tnvz:QueryAdressabilityResponse. - Add AllStandardMimeTypes (indicator) to tnvz:PersonResult/Success. - Add optional msg:MetadataList to tnvz:PersonQueryType/Metadata tnvz:AddressabilityQueryType/Metadata. - Move tnvz:AustrianAdressesOnly to msg namespace. Carry zusemsg changes into app2mzs interface: - Switch namespace of AustrianAdressesOnly from tnvz to msg. - Add new optional element ClearingProfilID to mzs:DeliveryRequestType/Sender; Reason: Element was added to zusemsg 2.2.007. - Add new choice in mzs:DeliveryNotification to forward new answer type msg:ERVConfirmedDelivery to the app. - Move msg:RelayedViaERV from SuccessType into MessageType (now it's available to all types that derive from MessageType). Accommodate zusemsg/tnvz changes in code base: - TNVZHelper: Consider StandardMimeTypeList when assessing if DeliveryRequest/mimetypes overlap with TNVZ's Accepted Mimetypes. - Msg2MzsConverter: - Put getRelayedViaERV() into all DeliveryStatusRequest replies. - Honor that Notification/Answer is Singleton instead of List. - Handle case were DeliveryNotification/Answer is of type ERVConfirmedDeliveryType. - Remove RelayedViaERV from DeliveryNotification as this element is not available anymore. - NotificationResponse: Honor that Notification/Answer is Singleton instead of List. Fix all testcases and sample soap messages to comply with schema changes.
2019-10-02For {TNVZ, MSG}: Switch to Soap 1.2Christof Rabensteiner4-4/+4
- But: Leave MZS Interface at Soap 1.1 - Add ClientFactory.createSOAP11 to ensure that we can talk back to the app.
2019-09-03Rename MzsClient to AppClientChristof Rabensteiner2-3/+3
...since it's a client that communicates with the app.
2019-08-30Fix Tnvz TypoChristof Rabensteiner2-4/+4
- sed 's/tvnz/tnvz/'
2019-08-30Logging: Add and Document Log Levels of ComponentsChristof Rabensteiner1-1/+11
2019-08-30Logback: Prevent Long logger Names from being TruncatedChristof Rabensteiner1-1/+1
2019-08-30Move lockback configChristof Rabensteiner1-0/+0
- Otherwise app wont detect it
2019-08-30Organize application.yamlChristof Rabensteiner1-17/+17
- Add better descriptions. - Reorder entries.
2019-08-29Remove TODOChristof Rabensteiner1-2/+0
Reason: Restructure not neccessary.
2019-08-26Log Incoming And Outgoing Messages with CXF Logging InterceptorsChristof Rabensteiner1-3/+13
- Add loggin dependency. - Enable Message Logging for Services and Clients. - Add message logging config + examples to application.yaml
2019-08-23Documentation: Fix how to refer to MOA ZS and MOA SP-SSChristof Rabensteiner1-11/+14
2019-08-23Moved Config Files From main/resources/ To test/resources/configChristof Rabensteiner32-0/+719
- Reason: Integration tests need configuration, but config files should not be packaged into the final artifact. - Update paths.
2019-08-23Remove SSL Depending Testcases from Integration Test SuiteChristof Rabensteiner1-0/+0
- Reason: Now we can run integration tests without the need to set up SSL reverse proxy with client certificates.
2019-08-19Add Two "VerifySignature" TestcasesChristof Rabensteiner2-0/+188
2019-07-31Add Testcase For "Verify Signed Notification"Christof Rabensteiner1-0/+91
2019-07-22Test Flow of DeliveryRequest from "End-To-End" & Fix BugsChristof Rabensteiner3-0/+251
Schema Changes: - Remove mzs:DeliveryRequest/TnvzMetaData because all metadata fields can be collected from DeliveryRequest and redundancy is not needed. Fixes and Refactoring in preprocess: - MzsDeliveryRequestValidator: Instead of returning false, throw an exception when a condition is not met, and explain which condition is not met / why it is not met in the exception's message. - Integrate interface change in ConfigProfileGenerator and DeliveryRequestAugmenter. - Rewrite and simplify DeliveryRequestAugmenter's augmentation. - ConfigUtil Fixes: Ensure that we do not override the wrong parameters while merging. This error appeared in tnvz / msg client, connection / receive timeout, key / trust store, and lax hostname verification / trust all. Fix Bugs in Interceptor / SoapUtils: - Problem: DOM access and information extraction was implemented somewhat sloppy. - SolutioN: Change DOM access interface to access DOM more efficiently. Add boundary checks and handle edge cases while extracting information from SOAP Messages. - Test those changes properly. Testing: - Implement Delivery Request Flow in ITEndToEndTest. - Start application on random port instead of fixed port when running integration tests. - Add assertions to tests in ITMzsServiceTest suite. Others Bug Fixes: - ServicesConfig: Ensure that mzs service and msg service run on different endpoint addresses (/msg and /mzs). - DeliveryRequestBackend: Throw exception when binary message is missing. Don't wrap the exception. - SaveResponseToFileSink: Wrap Response in JAXB Element (otherwise, marshaller does not recognize it)
2019-07-12Renamed and Simplified SignatureVerifierChristof Rabensteiner2-0/+0
2019-06-28Separate Test Suite into Unit- And Integration TestsChristof Rabensteiner9-0/+0
Per default, integration tests are excluded from build. They can be included with the `-P integration-test` argument. - Pom: Add maven profile for integration tests. - Rename integration tests (add `IT` prefix). - Move Resources into IT* folders. - Add MsgClientTest to test suite and add assertions to each test case.
2019-06-19Add Testcase: Reject Invalid Delivery Response SignatureChristof Rabensteiner1-0/+30
2019-06-19Finalize moa-sig-lib's Integration and Add TestcaseChristof Rabensteiner1-0/+30
- Interpret `ISignatureVerificationService` response properly (by following security layer spec [1] and moaspss handbook [2]). - Add config flag `moa.spss.is-manifest-check-active` - Change SignatureVerifier Interface: Remove @return boolean, just throw an exception when a validation error occurs. Reason: In case the signature cannot be validated, the application always needs the reason for the validation error, which requires the verifier to throw an exception. In turn, the only valid return value for `verify()` becomes `true`, which can be omitted at that point. - Add testcase for verifying a valid enveloped xml signature - Remove Certificates that are not needed. [1] https://www.buergerkarte.at/konzept/securitylayer/spezifikation/20140114/core/core.html [2] https://apps.egiz.gv.at/handbooks/moa-spss/handbook/handbook/usage/usage.html
2019-05-20Add Testcase for MsgClientChristof Rabensteiner1-0/+56
2019-05-15Move Services / Clients To Dedicated PackagesChristof Rabensteiner6-0/+0
2019-05-09Reactivate and Fix Unit TestsChristof Rabensteiner2-67/+78
- Relax Validation for now by only validating incoming requests.
2019-05-09Fix: Enable ApacheCXF's Automated Schema ValidationChristof Rabensteiner1-0/+59
Problem: Apache CXF does not validate incoming mzs:DeliveryRequests automatically. Per default, validation is off (performs better). However, (1) we need to validate incoming requests, and (2) automated CXF validation requires less maintenance and is expected to be more stable than manual validation. Solution: - Add @SchemaValidation annotation to @Service. - Endpoint Configuration: set WsdlLocation and ServiceName (needed to prevent parser errors; see [1]). Without those, CXF validates against generated classes and not against the WSDL spec, and generated classes do not contain format restrictions. Add a testcase with an invalid delivery request ("rejectBothProfile- AndCorporateBody") to ensure that the validator works. [1] https://stackoverflow.com/questions/2231779/cxf-and-validation-schema-restrictions-ignored
2019-05-08Add "Reject Missing Sender" Test CaseChristof Rabensteiner1-0/+46
2019-05-08Update validDeliveryRequest.soap (Now More Valid!)Christof Rabensteiner1-38/+42
2019-05-08Remove Obsolete Validation TestcaseChristof Rabensteiner1-42/+0
- Reason: Converter does not perform validation
2019-05-08Implement Pipeline Flow and mzs2msg ConversionChristof Rabensteiner2-0/+91
- Implement and test conversion from mzs:DeliveryRequest to msg:DeliveryRequest with the "convert-pojos-by-hand"-strategy. Reason: The chosen strategy benefits from JAXB's strong typing, which is useful in this scenario: Differences between msg and mzs are nuanced and easy to overlook. The chosen strategy is, unfortunately, verbose and could become expensive to maintain. - Update SameThreadDeliveryPipeline: Integrate tnvz query, conversion, and msg query. - Add MsgClient stub. tnvz: - Change TnvzClient stub interface. - Implement mimetype mismatch check from tnvz Response. - Put p:Identification from tnvz response into msg:DeliveryRequest. MZS Schema changes: - Replace DeliveryRequest/Sender/Person with CorporateBody (because thats the only sender that is allowed by zusemsg) and add a SenderProfile choice. - Add ID Attribute to DeliveryRequest/Sender because msg/DeliveryRequest/Sender/AbstractSenderPersonType also has an id attribute. - Remove PersonDataType because it's dead code.
2019-04-30Add Optional mzs:DeliveryRequest/Config & Validate / Augment ItChristof Rabensteiner4-2/+97
Add Optional "Config" to MZS Schema: - Add mzs:DeliveryRequest/Config Element with a "PerformQueryPersonRequest" node - The config element contains parameters that are interpreted by moa-zs and not forwarded to the ZD - The boolean PerformQueryPersonRequest tells moa-zs if moa-zs should perform a QueryPersonRequest towards the TNVZ. - If config is missing, moa-zs augments the delivery request with parameters from the app's configuartion or the default configuartion Other Changes: - Validate and augment incoming requests with the DeliveryPreprocessor. - Add stub for TlnvzClient. - Remove some leftover ObjectFactory imports (because of the builder they are not needed anymore) Fixes - Fixed incorrect API usage of Messageformat.format: format string needs an index. pom.xml - Add Hamcrest Dependency (for writing more expressive tests) - Add copy constructor to JAXB Builder Testing - Test validation of incoming request - Refactor testcases to improve readability
2019-04-10Add Testcase For JAXB MarshallingChristof Rabensteiner1-1/+1
2019-04-09Propagate changes of zusemsg2.0.c into mzsChristof Rabensteiner1-2/+2
- Add Target to CorporateBodyType - Remove Authority - make DateOfBirth optional
2019-04-08Update Codebase to Match MZS Schema ChangesChristof Rabensteiner2-52/+53
- Important Fix: I forgot to annotate App2MzsService with @Service and autowire the App2MzsService object when creating the endpoint bean. For this reason, Spring did not autowire the dependencies in App2MzsService and I ended up with NullPointerExceptions in the testsuite. - Updated some more namespaces - Add objectFactory bean. objectfactory is autogenerated via the cxf-code-generation plugin, so i cannot annotate it with @Component or @Service. Alternative: create the @Bean by myself - Update the validDeliveryRequest SOAP Message to match the mzs 2.0.0 scheme.
2019-03-19Add Unit Tests "Reject Formally Incorrect Delivery Request"Christof Rabensteiner2-0/+52
2019-03-19Add Unit Test Stub for App2MzsServiceChristof Rabensteiner1-0/+52
- Unit test makes a http request to the service - Fix NPE by adding endpoint.setAdress("/") - Choose better name for App2MzsService