# -*- coding: utf-8 -*- from datetime import datetime from pathlib import Path import pytest import torch from . import check_bad_imports from mmp.a8 import bbr current_assignment = pytest.mark.skipif( not (datetime(2025, 12, 18) <= datetime.now()), reason="This is not the current assignment.", ) @current_assignment def test_no_abs_import(): paths = list(Path().glob("mmp/a8/*.py")) check_bad_imports(paths) @current_assignment def test_bbr(): anchor_boxes = torch.tensor([10, 100, 10, 100]).unsqueeze(0) adjustments = torch.tensor([0.2, 0.2, 0.2, 0.2]).unsqueeze(0) groundtruths = torch.tensor([20, 100, 20, 90]).unsqueeze(0) loss = bbr.get_bbr_loss(anchor_boxes, adjustments, groundtruths) assert isinstance(loss, torch.Tensor) assert loss.ndim == 0 anchor_pos = torch.tensor([10, 100, 10, 100]) adj = torch.tensor([0.2, 0.2, 0.2, 0.2]) rect = bbr.apply_bbr(anchor_pos, adj) assert isinstance(rect.x1, float)