21
21
from cyclonedx .exception .factory import InvalidLicenseExpressionException , InvalidSpdxLicenseException
22
22
from cyclonedx .factory .license import LicenseFactory
23
23
from cyclonedx .model import AttachedText , XsUri
24
- from cyclonedx .model .license import DisjunctiveLicense , LicenseExpression
24
+ from cyclonedx .model .license import DisjunctiveLicense , LicenseAcknowledgement , LicenseExpression
25
25
26
26
27
27
class TestFactoryLicense (unittest .TestCase ):
28
28
29
29
def test_make_from_string_with_id (self ) -> None :
30
30
text = unittest .mock .NonCallableMock (spec = AttachedText )
31
31
url = unittest .mock .NonCallableMock (spec = XsUri )
32
- expected = DisjunctiveLicense (id = 'bar' , text = text , url = url )
32
+ acknowledgement = unittest .mock .NonCallableMock (spec = LicenseAcknowledgement )
33
+ expected = DisjunctiveLicense (id = 'bar' , text = text , url = url , acknowledgement = acknowledgement )
33
34
34
35
with unittest .mock .patch ('cyclonedx.factory.license.spdx_fixup' , return_value = 'bar' ), \
35
36
unittest .mock .patch ('cyclonedx.factory.license.is_spdx_compound_expression' , return_value = True ):
36
- actual = LicenseFactory ().make_from_string ('foo' , license_text = text , license_url = url )
37
+ actual = LicenseFactory ().make_from_string ('foo' ,
38
+ license_text = text ,
39
+ license_url = url ,
40
+ license_acknowledgement = acknowledgement )
37
41
38
42
self .assertEqual (expected , actual )
39
43
40
44
def test_make_from_string_with_name (self ) -> None :
41
45
text = unittest .mock .NonCallableMock (spec = AttachedText )
42
46
url = unittest .mock .NonCallableMock (spec = XsUri )
43
- expected = DisjunctiveLicense (name = 'foo' , text = text , url = url )
47
+ acknowledgement = unittest .mock .NonCallableMock (spec = LicenseAcknowledgement )
48
+ expected = DisjunctiveLicense (name = 'foo' , text = text , url = url , acknowledgement = acknowledgement )
44
49
45
50
with unittest .mock .patch ('cyclonedx.factory.license.spdx_fixup' , return_value = None ), \
46
51
unittest .mock .patch ('cyclonedx.factory.license.is_spdx_compound_expression' , return_value = False ):
47
- actual = LicenseFactory ().make_from_string ('foo' , license_text = text , license_url = url )
52
+ actual = LicenseFactory ().make_from_string ('foo' ,
53
+ license_text = text ,
54
+ license_url = url ,
55
+ license_acknowledgement = acknowledgement )
48
56
49
57
self .assertEqual (expected , actual )
50
58
51
59
def test_make_from_string_with_expression (self ) -> None :
52
- expected = LicenseExpression ('foo' )
60
+ acknowledgement = unittest .mock .NonCallableMock (spec = LicenseAcknowledgement )
61
+ expected = LicenseExpression ('foo' , acknowledgement = acknowledgement )
53
62
54
63
with unittest .mock .patch ('cyclonedx.factory.license.spdx_fixup' , return_value = None ), \
55
64
unittest .mock .patch ('cyclonedx.factory.license.is_spdx_compound_expression' , return_value = True ):
56
- actual = LicenseFactory ().make_from_string ('foo' )
65
+ actual = LicenseFactory ().make_from_string ('foo' ,
66
+ license_acknowledgement = acknowledgement )
57
67
58
68
self .assertEqual (expected , actual )
59
69
60
70
def test_make_with_id (self ) -> None :
61
71
text = unittest .mock .NonCallableMock (spec = AttachedText )
62
72
url = unittest .mock .NonCallableMock (spec = XsUri )
63
- expected = DisjunctiveLicense (id = 'bar' , text = text , url = url )
73
+ acknowledgement = unittest .mock .NonCallableMock (spec = LicenseAcknowledgement )
74
+ expected = DisjunctiveLicense (id = 'bar' , text = text , url = url , acknowledgement = acknowledgement )
64
75
65
76
with unittest .mock .patch ('cyclonedx.factory.license.spdx_fixup' , return_value = 'bar' ):
66
- actual = LicenseFactory ().make_with_id (spdx_id = 'foo' , text = text , url = url )
77
+ actual = LicenseFactory ().make_with_id (spdx_id = 'foo' , text = text , url = url , acknowledgement = acknowledgement )
67
78
68
79
self .assertEqual (expected , actual )
69
80
@@ -75,14 +86,16 @@ def test_make_with_id_raises(self) -> None:
75
86
def test_make_with_name (self ) -> None :
76
87
text = unittest .mock .NonCallableMock (spec = AttachedText )
77
88
url = unittest .mock .NonCallableMock (spec = XsUri )
78
- expected = DisjunctiveLicense (name = 'foo' , text = text , url = url )
79
- actual = LicenseFactory ().make_with_name (name = 'foo' , text = text , url = url )
89
+ acknowledgement = unittest .mock .NonCallableMock (spec = LicenseAcknowledgement )
90
+ expected = DisjunctiveLicense (name = 'foo' , text = text , url = url , acknowledgement = acknowledgement )
91
+ actual = LicenseFactory ().make_with_name (name = 'foo' , text = text , url = url , acknowledgement = acknowledgement )
80
92
self .assertEqual (expected , actual )
81
93
82
94
def test_make_with_expression (self ) -> None :
83
- expected = LicenseExpression ('foo' )
95
+ acknowledgement = unittest .mock .NonCallableMock (spec = LicenseAcknowledgement )
96
+ expected = LicenseExpression ('foo' , acknowledgement = acknowledgement )
84
97
with unittest .mock .patch ('cyclonedx.factory.license.is_spdx_compound_expression' , return_value = True ):
85
- actual = LicenseFactory ().make_with_expression (expression = 'foo' )
98
+ actual = LicenseFactory ().make_with_expression (expression = 'foo' , acknowledgement = acknowledgement )
86
99
self .assertEqual (expected , actual )
87
100
88
101
def test_make_with_expression_raises (self ) -> None :
0 commit comments