update tests

This commit is contained in:
Josh Hawkins 2026-01-15 11:44:03 -06:00
parent 4277834757
commit 9128881924

View File

@ -343,8 +343,24 @@ class TestConfig(unittest.TestCase):
"fps": 5, "fps": 5,
}, },
"objects": { "objects": {
"mask": "0,0,1,1,0,1", "mask": {
"filters": {"dog": {"mask": "1,1,1,1,1,1"}}, "global_mask_1": {
"friendly_name": "Global Mask 1",
"enabled": True,
"coordinates": "0,0,1,1,0,1",
}
},
"filters": {
"dog": {
"mask": {
"dog_mask_1": {
"friendly_name": "Dog Mask 1",
"enabled": True,
"coordinates": "1,1,1,1,1,1",
}
}
}
},
}, },
} }
}, },
@ -353,8 +369,10 @@ class TestConfig(unittest.TestCase):
frigate_config = FrigateConfig(**config) frigate_config = FrigateConfig(**config)
back_camera = frigate_config.cameras["back"] back_camera = frigate_config.cameras["back"]
assert "dog" in back_camera.objects.filters assert "dog" in back_camera.objects.filters
assert len(back_camera.objects.filters["dog"].raw_mask) == 2 # dog filter has its own mask + global mask merged
assert len(back_camera.objects.filters["person"].raw_mask) == 1 assert len(back_camera.objects.filters["dog"].mask) == 2
# person filter only has the global mask
assert len(back_camera.objects.filters["person"].mask) == 1
def test_motion_mask_relative_matches_explicit(self): def test_motion_mask_relative_matches_explicit(self):
config = { config = {
@ -373,9 +391,13 @@ class TestConfig(unittest.TestCase):
"fps": 5, "fps": 5,
}, },
"motion": { "motion": {
"mask": [ "mask": {
"0,0,200,100,600,300,800,400", "explicit_mask": {
] "friendly_name": "Explicit Mask",
"enabled": True,
"coordinates": "0,0,200,100,600,300,800,400",
}
}
}, },
}, },
"relative": { "relative": {
@ -390,9 +412,13 @@ class TestConfig(unittest.TestCase):
"fps": 5, "fps": 5,
}, },
"motion": { "motion": {
"mask": [ "mask": {
"0.0,0.0,0.25,0.25,0.75,0.75,1.0,1.0", "relative_mask": {
] "friendly_name": "Relative Mask",
"enabled": True,
"coordinates": "0.0,0.0,0.25,0.25,0.75,0.75,1.0,1.0",
}
}
}, },
}, },
}, },
@ -400,8 +426,8 @@ class TestConfig(unittest.TestCase):
frigate_config = FrigateConfig(**config) frigate_config = FrigateConfig(**config)
assert np.array_equal( assert np.array_equal(
frigate_config.cameras["explicit"].motion.mask, frigate_config.cameras["explicit"].motion.rasterized_mask,
frigate_config.cameras["relative"].motion.mask, frigate_config.cameras["relative"].motion.rasterized_mask,
) )
def test_default_input_args(self): def test_default_input_args(self):