2323from ddt import data , ddt , named_data , unpack
2424
2525from cyclonedx .model .bom import Bom
26- from cyclonedx .output import make_outputter
26+ from cyclonedx .model .bom_ref import BomRef
27+ from cyclonedx .output import BomRefDiscriminator , make_outputter
2728from cyclonedx .schema import OutputFormat , SchemaVersion
2829
2930
@@ -48,3 +49,33 @@ def test_fails_on_wrong_args(self, of: OutputFormat, sv: SchemaVersion, raises_r
4849 bom = Mock (spec = Bom )
4950 with self .assertRaisesRegex (* raises_regex ):
5051 make_outputter (bom , of , sv )
52+
53+
54+ class TestBomRefDiscriminator (TestCase ):
55+ """
56+ system under test is deprecated: BomRefDiscriminator
57+ """
58+
59+ def test_discriminate_and_reset_with (self ) -> None :
60+ bomref1 = BomRef ('djdlkfjdslkf' )
61+ bomref2 = BomRef ('djdlkfjdslkf' )
62+ self .assertEqual (bomref1 .value , bomref2 .value , 'blank' )
63+ discr = BomRefDiscriminator ([bomref1 , bomref2 ])
64+ self .assertEqual (bomref1 .value , bomref2 .value , 'init' )
65+ discr .discriminate ()
66+ self .assertNotEqual (bomref1 .value , bomref2 .value , 'should be discriminated' )
67+ discr .reset ()
68+ self .assertEqual ('djdlkfjdslkf' , bomref1 .value )
69+ self .assertEqual ('djdlkfjdslkf' , bomref2 .value )
70+
71+ def test_discriminate_and_reset_manually (self ) -> None :
72+ bomref1 = BomRef ('djdlkfjdslkf' )
73+ bomref2 = BomRef ('djdlkfjdslkf' )
74+ self .assertEqual (bomref1 .value , bomref2 .value , 'blank' )
75+ discr = BomRefDiscriminator ([bomref1 , bomref2 ])
76+ self .assertEqual (bomref1 .value , bomref2 .value , 'init' )
77+ with discr :
78+ self .assertNotEqual (bomref1 .value , bomref2 .value , 'should be discriminated' )
79+ discr .reset ()
80+ self .assertEqual ('djdlkfjdslkf' , bomref1 .value )
81+ self .assertEqual ('djdlkfjdslkf' , bomref2 .value )
0 commit comments