Exemplo n.º 1
0
async def test_get_api_vehicles(account: RenaultAccount) -> None:
    """Test get_api_vehicles."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_ACCOUNT_URL}/vehicles?{QUERY_STRING}",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/vehicles/zoe_40.1.json"),
        )
        await account.get_api_vehicles()
Exemplo n.º 2
0
async def test_get_charge_mode(vehicle: RenaultVehicle) -> None:
    """Test get_charge_mode."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_VEHICLE_URL1}/charge-mode?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_data/charge-mode.json"),
        )
        assert await vehicle.get_charge_mode()
Exemplo n.º 3
0
async def test_get_battery_status(vehicle: RenaultVehicle) -> None:
    """Test get_battery_status."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_VEHICLE_URL2}/battery-status?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_data/battery-status.1.json"),
        )
        assert await vehicle.get_battery_status()
Exemplo n.º 4
0
async def test_set_charge_start(vehicle: RenaultVehicle) -> None:
    """Test set_charge_start."""
    with aioresponses() as mocked_responses:
        mocked_responses.post(
            f"{TEST_KAMEREON_VEHICLE_URL1}/actions/charging-start?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_action/charging-start.start.json"),
        )
        assert await vehicle.set_charge_start()
Exemplo n.º 5
0
async def test_get_notification_settings(vehicle: RenaultVehicle) -> None:
    """Test get_notification_settings."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_VEHICLE_URL1}/notification-settings?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_data/notification-settings.json"),
        )
        assert await vehicle.get_notification_settings()
Exemplo n.º 6
0
async def test_get_api_accounts(client: RenaultClient) -> None:
    """Test get_api_accounts."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_BASE_URL}/persons/{TEST_PERSON_ID}?{QUERY_STRING}",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/person.json"),
        )
        accounts = await client.get_api_accounts()
        assert len(accounts) == 2
Exemplo n.º 7
0
async def test_set_charge_mode(vehicle: RenaultVehicle) -> None:
    """Test set_charge_mode."""
    with aioresponses() as mocked_responses:
        mocked_responses.post(
            f"{TEST_KAMEREON_VEHICLE_URL1}/actions/charge-mode?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_action/charge-mode.schedule_mode.json"
            ),
        )
        assert await vehicle.set_charge_mode(ChargeMode.SCHEDULE_MODE)
Exemplo n.º 8
0
async def test_set_charge_schedules(vehicle: RenaultVehicle) -> None:
    """Test set_charge_schedules."""
    schedules: List[ChargeSchedule] = []
    with aioresponses() as mocked_responses:
        mocked_responses.post(
            f"{TEST_KAMEREON_VEHICLE_URL2}/actions/charge-schedule?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_action/charge-schedule.schedules.json"
            ),
        )
        assert await vehicle.set_charge_schedules(schedules)
Exemplo n.º 9
0
async def test_get_charges(vehicle: RenaultVehicle) -> None:
    """Test get_charges."""
    query_string = f"{QUERY_STRING}&end=20201115&start=20201001"
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_VEHICLE_URL1}/charges?{query_string}",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/vehicle_data/charges.json"),
        )
        assert await vehicle.get_charges(
            start=datetime(2020, 10, 1),
            end=datetime(2020, 11, 15),
        )
Exemplo n.º 10
0
async def test_person_id(websession: aiohttp.ClientSession) -> None:
    """Test get_account_info response."""
    with aioresponses() as mocked_responses:
        mocked_responses.post(
            f"{TEST_GIGYA_URL}/accounts.getAccountInfo",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/get_account_info.json"),
            headers={"content-type": "text/javascript"},
        )

        response = await gigya.get_account_info(websession, TEST_ROOT_URL,
                                                TEST_API_KEY, TEST_LOGIN_TOKEN)
        assert response.get_person_id() == TEST_PERSON_ID
Exemplo n.º 11
0
async def test_get_account_vehicles(websession: aiohttp.ClientSession) -> None:
    """Test get_account_vehicles."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_ACCOUNT_URL}/vehicles?{QUERY_STRING}",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/vehicles/zoe_40.1.json"),
        )
        await kamereon.get_account_vehicles(
            websession=websession,
            root_url=TEST_KAMEREON_URL,
            api_key=TEST_KAMEREON_APIKEY,
            gigya_jwt=TEST_JWT,
            country=TEST_COUNTRY,
            account_id=TEST_ACCOUNT_ID,
        )
Exemplo n.º 12
0
async def test_get_person(websession: aiohttp.ClientSession) -> None:
    """Test get_person."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_BASE_URL}/persons/{TEST_PERSON_ID}?{QUERY_STRING}",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/person.json"),
        )
        person = await kamereon.get_person(
            websession=websession,
            root_url=TEST_KAMEREON_URL,
            api_key=TEST_KAMEREON_APIKEY,
            gigya_jwt=TEST_JWT,
            country=TEST_COUNTRY,
            person_id=TEST_PERSON_ID,
        )
        assert len(person.accounts) == 2
Exemplo n.º 13
0
async def test_get_jwt_token(websession: aiohttp.ClientSession) -> None:
    """Test get_jwt response."""
    with aioresponses() as mocked_responses:
        mocked_responses.post(
            f"{TEST_GIGYA_URL}/accounts.getJWT",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/get_jwt.json"),
            headers={"content-type": "text/javascript"},
        )

        response = await gigya.get_jwt(
            websession,
            TEST_ROOT_URL,
            TEST_API_KEY,
            TEST_LOGIN_TOKEN,
        )
        assert response.get_jwt()
Exemplo n.º 14
0
async def test_login(websession: aiohttp.ClientSession) -> None:
    """Test login response."""
    with aioresponses() as mocked_responses:
        mocked_responses.post(
            f"{TEST_GIGYA_URL}/accounts.login",
            status=200,
            body=get_file_content(f"{FIXTURE_PATH}/login.json"),
            headers={"content-type": "text/javascript"},
        )
        response = await gigya.login(
            websession,
            TEST_ROOT_URL,
            TEST_API_KEY,
            TEST_USERNAME,
            TEST_PASSWORD,
        )
        assert response.get_session_cookie() == TEST_LOGIN_TOKEN
Exemplo n.º 15
0
async def test_get_vehicle_data(websession: aiohttp.ClientSession) -> None:
    """Test get_vehicle_data."""
    with aioresponses() as mocked_responses:
        mocked_responses.get(
            f"{TEST_KAMEREON_VEHICLE_URL2}/battery-status?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_data/battery-status.1.json"),
        )
        assert await kamereon.get_vehicle_data(
            websession=websession,
            root_url=TEST_KAMEREON_URL,
            api_key=TEST_KAMEREON_APIKEY,
            gigya_jwt=TEST_JWT,
            country=TEST_COUNTRY,
            account_id=TEST_ACCOUNT_ID,
            vin=TEST_VIN,
            endpoint="battery-status",
        )
Exemplo n.º 16
0
async def test_set_vehicle_action(websession: aiohttp.ClientSession) -> None:
    """Test set_vehicle_action."""
    with aioresponses() as mocked_responses:
        mocked_responses.post(
            f"{TEST_KAMEREON_VEHICLE_URL1}/actions/hvac-start?{QUERY_STRING}",
            status=200,
            body=get_file_content(
                f"{FIXTURE_PATH}/vehicle_action/hvac-start.cancel.json"),
        )
        assert await kamereon.set_vehicle_action(
            websession=websession,
            root_url=TEST_KAMEREON_URL,
            api_key=TEST_KAMEREON_APIKEY,
            gigya_jwt=TEST_JWT,
            country=TEST_COUNTRY,
            account_id=TEST_ACCOUNT_ID,
            vin=TEST_VIN,
            endpoint="hvac-start",
            attributes={"action": "cancel"},
        )