def test_template_init_minimal_data_sets(quicksight_application_stub, mininmal_data_sets_stub): stub = mininmal_data_sets_stub obj = Template(quicksight_application=quicksight_application_stub, data_sets=stub.data_sets_stub, props=None) dump_state(obj)
def test_quicksight_api_init_with_config_file( quicksight_application_resource_properties): resource_properties = quicksight_application_resource_properties qs_api = QuicksightApi(resource_properties) logger.debug(f'unit-test: Global data {qs_api.global_state}') dump_state(qs_api.global_state, 'After initialization QuicksightApi global_state') assert set(qs_api.global_state.keys()) == set( ['dashboard', 'analysis', 'dataset', 'datasource'])
def test_data_set_init_all_data_set_types(data_set_type, quicksight_application_stub): data_source = DataSource(quicksight_application=quicksight_application_stub, props=None) data_set = DataSet( data_source=data_source, data_set_sub_type=data_set_type, data_set_name=f"_{data_set_type}_DataSet", props=None, quicksight_application=quicksight_application_stub ) dump_state(data_set, 'After initialization')
def test_template_delete(quicksight_application_stub, mininmal_data_sets_stub): obj = Template(quicksight_application=quicksight_application_stub, data_sets=mininmal_data_sets_stub.data_sets_stub, props=None) sub_type = 'main' TemplateStubber.stub_delete_template_call(sub_type) dump_state(obj) obj.delete() dump_state(obj, 'After template delete obj')
def test_analysis_init(quicksight_application_stub, mininmal_data_sets_stub): stub = mininmal_data_sets_stub template_arn_param = template_arn obj = Analysis( quicksight_application=quicksight_application_stub, data_sets=stub.data_sets_stub, quicksight_template_arn=template_arn_param, props=None ) dump_state(obj, 'Dump analysis')
def test_template_create_from_template(quicksight_application_stub, template_arn): obj = Template(quicksight_application=quicksight_application_stub, data_sets=None, props=None) sub_type = 'main' TemplateStubber.stub_create_template_call(sub_type) dump_state(obj) obj.create_from_template(template_arn) dump_state(obj, 'After template create_from_template obj')
def test_dashboard_delete(quicksight_application_stub, mininmal_data_sets_stub, template_arn): obj = Dashboard(quicksight_application=quicksight_application_stub, data_sets=mininmal_data_sets_stub.data_sets_stub, quicksight_template_arn=template_arn, props=None) sub_type = 'main' dump_state(obj, 'Before delete') DashboardStubber.stub_delete_dashboard_call(sub_type) obj.delete() dump_state(obj, 'After delete')
def test_template_update_template_permissions(quicksight_application_stub, mininmal_data_sets_stub): obj = Template(quicksight_application=quicksight_application_stub, data_sets=mininmal_data_sets_stub.data_sets_stub, props=None) sub_type = 'main' TemplateStubber.stub_update_template_permissions_call(sub_type) permission_type = TemplatePermissionType.PUBLIC logger.info(f"Testing with permission type {permission_type}") dump_state(obj) obj.update_template_permissions(permission=TemplatePermissionType.PUBLIC, principal=None) dump_state(obj, 'After template delete obj')
def test_analysis_delete(quicksight_application_stub, mininmal_data_sets_stub, template_arn): obj = Analysis( quicksight_application=quicksight_application_stub, data_sets=mininmal_data_sets_stub.data_sets_stub, quicksight_template_arn=template_arn, props=None ) sub_type = 'main' dump_state(obj, 'Before create') AnalysisStubber.stub_delete_analysis(sub_type) obj.delete() dump_state(obj, 'After create')
def test_template_create_from_analysis(quicksight_application_stub, mininmal_data_sets_stub): obj = Template(quicksight_application=quicksight_application_stub, data_sets=mininmal_data_sets_stub.data_sets_stub, props=None) sub_type = 'main' TemplateStubber.stub_create_template_call(sub_type) class AnalysisStub: def __init__(self): self.arn = "MOCK_ANALYSIS" analysis = AnalysisStub() dump_state(obj) obj.create_from_analysis(analysis) dump_state(obj, 'After template create_from_analysis obj')
def test_data_set_create_all_data_set_types(data_set_type, quicksight_application_stub): data_source = DataSource(quicksight_application=quicksight_application_stub, props=None) # stub data_source.arn = "STUBBED_DATA_SOURCE_ARN" quicksight_application_stub.data_source = data_source data_set = DataSet( data_source=data_source, data_set_sub_type=data_set_type, data_set_name=f"_{data_set_type}_DataSet", props=None, quicksight_application=quicksight_application_stub ) dump_state(data_set, 'Before create') DataSetStubber.stub_create_data_set(data_set_type) data_set.create() dump_state(data_set, 'After create')
def test_data_set_delete_all_data_set_types(data_set_type, quicksight_application_stub): data_source = DataSource(quicksight_application=quicksight_application_stub, props=None) # stub data_source.arn = "STUBBED_DATA_SOURCE_ARN" quicksight_application_stub.data_source = data_source logger.info(f'Initializing dataset object for type: {data_set_type}') data_set = DataSet( data_source=data_source, data_set_sub_type=data_set_type, data_set_name=f"_{data_set_type}_DataSet", props=None, quicksight_application=quicksight_application_stub ) logger.debug(f'After initializing dataset object for type: {data_set_type}') dump_state(data_set, 'Before delete') DataSetStubber.stub_delete_data_set(data_set_type) data_set.delete() dump_state(data_set, 'After delete')
def test_dashboard_update_source_entity(quicksight_application_stub, mininmal_data_sets_stub, template_arn): obj = Dashboard(quicksight_application=quicksight_application_stub, data_sets=mininmal_data_sets_stub.data_sets_stub, quicksight_template_arn=template_arn, props=None) sub_type = 'main' assert sub_type in obj.config_data assert 'SourceEntity' in obj.config_data[sub_type] source_entity = obj.source_entity._get_map(sub_type, "SourceEntity") dump_state(source_entity, 'Dump SourceEntity before update') assert 'SourceTemplate' in source_entity source_template = source_entity.get('SourceTemplate', None) assert 'DataSetReferences' in source_template assert 'Arn' in source_template obj.source_entity._update_source_entity(source_entity) dump_state(source_entity, 'Dump SourceEntity after update') assert template_arn == source_template['Arn']
def test_data_source_delete(quicksight_application_stub): obj = DataSource(quicksight_application=quicksight_application_stub, props=None) dump_state(obj) sub_type = 'main' dump_state(obj, 'Before delete') DataSourceStubber.stub_delete_data_source_call(sub_type) obj.delete() dump_state(obj, 'After delete')
def test_data_source_create(quicksight_application_stub): obj = DataSource(quicksight_application=quicksight_application_stub, props=None) assert obj.athena_workgroup assert obj.athena_workgroup == "primary" dump_state(obj) sub_type = 'main' dump_state(obj, 'Before create') DataSourceStubber.stub_create_data_source_call(sub_type) response = obj.create() assert response assert response["Status"] in [202] assert response["CreationStatus"] in ["CREATION_IN_PROGRESS"] assert obj.arn dump_state(obj, 'After create')
def test_quicksight_api_init(quicksight_application_resource_properties): resource_properties = quicksight_application_resource_properties qs_api = QuicksightApi(resource_properties) logger.debug(f'unit-test: Global data {qs_api.global_state}') dump_state(qs_api.global_state, 'After initialization QuicksightApi global_state')
def assert_success_response(response, expected_status_list=[202]): assert response.get('Status') in expected_status_list dump_state(response)
def test_dashboard_init(quicksight_application_stub, mininmal_data_sets_stub): obj = Dashboard(quicksight_application=quicksight_application_stub, data_sets=mininmal_data_sets_stub.data_sets_stub, quicksight_template_arn=template_arn, props=None) dump_state(obj, 'Dump dashboard')
def test_template_init(quicksight_application_stub): obj = Template(quicksight_application=quicksight_application_stub, data_sets=None, props=None) dump_state(obj)
def test_data_source_init(quicksight_application_stub): obj = DataSource(quicksight_application=quicksight_application_stub, props=None) dump_state(obj)