Example #1
0
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'])
Example #3
0
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')
Example #4
0
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')
Example #6
0
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')
Example #8
0
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')
Example #10
0
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')
Example #11
0
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')
Example #12
0
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')
Example #19
0
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)