Skip to content

Commit

Permalink
feat: add test fixtures related to bom.definitions
Browse files Browse the repository at this point in the history
for #697

Signed-off-by: Hakan Dilek <hakandilek@gmail.com>
  • Loading branch information
hakandilek committed Oct 16, 2024
1 parent 1c78d0b commit 095d99a
Show file tree
Hide file tree
Showing 23 changed files with 292 additions and 0 deletions.
59 changes: 59 additions & 0 deletions tests/_data/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@
RelatedCryptoMaterialState,
RelatedCryptoMaterialType,
)
from cyclonedx.model.definition import CreId, DefinitionRepository, Level, Requirement, Standard
from cyclonedx.model.dependency import Dependency
from cyclonedx.model.impact_analysis import (
ImpactAnalysisAffectedStatus,
Expand Down Expand Up @@ -1273,6 +1274,62 @@ def get_bom_for_issue_630_empty_property() -> Bom:
})


def get_bom_with_definitions_standards() -> Bom:
"""
Returns a BOM with definitions and standards only.
"""
return _make_bom(
definitions=DefinitionRepository(standards=[
Standard(name='Some Standard', version='1.2.3', description='Some description',
owner='Some Owner', external_references=[get_external_reference_2()]
)
])
)


def get_bom_with_definitions_and_detailed_standards() -> Bom:
"""
Returns a BOM with definitions and multiple detailed standards including requirements and levels.
"""
return _make_bom(
definitions=DefinitionRepository(
standards=[
Standard(name='Some Standard', version='1.2.3', description='Some description',
owner='Some Owner', external_references=[get_external_reference_1()],
requirements=[
Requirement(identifier='REQ-1', title='Requirement 1', text='some requirement text',
bom_ref='req-1', descriptions=['Requirement 1 described here', 'and here'],
open_cre=[CreId('CRE:1-2')], properties=[Property(name='key1', value='val1')]
),
Requirement(identifier='REQ-2', title='Requirement 2', text='some requirement text',
bom_ref='req-2', descriptions=['Requirement 2 described here'],
open_cre=[CreId('CRE:1-2'), CreId('CRE:3-4')],
properties=[Property(name='key2', value='val2')]
),
],
levels=[
Level(identifier='LVL-1', title='Level 1', description='Level 1 description',
bom_ref='lvl-1', requirements=['req-1', 'req-2']),
Level(identifier='LVL-2', title='Level 2', description='Level 2 description',
bom_ref='lvl-2', requirements=['req-2'])
]),
Standard(name='Another Standard', version='1.0.0', description='Another description',
owner='Another Owner', external_references=[get_external_reference_2()],
requirements=[
Requirement(identifier='REQ-3', title='Requirement 3', text='some requirement text',
bom_ref='req-3', descriptions=['Requirement 3 described here', 'and here'],
open_cre=[CreId('CRE:5-6'), CreId('CRE:7-8')],
properties=[Property(name='key3', value='val3')]
)
],
levels=[
Level(identifier='LVL-3', title='Level 3', description='Level 3 description',
bom_ref='lvl-3', requirements=['req-3'])
])
]
))


# ---


Expand Down Expand Up @@ -1318,4 +1375,6 @@ def get_bom_for_issue_630_empty_property() -> Bom:
get_bom_for_issue_598_multiple_components_with_purl_qualifiers,
get_bom_with_component_setuptools_with_v16_fields,
get_bom_for_issue_630_empty_property,
get_bom_with_definitions_standards,
get_bom_with_definitions_and_detailed_standards,
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.0" version="1">
<components/>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.1" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<components/>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.2b.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.2"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.2" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.3a.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.3"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.3" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.4.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.4"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.4" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"properties": [
{
"name": "key1",
"value": "val1"
},
{
"name": "key2",
"value": "val2"
}
],
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.5.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.5"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.5" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
<properties>
<property name="key1">val1</property>
<property name="key2">val2</property>
</properties>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.0" version="1">
<components/>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.1" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<components/>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.2b.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.2"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.2" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.3a.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.3"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.3" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.4.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.4"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.4" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"properties": [
{
"name": "key1",
"value": "val1"
},
{
"name": "key2",
"value": "val2"
}
],
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.5.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.5"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.5" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
<properties>
<property name="key1">val1</property>
<property name="key2">val2</property>
</properties>
</bom>
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"definitions": {
"standards": [
{
"description": "Some description",
"externalReferences": [
{
"type": "website",
"url": "https://cyclonedx.org"
}
],
"name": "Some Standard",
"owner": "Some Owner",
"version": "1.2.3"
}
]
},
"metadata": {
"timestamp": "2023-01-07T13:44:32.312678+00:00"
},
"properties": [
{
"name": "key1",
"value": "val1"
},
{
"name": "key2",
"value": "val2"
}
],
"serialNumber": "urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac",
"version": 1,
"$schema": "http://cyclonedx.org/schema/bom-1.6.schema.json",
"bomFormat": "CycloneDX",
"specVersion": "1.6"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<?xml version="1.0" ?>
<bom xmlns="http://cyclonedx.org/schema/bom/1.6" serialNumber="urn:uuid:1441d33a-e0fc-45b5-af3b-61ee52a88bac" version="1">
<metadata>
<timestamp>2023-01-07T13:44:32.312678+00:00</timestamp>
</metadata>
<properties>
<property name="key1">val1</property>
<property name="key2">val2</property>
</properties>
<definitions>
<standards>
<standard>
<name>Some Standard</name>
<version>1.2.3</version>
<description>Some description</description>
<owner>Some Owner</owner>
<externalReferences>
<reference type="website">
<url>https://cyclonedx.org</url>
</reference>
</externalReferences>
</standard>
</standards>
</definitions>
</bom>

0 comments on commit 095d99a

Please sign in to comment.