Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 28 additions & 7 deletions e2e/poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 5 additions & 0 deletions e2e/test_authorization.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import uuid
import unittest
from typing import Set

from lib.apigee import ApigeeApp
Expand All @@ -15,9 +16,12 @@
from utils.immunisation_api import ImmunisationApi
from utils.resource import generate_imms_resource
from utils.mappings import VaccineTypes
from utils.constants import env_internal_dev


@unittest.skipIf(env_internal_dev, "TestApplicationRestrictedAuthorization for internal-dev environment")
class TestApplicationRestrictedAuthorization(ImmunizationBaseTest):

my_app: ApigeeApp
my_imms_api: ImmunisationApi

Expand Down Expand Up @@ -169,6 +173,7 @@ def test_search_imms_unauthorised_vax(self):
self.assertEqual(response.status_code, 403, response.text)


@unittest.skipIf(env_internal_dev, "TestCis2Authorization for internal-dev environment")
class TestCis2Authorization(ImmunizationBaseTest):
my_app: ApigeeApp
my_imms_api: ImmunisationApi
Expand Down
4 changes: 4 additions & 0 deletions e2e/test_create_immunization.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
import unittest
from utils.base_test import ImmunizationBaseTest
from utils.resource import generate_imms_resource, get_full_row_from_identifier
from utils.constants import env_internal_dev


@unittest.skipIf(env_internal_dev, "TestCreateImmunization for internal-dev environment")
class TestCreateImmunization(ImmunizationBaseTest):

def test_create_imms(self):
"""it should create a FHIR Immunization resource"""
for imms_api in self.imms_apis:
Expand Down
3 changes: 3 additions & 0 deletions e2e/test_delete_immunization.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
import unittest
from utils.base_test import ImmunizationBaseTest
from utils.immunisation_api import parse_location
from utils.resource import generate_imms_resource
from utils.constants import env_internal_dev


@unittest.skipIf(env_internal_dev, "TestDeleteImmunization for internal-dev environment")
class TestDeleteImmunization(ImmunizationBaseTest):

def test_delete_imms(self):
Expand Down
4 changes: 4 additions & 0 deletions e2e/test_delta_immunization.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,19 @@
from utils.base_test import ImmunizationBaseTest
from utils.immunisation_api import parse_location
from utils.resource import generate_imms_resource
from utils.constants import env_internal_dev
from mypy_boto3_dynamodb.service_resource import DynamoDBServiceResource
import time
import copy
import boto3
from botocore.config import Config
import os
import unittest


@unittest.skipIf(env_internal_dev, "TestDeltaImmunization for internal-dev environment")
class TestDeltaImmunization(ImmunizationBaseTest):

CREATE_OPERATION = "CREATE"
UPDATE_OPERATION = "UPDATE"
DELETE_OPERATION = "DELETE"
Expand Down
3 changes: 3 additions & 0 deletions e2e/test_get_immunization.py
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
from decimal import Decimal
import uuid
import unittest

from utils.base_test import ImmunizationBaseTest
from utils.immunisation_api import parse_location
from utils.resource import generate_imms_resource, generate_filtered_imms_resource
from utils.mappings import EndpointOperationNames, VaccineTypes
from utils.constants import env_internal_dev


@unittest.skipIf(env_internal_dev, "TestGetImmunization for internal-dev environment")
class TestGetImmunization(ImmunizationBaseTest):

def test_get_imms(self):
Expand Down
7 changes: 6 additions & 1 deletion e2e/test_proxy.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@
import subprocess
import unittest
import uuid

import requests

from lib.env import get_service_base_path, get_status_endpoint_api_key
from utils.constants import env_internal_dev


@unittest.skipIf(env_internal_dev, "TestProxyHealthcheck for internal-dev environment")
class TestProxyHealthcheck(unittest.TestCase):

proxy_url: str
status_api_key: str

Expand All @@ -31,6 +33,7 @@ def test_status(self):
f"service is not healthy: status: {body['status']}")


@unittest.skipIf(env_internal_dev, "TestMtls for internal-dev environment")
class TestMtls(unittest.TestCase):
"""Our backend is secured using mTLS. This test makes sure you can't hit the backend directly"""

Expand Down Expand Up @@ -68,9 +71,11 @@ def get_backend_url() -> str:
raise RuntimeError(f"Failed to run command\n{e}")


@unittest.skipIf(env_internal_dev, "TestProxyAuthorization for internal-dev environment")
class TestProxyAuthorization(unittest.TestCase):
"""Our apigee proxy has its own authorization.
This class test different authorization access levels/roles authentication types that are supported"""

proxy_url: str

@classmethod
Expand Down
3 changes: 3 additions & 0 deletions e2e/test_search_immunization.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
import pprint
import uuid
import unittest
from typing import NamedTuple, Literal, Optional, List
from decimal import Decimal

from utils.base_test import ImmunizationBaseTest
from utils.constants import valid_nhs_number1, valid_nhs_number2, valid_patient_identifier2, valid_patient_identifier1
from utils.resource import generate_imms_resource, generate_filtered_imms_resource
from utils.mappings import VaccineTypes
from utils.constants import env_internal_dev


@unittest.skipIf(env_internal_dev, "TestSearchImmunization for internal-dev environment")
class TestSearchImmunization(ImmunizationBaseTest):
# NOTE: In each test, the result may contain more hits. We only assert if the resource that we created is
# in the result set and assert the one that we don't expect is not present.
Expand Down
3 changes: 3 additions & 0 deletions e2e/test_sqs_dlq.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,13 @@
import os
from utils.delete_sqs_messages import read_and_delete_messages
from utils.get_sqs_url import get_queue_url
from utils.constants import env_internal_dev
from botocore.exceptions import ClientError # Handle potential errors


@unittest.skipIf(env_internal_dev, "TestSQS for internal-dev environment")
class TestSQS(unittest.TestCase):

def setUp(self):
# Get SQS queue url
self.queue_name = os.environ["AWS_SQS_QUEUE_NAME"]
Expand Down
4 changes: 3 additions & 1 deletion e2e/test_update_immunization.py
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
import copy
import uuid

import unittest
from utils.base_test import ImmunizationBaseTest
from utils.immunisation_api import parse_location
from utils.resource import generate_imms_resource
from utils.constants import env_internal_dev


@unittest.skipIf(env_internal_dev, "TestUpdateImmunization for internal-dev environment")
class TestUpdateImmunization(ImmunizationBaseTest):

def test_update_imms(self):
Expand Down
4 changes: 4 additions & 0 deletions e2e/utils/constants.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
import os

valid_nhs_number1 = "9693632109"
valid_nhs_number2 = "9693633687"

Expand All @@ -6,3 +8,5 @@
patient_identifier_system = "https://fhir.nhs.uk/Id/nhs-number"
valid_patient_identifier1 = f"{patient_identifier_system}|{valid_nhs_number1}"
valid_patient_identifier2 = f"{patient_identifier_system}|{valid_nhs_number2}"

env_internal_dev = os.environ.get("ENVIRONMENT", "") == "internal-dev"
7 changes: 6 additions & 1 deletion e2e_batch/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,12 @@
from clients import logger

env_value = os.environ.get("ENV", "internal-dev")
logger.info(f"Environment : {env_value}")
environment_value = os.environ.get("ENVIRONMENT", "")
logger.info("Environment : %s", env_value)
logger.info("Build Env : %s", environment_value)

env_internal_dev = environment_value == "internal-dev"

SOURCE_BUCKET = f"immunisation-batch-{env_value}-data-sources"
INPUT_PREFIX = ""
ACK_BUCKET = (
Expand Down
3 changes: 3 additions & 0 deletions e2e_batch/test_e2e_batch.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,13 @@
DUPLICATE,
FILE_NAME_VAL_ERROR,
env_value,
env_internal_dev,
)


@unittest.skipIf(env_internal_dev, "TestE2EBatch for internal-dev environment")
class TestE2EBatch(unittest.TestCase):

if env_value != "ref":

def test_create_success(self):
Expand Down
Loading