28 lines
859 B
Python
28 lines
859 B
Python
import unittest
|
|
|
|
from app.crud import qc_inspection_item_template as svc
|
|
|
|
|
|
class QcInspectionItemTemplateHelpersTests(unittest.TestCase):
|
|
def test_parse_ids_splits_and_dedupes(self):
|
|
self.assertEqual(svc.parse_id_csv("a,b, a,,c"), ["a", "b", "c"])
|
|
|
|
def test_join_ids(self):
|
|
self.assertEqual(svc.join_id_list(["a", "b"]), "a,b")
|
|
self.assertEqual(svc.join_id_list([]), "")
|
|
|
|
def test_filter_active_ids(self):
|
|
active = {"1", "2"}
|
|
kept, skipped = svc.filter_active_ids(["1", "9", "2", "9"], active)
|
|
self.assertEqual(kept, ["1", "2"])
|
|
self.assertEqual(skipped, 2)
|
|
|
|
def test_require_at_least_one_item(self):
|
|
with self.assertRaises(ValueError):
|
|
svc.require_nonempty_items([], [])
|
|
svc.require_nonempty_items(["1"], [])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
unittest.main()
|