Utility di base del progetto
I test sono realizzati tramite il tool JUnit e verificano le utility di base del progetto (certificati, firma, cifratura …).
I sorgenti sono disponibili in tools/utils/src/org/openspcoop2/utils/test relativamente ai seguenti package:
org.openspcoop2.utils.test.cache; vengono verificate le varie implementazioni di cache disponibili.
org.openspcoop2.utils.test.certificate; vengono verificate le utility che consentono di caricare e analizzare keystore (PKCS12, JKS, PKCS11, JWKs), certificati X.509 (DER, PEM) e JWK e protocolli di verifica dei certificati X.509 (CRL e OCSP).
org.openspcoop2.utils.test.crypt; i test verificano la generazione casuale delle password e i meccanismi di digest.
org.openspcoop2.utils.test.csv; vengono verificate le utility che consentono di leggere file csv.
org.openspcoop2.utils.test.date; i test verificano l’utility di formattazione delle date.
org.openspcoop2.utils.test.id; vengono verificate le varie implementazioni che consentono di generare identificativi univoci (numerici, alfanumerici, uuid).
org.openspcoop2.utils.test.jdbc; vengono verificate le utility che consentono di utilizzare funzionalità JDBC specifiche.
org.openspcoop2.utils.test.json; i test verificano le utility che consentono l’esecuzione di JsonPath e la validazione dei messaggi json tramite json schema.
org.openspcoop2.utils.test.logger; verifica il livello di logger applicativo definito nell’utility.
org.openspcoop2.utils.test.openapi; vengono verificate le utility che consentono di leggere e validare interfacce OpenAPI 3 e Swagger 2.
org.openspcoop2.utils.test.pdf; vengono verificate le utility che consentono di firmare documenti PDF e accedere ai documenti “embedded” o “XFA” interni al pdf stesso.
org.openspcoop2.utils.test.random; i test verificano l’utility che consente di avere implementazioni differenti di generatori di numeri casuali (NativePRNG, SHA1PRNG, Windows-PRNG …).
org.openspcoop2.utils.test.regexp; viene verificata l’utility che consente l’applicazione di espressioni regolari.
org.openspcoop2.utils.test.resource; i test verificano le utility che consentono di lavorare sugli stream.
org.openspcoop2.utils.test.rest; vengono verificate utility utilizzabili in contesto di API rest (es. Problem Detail RFC 7807).
org.openspcoop2.utils.test.security; vengono verificate le utility che consentono di firmare/validare o di cifrare/decifrare messaggi. I test prevedono anche la validazione dei certificati X.509 utilizzati tramite CRL e OCSP.
org.openspcoop2.utils.test.semaphore; viene verificato un semaforo implementato su database.
org.openspcoop2.utils.test.serializer; i test verificano la serializzazione di java bean.
org.openspcoop2.utils.test.sonde; i test verificano le utility che consentono di avere sonde applicative.
org.openspcoop2.utils.test.sql; i test verificano l’utility che consente di definire query SQL tramite oggetti java per poi otterenre lo statement SQL corretto su implementazioni differenti (oracle, postgrsql, mysql, hsql, sqlserver, db2).
org.openspcoop2.utils.test.transport; i test verificano l’utility che consente di ottenere un CORS Filter e l’utility che consente di trattere header HTTP compatibili con RFC 2047.
org.openspcoop2.utils.test.wadl; vengono verificate le utility che consentono di leggere e validare interfacce WADL.
org.openspcoop2.utils.test.xacml; i test verificano l’utility che consente di processare policy XACML.
org.openspcoop2.utils.test.xml; i test verificano la corretta gestione delle entity references, le utility che consentono di processare XQuery, effettuare diff di file xml. Inoltre viene verificato che non sia attuabile un attacco XML eXternal Entity injection (XXE).
org.openspcoop2.utils.test.xml2json; i test verificano l’utility che consentono la trasformazione di messaggi xml in json e viceversa.
Evidenze disponibili in: