예제 #1
0
def test_camera_ip_host(camera):
    camera["host"] = "1.1.1.1"
    camera["connectionHost"] = "1.1.1.1"

    camera_obj = Camera.from_unifi_dict(**camera)
    assert camera_obj.host == IPv4Address("1.1.1.1")
    assert camera_obj.connection_host == IPv4Address("1.1.1.1")
예제 #2
0
def test_camera_dns_host(camera):
    camera["host"] = "se-gw.local"
    camera["connectionHost"] = "se-gw.local"

    camera_obj = Camera.from_unifi_dict(**camera)
    assert camera_obj.host == "se-gw.local"
    assert camera_obj.connection_host == "se-gw.local"
예제 #3
0
def camera_fixture(fixed_now: datetime):
    """Mock UniFi Protect Camera device."""

    # disable pydantic validation so mocking can happen
    Camera.__config__.validate_assignment = False

    data = json.loads(load_fixture("sample_camera.json", integration=DOMAIN))
    camera = Camera.from_unifi_dict(**data)
    camera.last_motion = fixed_now - timedelta(hours=1)

    yield camera

    Camera.__config__.validate_assignment = True
예제 #4
0
def mock_camera():
    """Mock UniFi Protect Camera device."""

    data = json.loads(load_fixture("sample_camera.json", integration=DOMAIN))
    return Camera.from_unifi_dict(**data)