Skip to content

Commit 119ad10

Browse files
authored
Fix Skipped Tests (#604)
* testing unit test ci * update unit test resources and algorithm * print errors * try add cognito unit test * setup client id starting with test- * setup auth * print id result * fix cog test * update gg test args * test websocket default * test for mqtt5 default auth * add log * add test log * clean up
1 parent 22ea68f commit 119ad10

File tree

3 files changed

+36
-25
lines changed

3 files changed

+36
-25
lines changed

test/test_mqtt.py

+8-9
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
CUSTOM_AUTHORIZER_SIGNATURE_UNENCODED = os.environ.get("CUSTOM_AUTHORIZER_SIGNATURE_UNENCODED")
2323
CUSTOM_AUTHORIZER_TOKEN_KEY_NAME = os.environ.get("CUSTOM_AUTHORIZER_TOKEN_KEY_NAME")
2424
CUSTOM_AUTHORIZER_TOKEN_VALUE = os.environ.get("CUSTOM_AUTHORIZER_TOKEN_VALUE")
25-
25+
AWS_DEFAULT_REGION = os.environ.get("AWS_DEFAULT_REGION")
2626

2727
def has_custom_auth_environment():
2828
return (CUSTOM_AUTHORIZER_ENDPOINT is not None) and (CUSTOM_AUTHORIZER_NAME_SIGNED is not None) and \
@@ -51,32 +51,31 @@ def get():
5151
warnings.simplefilter('ignore', ResourceWarning)
5252

5353
try:
54-
secrets = boto3.client('secretsmanager')
54+
secrets = boto3.client('secretsmanager', region_name=AWS_DEFAULT_REGION)
5555
response = secrets.get_secret_value(SecretId='unit-test/endpoint')
5656
endpoint = response['SecretString']
57-
response = secrets.get_secret_value(SecretId='unit-test/certificate')
57+
response = secrets.get_secret_value(SecretId='ci/mqtt5/us/mqtt5_thing/cert')
5858
cert = response['SecretString'].encode('utf8')
59-
response = secrets.get_secret_value(SecretId='unit-test/privatekey')
59+
response = secrets.get_secret_value(SecretId='ci/mqtt5/us/mqtt5_thing/key')
6060
key = response['SecretString'].encode('utf8')
6161
region = secrets.meta.region_name
62-
response = secrets.get_secret_value(SecretId='unit-test/cognitopool')
63-
cognito_pool = response['SecretString']
62+
response = secrets.get_secret_value(SecretId='ci/Cognito/identity_id')
63+
cognito_id = response['SecretString']
6464

6565
cognito = boto3.client('cognito-identity')
66-
response = cognito.get_id(IdentityPoolId=cognito_pool)
67-
cognito_id = response['IdentityId']
6866
response = cognito.get_credentials_for_identity(IdentityId=cognito_id)
6967
cognito_creds = response['Credentials']
7068

7169
Config.cache = Config(endpoint, cert, key, region, cognito_creds)
7270
except (botocore.exceptions.BotoCoreError, botocore.exceptions.ClientError) as ex:
71+
print(ex)
7372
raise unittest.SkipTest("No credentials")
7473

7574
return Config.cache
7675

7776

7877
def create_client_id():
79-
return 'aws-iot-device-sdk-python-v2-unit-test-{0}'.format(uuid.uuid4())
78+
return 'test-aws-iot-device-sdk-python-v2-unit-test-{0}'.format(uuid.uuid4())
8079

8180

8281
class MqttBuilderTest(unittest.TestCase):

test/test_mqtt5.py

+8-9
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
CUSTOM_AUTHORIZER_SIGNATURE_UNENCODED = os.environ.get("CUSTOM_AUTHORIZER_SIGNATURE_UNENCODED")
2525
CUSTOM_AUTHORIZER_TOKEN_KEY_NAME = os.environ.get("CUSTOM_AUTHORIZER_TOKEN_KEY_NAME")
2626
CUSTOM_AUTHORIZER_TOKEN_VALUE = os.environ.get("CUSTOM_AUTHORIZER_TOKEN_VALUE")
27-
27+
AWS_DEFAULT_REGION = os.environ.get("AWS_DEFAULT_REGION")
2828

2929
def has_custom_auth_environment():
3030
return (CUSTOM_AUTHORIZER_ENDPOINT is not None) and (CUSTOM_AUTHORIZER_NAME_SIGNED is not None) and \
@@ -53,32 +53,31 @@ def get():
5353
warnings.simplefilter('ignore', ResourceWarning)
5454

5555
try:
56-
secrets = boto3.client('secretsmanager')
56+
secrets = boto3.client('secretsmanager', region_name=AWS_DEFAULT_REGION)
5757
response = secrets.get_secret_value(SecretId='unit-test/endpoint')
5858
endpoint = response['SecretString']
59-
response = secrets.get_secret_value(SecretId='unit-test/certificate')
59+
response = secrets.get_secret_value(SecretId='ci/mqtt5/us/mqtt5_thing/cert')
6060
cert = response['SecretString'].encode('utf8')
61-
response = secrets.get_secret_value(SecretId='unit-test/privatekey')
61+
response = secrets.get_secret_value(SecretId='ci/mqtt5/us/mqtt5_thing/key')
6262
key = response['SecretString'].encode('utf8')
6363
region = secrets.meta.region_name
64-
response = secrets.get_secret_value(SecretId='unit-test/cognitopool')
65-
cognito_pool = response['SecretString']
64+
response = secrets.get_secret_value(SecretId='ci/Cognito/identity_id')
65+
cognito_id = response['SecretString']
6666

6767
cognito = boto3.client('cognito-identity')
68-
response = cognito.get_id(IdentityPoolId=cognito_pool)
69-
cognito_id = response['IdentityId']
7068
response = cognito.get_credentials_for_identity(IdentityId=cognito_id)
7169
cognito_creds = response['Credentials']
7270

7371
Config.cache = Config(endpoint, cert, key, region, cognito_creds)
7472
except (botocore.exceptions.BotoCoreError, botocore.exceptions.ClientError) as ex:
73+
print(ex)
7574
raise unittest.SkipTest("No credentials")
7675

7776
return Config.cache
7877

7978

8079
def create_client_id():
81-
return 'aws-iot-device-sdk-python-v2-unit-test-{0}'.format(uuid.uuid4())
80+
return 'test-aws-iot-device-sdk-python-v2-unit-test-{0}'.format(uuid.uuid4())
8281

8382
class Mqtt5TestCallbacks():
8483
def __init__(self):

test/test_samples.py

+20-7
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
class Config:
1717
cache = None
1818

19-
def __init__(self, endpoint, cert, key, region):
19+
def __init__(self, endpoint, cert, key, gg_cert, gg_key, region):
2020
self.endpoint = endpoint
2121
self.region = region
2222
self.cert_bytes = cert
@@ -31,6 +31,14 @@ def __init__(self, endpoint, cert, key, region):
3131
with open(self.key_filepath, 'wb') as key_file:
3232
key_file.write(key)
3333

34+
self.gg_cert_filepath = os.path.join(self._tmp_dirpath, 'gg_certificate.pem')
35+
with open(self.gg_cert_filepath, 'wb') as cert_file:
36+
cert_file.write(gg_cert)
37+
38+
self.gg_key_filepath = os.path.join(self._tmp_dirpath, 'gg_privatekey.pem')
39+
with open(self.gg_key_filepath, 'wb') as key_file:
40+
key_file.write(gg_key)
41+
3442
def __del__(self):
3543
shutil.rmtree(self._tmp_dirpath)
3644

@@ -45,23 +53,28 @@ def get():
4553
warnings.simplefilter('ignore', ResourceWarning)
4654

4755
try:
48-
secrets = boto3.client('secretsmanager')
56+
secrets = boto3.client('secretsmanager',region_name="us-east-1")
4957
response = secrets.get_secret_value(SecretId='unit-test/endpoint')
5058
endpoint = response['SecretString']
51-
response = secrets.get_secret_value(SecretId='unit-test/certificate')
59+
response = secrets.get_secret_value(SecretId='ci/mqtt5/us/mqtt5_thing/cert')
5260
cert = response['SecretString'].encode('utf8')
53-
response = secrets.get_secret_value(SecretId='unit-test/privatekey')
61+
response = secrets.get_secret_value(SecretId='ci/mqtt5/us/mqtt5_thing/key')
5462
key = response['SecretString'].encode('utf8')
63+
response = secrets.get_secret_value(SecretId='ci/GreengrassDiscovery/cert')
64+
gg_cert = response['SecretString'].encode('utf8')
65+
response = secrets.get_secret_value(SecretId='ci/GreengrassDiscovery/key')
66+
gg_key = response['SecretString'].encode('utf8')
5567
region = secrets.meta.region_name
56-
Config.cache = Config(endpoint, cert, key, region)
68+
Config.cache = Config(endpoint, cert, key, region, gg_cert, gg_key)
5769
except (botocore.exceptions.BotoCoreError, botocore.exceptions.ClientError) as ex:
70+
print(ex)
5871
raise unittest.SkipTest("No credentials")
5972

6073
return Config.cache
6174

6275

6376
def create_client_id():
64-
return 'aws-crt-python-unit-test-{0}'.format(uuid.uuid4())
77+
return 'aws-iot-device-sdk-python-v2-unit-test-{0}'.format(uuid.uuid4())
6578

6679

6780
class SamplesTest(unittest.TestCase):
@@ -115,7 +128,7 @@ def test_basic_discovery_response_only(self):
115128
"--region", config.region,
116129
"--cert", config.cert_filepath,
117130
"--key", config.key_filepath,
118-
"--thing_name", "aws-sdk-crt-unit-test",
131+
"--thing_name", "CI_Greengrass_Discovery_Thing",
119132
"--verbosity", "Trace",
120133
]
121134

0 commit comments

Comments
 (0)