diff --git a/EHS/Test/mCSD-Organization.http b/EHS/Test/mCSD-Organization.http new file mode 100644 index 0000000000000000000000000000000000000000..6bff8bd2aae62ea88024478f92f314881089c1d3 --- /dev/null +++ b/EHS/Test/mCSD-Organization.http @@ -0,0 +1,37 @@ +curl -X POST -H "Content-Type: application/fhir+json" +--data "{ + "apiVersion": "0.3.0_SNAPSHOT", + "validationServiceName": "HTTP Validator", + "validationProfileId": "CH_ITI-90_PractitionerRole_GET_mCSD_Query", + "validationItems": [ + { + "itemId": "first", + "content": "R0VUIENhcmVTZXJ2aWNlc1NlbGVjdGl2ZVN1cHBsaWVyL1ByYWN0aXRpb25lclJvbGU/IEhUVFAvMS4xCkF1dGhvcml6YXRpb246IEJlYXJlciBleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0lnT2lBaVNsZFVJaXdpYTJsa0lpQTZJQ0puVm1kNlZXdFJaRXR3WkhWTWJtRjRiVGhLUXkxSllUaDBWVWROVjBKMVRUSlpUMlIzYWt0aGNFZHpJbjAuZXlKbGVIQWlPakUzTURnek5EZzBPRFVzSW1saGRDSTZNVGN3T0RNME9ERTROU3dpWVhWMGFGOTBhVzFsSWpveE56QTRNelE0TVRRekxDSnFkR2tpT2lJNU9HWmpaREZpTnkwd1pHRTVMVFJrWkdRdE9EVXdOeTFoTTJJMVltVTNObVkwWm1JaUxDSnBjM01pT2lKb2RIUndjem92TDJWb1pXRnNkR2h6ZFdsemMyVXVhV2hsTFdWMWNtOXdaUzV1WlhRdmFYVmhMWE56Ynk5eVpXRnNiWE12WTJndGFYVmhJaXdpWVhWa0lqb2lZV05qYjNWdWRDSXNJbk4xWWlJNkltRmpOR1prTmpJMkxXTmlaR1l0TkdJek1DMWhPVE5oTFRjMFlUTTJZV1F5TTJRd1lpSXNJblI1Y0NJNklrSmxZWEpsY2lJc0ltRjZjQ0k2SW1Ob0xXbDFZUzFqYkdsbGJuUWlMQ0p6WlhOemFXOXVYM04wWVhSbElqb2lZelV5TVRFMk5qSXRZMlZoTnkwMFptRm1MV0ZrWmprdE5ETmlOVEUyTUdOallqVXdJaXdpWVdOeUlqb2lNU0lzSW1Gc2JHOTNaV1F0YjNKcFoybHVjeUk2V3lJdktpSmRMQ0p5WldGc2JWOWhZMk5sYzNNaU9uc2ljbTlzWlhNaU9sc2laR1ZtWVhWc2RDMXliMnhsY3kxamFDMXBkV0VpTENKdlptWnNhVzVsWDJGalkyVnpjeUlzSW5WdFlWOWhkWFJvYjNKcGVtRjBhVzl1SWwxOUxDSnlaWE52ZFhKalpWOWhZMk5sYzNNaU9uc2lZV05qYjNWdWRDSTZleUp5YjJ4bGN5STZXeUp0WVc1aFoyVXRZV05qYjNWdWRDSXNJbTFoYm1GblpTMWhZMk52ZFc1MExXeHBibXR6SWl3aWRtbGxkeTF3Y205bWFXeGxJbDE5ZlN3aWMyTnZjR1VpT2lKd2RYSndiM05sWDI5bVgzVnpaVDExY200NmIybGtPakl1TVRZdU56VTJMalV1TXpBdU1TNHhNamN1TXk0eE1DNDFmRTVQVWswZ2NISnZabWxzWlNCc1lYVnVZMmdnWlcxaGFXd2lMQ0p6YVdRaU9pSmpOVEl4TVRZMk1pMWpaV0UzTFRSbVlXWXRZV1JtT1MwME0ySTFNVFl3WTJOaU5UQWlMQ0psZUhSbGJuTnBiMjV6SWpwN0ltTm9YMlZ3Y2lJNmV5SjFjMlZ5WDJsa1gzRjFZV3hwWm1sbGNpSTZJblZ5YmpwbmN6RTZaMnh1SWl3aWRYTmxjbDlwWkNJNklqYzJNREV3TURJME5qY3pOek1pZlN3aVkyaGZhWFZoSWpwN0lteGhkVzVqYUNJNklteGhkVzVqYUNKOUxDSnBhR1ZmYVhWaElqcDdJbkIxY25CdmMyVmZiMlpmZFhObElqcDdJbU52WkdVaU9pSk9UMUpOSWl3aWMzbHpkR1Z0SWpvaWRYSnVPbTlwWkRveUxqRTJMamMxTmk0MUxqTXdMakV1TVRJM0xqTXVNVEF1TlNKOWZYMHNJbVZ0WVdsc1gzWmxjbWxtYVdWa0lqcG1ZV3h6WlN3aWJtRnRaU0k2SW5KeVpYbHViMnhrY3lCU1pYbHViMnhrY3lJc0luQnlaV1psY25KbFpGOTFjMlZ5Ym1GdFpTSTZJbkp5WlhsdWIyeGtjeUlzSW1kcGRtVnVYMjVoYldVaU9pSnljbVY1Ym05c1pITWlMQ0ptWVcxcGJIbGZibUZ0WlNJNklsSmxlVzV2YkdSekluMC5tVDlaVEdOcVRmc01CeG95R0xhUWxVcjlQVmNGSXR2bEttWnhqWTRfT0FIcWk0bkU4MlM1bjBtRTRpeV81WUxfc2JZdE5PREkxTF9MSDZrZUJUQ1NiU09ZNVJFa3BfTkxtNFFMemRYNHluSjdZX25Nb0Q1SDZURnFKVHJsbEtWSjVJS3RYaFd2OWJMUUszNVBMTFBlTk1aSDR5bDNDaGxPbHgwSUgtenFIRVBjT1Y2OWtOMXZDN19KamowdngzZDBSRnZSXzBzYmZHM1huU2lPM2Zwd3dqMnhZZ1JmWmtmSnFUdVo1NDA0ajludThUaVBIdENScVFfRVB0RWlyVVRHMUNsWDFEYWhKUktCLWp3TEhUaHhrS29vVXhzUkFRWlZocWF5aExNVjhzeHdOa2VIbk5lbWhxcmVPa2VERUx4bjJaQy1WT1FMZTlXUnNYMzdRYWdPMWcKdHJhY2VwYXJlbnQ6IDAwLTBhZjc2NTE5MTZjZDQzZGQ4NDQ4ZWIyMTFjODAzMTljLWI3YWQ2YjcxNjkyMDMzMzEtMDAKSG9zdDogZWhlYWx0aHN1aXNzZS5paGUtZXVyb3BlLm5ldA==", + "role": "request", + "location": "localhost" + } + ] +}" + +"https://ehealthsuisse.ihe-europe.net/http-validator/rest/validation/validate" + +### + +#baseUrl="https://ehealthsuisse.ihe-europe.net" + +POST https://ehealthsuisse.ihe-europe.net/http-validator/rest/validation/validate +Content-Type: application/fhir+json + +{ + "apiVersion": "0.3.0_SNAPSHOT", + "validationServiceName": "HTTP Validator", + "validationProfileId": "CH_ITI-90_PractitionerRole_GET_mCSD_Query", + "validationItems": [ + { + "itemId": "first", + "content": "R0VUIENhcmVTZXJ2aWNlc1NlbGVjdGl2ZVN1cHBsaWVyL1ByYWN0aXRpb25lclJvbGU/IEhUVFAvMS4xCkF1dGhvcml6YXRpb246IEJlYXJlciBleUpoYkdjaU9pSlNVekkxTmlJc0luUjVjQ0lnT2lBaVNsZFVJaXdpYTJsa0lpQTZJQ0puVm1kNlZXdFJaRXR3WkhWTWJtRjRiVGhLUXkxSllUaDBWVWROVjBKMVRUSlpUMlIzYWt0aGNFZHpJbjAuZXlKbGVIQWlPakUzTURnek5EZzBPRFVzSW1saGRDSTZNVGN3T0RNME9ERTROU3dpWVhWMGFGOTBhVzFsSWpveE56QTRNelE0TVRRekxDSnFkR2tpT2lJNU9HWmpaREZpTnkwd1pHRTVMVFJrWkdRdE9EVXdOeTFoTTJJMVltVTNObVkwWm1JaUxDSnBjM01pT2lKb2RIUndjem92TDJWb1pXRnNkR2h6ZFdsemMyVXVhV2hsTFdWMWNtOXdaUzV1WlhRdmFYVmhMWE56Ynk5eVpXRnNiWE12WTJndGFYVmhJaXdpWVhWa0lqb2lZV05qYjNWdWRDSXNJbk4xWWlJNkltRmpOR1prTmpJMkxXTmlaR1l0TkdJek1DMWhPVE5oTFRjMFlUTTJZV1F5TTJRd1lpSXNJblI1Y0NJNklrSmxZWEpsY2lJc0ltRjZjQ0k2SW1Ob0xXbDFZUzFqYkdsbGJuUWlMQ0p6WlhOemFXOXVYM04wWVhSbElqb2lZelV5TVRFMk5qSXRZMlZoTnkwMFptRm1MV0ZrWmprdE5ETmlOVEUyTUdOallqVXdJaXdpWVdOeUlqb2lNU0lzSW1Gc2JHOTNaV1F0YjNKcFoybHVjeUk2V3lJdktpSmRMQ0p5WldGc2JWOWhZMk5sYzNNaU9uc2ljbTlzWlhNaU9sc2laR1ZtWVhWc2RDMXliMnhsY3kxamFDMXBkV0VpTENKdlptWnNhVzVsWDJGalkyVnpjeUlzSW5WdFlWOWhkWFJvYjNKcGVtRjBhVzl1SWwxOUxDSnlaWE52ZFhKalpWOWhZMk5sYzNNaU9uc2lZV05qYjNWdWRDSTZleUp5YjJ4bGN5STZXeUp0WVc1aFoyVXRZV05qYjNWdWRDSXNJbTFoYm1GblpTMWhZMk52ZFc1MExXeHBibXR6SWl3aWRtbGxkeTF3Y205bWFXeGxJbDE5ZlN3aWMyTnZjR1VpT2lKd2RYSndiM05sWDI5bVgzVnpaVDExY200NmIybGtPakl1TVRZdU56VTJMalV1TXpBdU1TNHhNamN1TXk0eE1DNDFmRTVQVWswZ2NISnZabWxzWlNCc1lYVnVZMmdnWlcxaGFXd2lMQ0p6YVdRaU9pSmpOVEl4TVRZMk1pMWpaV0UzTFRSbVlXWXRZV1JtT1MwME0ySTFNVFl3WTJOaU5UQWlMQ0psZUhSbGJuTnBiMjV6SWpwN0ltTm9YMlZ3Y2lJNmV5SjFjMlZ5WDJsa1gzRjFZV3hwWm1sbGNpSTZJblZ5YmpwbmN6RTZaMnh1SWl3aWRYTmxjbDlwWkNJNklqYzJNREV3TURJME5qY3pOek1pZlN3aVkyaGZhWFZoSWpwN0lteGhkVzVqYUNJNklteGhkVzVqYUNKOUxDSnBhR1ZmYVhWaElqcDdJbkIxY25CdmMyVmZiMlpmZFhObElqcDdJbU52WkdVaU9pSk9UMUpOSWl3aWMzbHpkR1Z0SWpvaWRYSnVPbTlwWkRveUxqRTJMamMxTmk0MUxqTXdMakV1TVRJM0xqTXVNVEF1TlNKOWZYMHNJbVZ0WVdsc1gzWmxjbWxtYVdWa0lqcG1ZV3h6WlN3aWJtRnRaU0k2SW5KeVpYbHViMnhrY3lCU1pYbHViMnhrY3lJc0luQnlaV1psY25KbFpGOTFjMlZ5Ym1GdFpTSTZJbkp5WlhsdWIyeGtjeUlzSW1kcGRtVnVYMjVoYldVaU9pSnljbVY1Ym05c1pITWlMQ0ptWVcxcGJIbGZibUZ0WlNJNklsSmxlVzV2YkdSekluMC5tVDlaVEdOcVRmc01CeG95R0xhUWxVcjlQVmNGSXR2bEttWnhqWTRfT0FIcWk0bkU4MlM1bjBtRTRpeV81WUxfc2JZdE5PREkxTF9MSDZrZUJUQ1NiU09ZNVJFa3BfTkxtNFFMemRYNHluSjdZX25Nb0Q1SDZURnFKVHJsbEtWSjVJS3RYaFd2OWJMUUszNVBMTFBlTk1aSDR5bDNDaGxPbHgwSUgtenFIRVBjT1Y2OWtOMXZDN19KamowdngzZDBSRnZSXzBzYmZHM1huU2lPM2Zwd3dqMnhZZ1JmWmtmSnFUdVo1NDA0ajludThUaVBIdENScVFfRVB0RWlyVVRHMUNsWDFEYWhKUktCLWp3TEhUaHhrS29vVXhzUkFRWlZocWF5aExNVjhzeHdOa2VIbk5lbWhxcmVPa2VERUx4bjJaQy1WT1FMZTlXUnNYMzdRYWdPMWcKdHJhY2VwYXJlbnQ6IDAwLTBhZjc2NTE5MTZjZDQzZGQ4NDQ4ZWIyMTFjODAzMTljLWI3YWQ2YjcxNjkyMDMzMzEtMDAKSG9zdDogZWhlYWx0aHN1aXNzZS5paGUtZXVyb3BlLm5ldA==", + "role": "request", + "location": "localhost" + } + ] +} \ No newline at end of file diff --git a/EHS/Test/mCSD-Organization.robot b/EHS/Test/mCSD-Organization.robot new file mode 100644 index 0000000000000000000000000000000000000000..a931ca08d9bede9612af1b7c5afeb7af6fe03960 --- /dev/null +++ b/EHS/Test/mCSD-Organization.robot @@ -0,0 +1,58 @@ +*** Settings *** +Library RequestsLibrary +Library JSONLibrary +Library Collections +Library OperatingSystem +Library String +Library base64 + +*** Variables *** + +${path} EHS\\samples\\CH-mCSD\\ITI-90\\A\ -\ Organization\\CH-mCSD\ -\ 001\ -\ valid\ -\ emptyQuery.txt +${validationProfileId} CH_ITI-90_Organization_GET_mCSD_Query +${content} R0VUIENhcmVTZXJ2aWNlc1NlbGVjdGl2ZVN1cHBsaWVyL09yZ2FuaXphdGlvbiBIVFRQLzEuMQpBdXRob3JpemF0aW9uOiBCZWFyZXIgZXlKaGJHY2lPaUpTVXpJMU5pSXNJblI1Y0NJZ09pQWlTbGRVSWl3aWEybGtJaUE2SUNKblZtZDZWV3RSWkV0d1pIVk1ibUY0YlRoS1F5MUpZVGgwVlVkTlYwSjFUVEpaVDJSM2FrdGhjRWR6SW4wLmV5SmxlSEFpT2pFM01EZ3pORGcwT0RVc0ltbGhkQ0k2TVRjd09ETTBPREU0TlN3aVlYVjBhRjkwYVcxbElqb3hOekE0TXpRNE1UUXpMQ0pxZEdraU9pSTVPR1pqWkRGaU55MHdaR0U1TFRSa1pHUXRPRFV3TnkxaE0ySTFZbVUzTm1ZMFptSWlMQ0pwYzNNaU9pSm9kSFJ3Y3pvdkwyVm9aV0ZzZEdoemRXbHpjMlV1YVdobExXVjFjbTl3WlM1dVpYUXZhWFZoTFhOemJ5OXlaV0ZzYlhNdlkyZ3RhWFZoSWl3aVlYVmtJam9pWVdOamIzVnVkQ0lzSW5OMVlpSTZJbUZqTkdaa05qSTJMV05pWkdZdE5HSXpNQzFoT1ROaExUYzBZVE0yWVdReU0yUXdZaUlzSW5SNWNDSTZJa0psWVhKbGNpSXNJbUY2Y0NJNkltTm9MV2wxWVMxamJHbGxiblFpTENKelpYTnphVzl1WDNOMFlYUmxJam9pWXpVeU1URTJOakl0WTJWaE55MDBabUZtTFdGa1pqa3RORE5pTlRFMk1HTmpZalV3SWl3aVlXTnlJam9pTVNJc0ltRnNiRzkzWldRdGIzSnBaMmx1Y3lJNld5SXZLaUpkTENKeVpXRnNiVjloWTJObGMzTWlPbnNpY205c1pYTWlPbHNpWkdWbVlYVnNkQzF5YjJ4bGN5MWphQzFwZFdFaUxDSnZabVpzYVc1bFgyRmpZMlZ6Y3lJc0luVnRZVjloZFhSb2IzSnBlbUYwYVc5dUlsMTlMQ0p5WlhOdmRYSmpaVjloWTJObGMzTWlPbnNpWVdOamIzVnVkQ0k2ZXlKeWIyeGxjeUk2V3lKdFlXNWhaMlV0WVdOamIzVnVkQ0lzSW0xaGJtRm5aUzFoWTJOdmRXNTBMV3hwYm10eklpd2lkbWxsZHkxd2NtOW1hV3hsSWwxOWZTd2ljMk52Y0dVaU9pSndkWEp3YjNObFgyOW1YM1Z6WlQxMWNtNDZiMmxrT2pJdU1UWXVOelUyTGpVdU16QXVNUzR4TWpjdU15NHhNQzQxZkU1UFVrMGdjSEp2Wm1sc1pTQnNZWFZ1WTJnZ1pXMWhhV3dpTENKemFXUWlPaUpqTlRJeE1UWTJNaTFqWldFM0xUUm1ZV1l0WVdSbU9TMDBNMkkxTVRZd1kyTmlOVEFpTENKbGVIUmxibk5wYjI1eklqcDdJbU5vWDJWd2NpSTZleUoxYzJWeVgybGtYM0YxWVd4cFptbGxjaUk2SW5WeWJqcG5jekU2WjJ4dUlpd2lkWE5sY2w5cFpDSTZJamMyTURFd01ESTBOamN6TnpNaWZTd2lZMmhmYVhWaElqcDdJbXhoZFc1amFDSTZJbXhoZFc1amFDSjlMQ0pwYUdWZmFYVmhJanA3SW5CMWNuQnZjMlZmYjJaZmRYTmxJanA3SW1OdlpHVWlPaUpPVDFKTklpd2ljM2x6ZEdWdElqb2lkWEp1T205cFpEb3lMakUyTGpjMU5pNDFMak13TGpFdU1USTNMak11TVRBdU5TSjlmWDBzSW1WdFlXbHNYM1psY21sbWFXVmtJanBtWVd4elpTd2libUZ0WlNJNkluSnlaWGx1YjJ4a2N5QlNaWGx1YjJ4a2N5SXNJbkJ5WldabGNuSmxaRjkxYzJWeWJtRnRaU0k2SW5KeVpYbHViMnhrY3lJc0ltZHBkbVZ1WDI1aGJXVWlPaUp5Y21WNWJtOXNaSE1pTENKbVlXMXBiSGxmYm1GdFpTSTZJbEpsZVc1dmJHUnpJbjAubVQ5WlRHTnFUZnNNQnhveUdMYVFsVXI5UFZjRkl0dmxLbVp4alk0X09BSHFpNG5FODJTNW4wbUU0aXlfNVlMX3NiWXROT0RJMUxfTEg2a2VCVENTYlNPWTVSRWtwX05MbTRRTHpkWDR5bko3WV9uTW9ENUg2VEZxSlRybGxLVko1SUt0WGhXdjliTFFLMzVQTExQZU5NWkg0eWwzQ2hsT2x4MElILXpxSEVQY09WNjlrTjF2QzdfSmpqMHZ4M2QwUkZ2Ul8wc2JmRzNYblNpTzNmcHd3ajJ4WWdSZlprZkpxVHVaNTQwNGo5bnU4VGlQSHRDUnFRX0VQdEVpclVURzFDbFgxRGFoSlJLQi1qd0xIVGh4a0tvb1V4c1JBUVpWaHFheWhMTVY4c3h3TmtlSG5OZW1ocXJlT2tlREVMeG4yWkMtVk9RTGU5V1JzWDM3UWFnTzFnCnRyYWNlcGFyZW50OiAwMC0wYWY3NjUxOTE2Y2Q0M2RkODQ0OGViMjExYzgwMzE5Yy1iN2FkNmI3MTY5MjAzMzMxLTAwCkhvc3Q6IGVoZWFsdGhzdWlzc2UuaWhlLWV1cm9wZS5uZXQK + +${API_Base_Endpoint} https://ehealthsuisse.ihe-europe.net/http-validator/rest +&{headers} Content-Type=application/json Authorization=GazelleApiKey ${token} +${body} { +... "apiVersion": "0.3.0_SNAPSHOT", +... "validationServiceName": "HTTP Validator", +... "validationProfileId": "", +... "validationItems": +... [ +... { +... "itemId": "first", +... "content": "", +... "role": "request", +... "location": "localhost" +... } +... ] +... } +${token} bMrrbYdqyBAmwcpeCz4mWqWTgcLS_xqedOyHIhP3Ci3YibEPUe5boJXAjHk1now6urnJYLoA1KItagWicKq2BIDeTlB1fGjQG_2exCqUarcgUfDUorFQW5e_qoIVoy3FSQaAc6DvrOIlq2KO7CwklpPO5UhKZUpGF9JzLjPGM-I= + + +*** Test Cases*** +TC_001_Get_Metadata + Create Session API_Testing ${API_Base_Endpoint} + ${Get_Response}= GET On Session API_Testing /metadata + ${statusCode} Convert To String ${Get_Response.status_code} + Should Be Equal ${statusCode} 200 + +TC_002_Validate_Samples + + ${sample}= Get File ${path} + ${sample64}= B 64 Encode ${sample.encode()} + + ${bodyJson}= evaluate json.loads('''${body}''') json + ${bodyJson}= Update Value To Json ${bodyJson} $..validationProfileId ${validationProfileId} + ${bodyJson}= Update Value To Json ${bodyJson} $..validationItems..content ${content} + ${body}= evaluate json.dumps(${bodyJson}) json + + Create Session API_Testing ${API_Base_Endpoint} verify=true + ${Post_Response}= POST On Session API_Testing /validation/validate data=${body} headers=${headers} + + ${statusCode} Convert To String ${Post_Response.status_code} + Should Be Equal ${statusCode} 200 + + +