Beispiel #1
0
def test_api_enabler_listener_without_data(mocker):
    mocker.patch.object(GoogleCredentials,
                        "get_application_default",
                        return_value="")
    with pytest.raises(ValueError, message="Received data is empty."):
        data = {}
        uut.api_enabler_listener(data, None)
Beispiel #2
0
def test_api_enabler_listener_with_wrong_data():
    with pytest.raises(
            ValueError,
            message="Received data is not related to CreateObject event"):
        data = {
            "data":
            base64.b64encode(
                "{\"protoPayload\": {\"methodName\": \"Wrooong\"}}")
        }
        main.api_enabler_listener(data)
Beispiel #3
0
def test_api_enabler_listener_with_wrong_data(mocker):
    mocker.patch.object(GoogleCredentials,
                        "get_application_default",
                        return_value="")
    with pytest.raises(
            ValueError,
            message="Received data is not related to CreateObject event"):
        data = {
            "data":
            base64.b64encode(
                '{"protoPayload": {"methodName": "Wrooong"}}'.encode())
        }
        uut.api_enabler_listener(data, None)
Beispiel #4
0
def test_api_enabler_listener_changed_init_services():
    main.get_credentials = Mock(return_value='')
    main.get_enabled_services = Mock(return_value=[])
    main.enable_service = Mock(return_value=True)
    main.init_services = Mock(
        return_value={
            'container.googleapis.com': True,
            'compute.googleapis.com': False,
            'storage-api.googleapis.com': True,
            'cloudresourcemanager.googleapis.com': True
        })

    with open(datafile('create_project_logs.json')) as f:
        raw_data = f.read()
        data = {"data": base64.b64encode(raw_data)}

    response = json.loads(main.api_enabler_listener(data))

    assert 'enabledServices' in response
    assert '37559420870' in response['enabledServices']
    assert 'projects/37559420870/services/cloudresourcemanager.googleapis.com' in response[
        'enabledServices']['37559420870']
    assert 'projects/37559420870/services/container.googleapis.com' in response[
        'enabledServices']['37559420870']
    assert 'projects/37559420870/services/storage-api.googleapis.com' in response[
        'enabledServices']['37559420870']
Beispiel #5
0
def test_api_enabler_listener_changed_enabled_services():
    main.get_credentials = Mock(return_value='')
    main.get_enabled_services = Mock(return_value=[{
        'name': 'projects/37559420870/services/storage-api.googleapis.com',
        'config': {
            'name': 'storage-api.googleapis.com'
        },
        'parent': 'nevermind',
        'state': 'ENABLED'
    }])
    main.enable_service = Mock(return_value=True)

    with open(datafile('create_project_logs.json')) as f:
        raw_data = f.read()
        data = {"data": base64.b64encode(raw_data)}

    response = json.loads(main.api_enabler_listener(data))

    assert 'enabledServices' in response
    assert '37559420870' in response['enabledServices']
    assert 'projects/37559420870/services/compute.googleapis.com' in response[
        'enabledServices']['37559420870']
    assert 'projects/37559420870/services/cloudresourcemanager.googleapis.com' in response[
        'enabledServices']['37559420870']
    assert 'projects/37559420870/services/container.googleapis.com' in response[
        'enabledServices']['37559420870']
Beispiel #6
0
def test_api_enabler_listener_changed_init_services(mocker):
    mocker.patch.object(GoogleCredentials,
                        "get_application_default",
                        return_value="")
    mocker.patch.object(discovery, "build")
    mocker.patch.dict(
        os.environ,
        {
            "SERVICES_TO_ENABLE":
            "cloudresourcemanager.googleapis.com,container.googleapis.com,storage-api.googleapis.com"
        },
    )

    with Path.open(datafile("create_project_logs.json")) as f:
        raw_data = f.read()
        data = {"data": base64.b64encode(raw_data.encode())}

    response = json.loads(uut.api_enabler_listener(data, None))

    assert "enabledServices" in response
    assert "37559420870" in response["enabledServices"]
    assert ("projects/37559420870/services/cloudresourcemanager.googleapis.com"
            in response["enabledServices"]["37559420870"])
    assert ("projects/37559420870/services/container.googleapis.com"
            in response["enabledServices"]["37559420870"])
    assert ("projects/37559420870/services/storage-api.googleapis.com"
            in response["enabledServices"]["37559420870"])
Beispiel #7
0
def test_api_enabler_listener_without_data():
    with pytest.raises(ValueError, message="Received data is empty."):
        data = {}
        main.api_enabler_listener(data)