@@ -759,6 +759,35 @@ def test_cases_render_valid(self, of: OutputFormat, sv: SchemaVersion, *_: Any,
759759 super ()._test_cases_render (bom , of , sv )
760760
761761
762+
763+ @ddt
764+ class TestEnumCryptoMode (_EnumTestCase ):
765+
766+ @idata (set (chain (
767+ dp_cases_from_xml_schemas (f"./{ SCHEMA_NS } complexType[@name='cryptoPropertiesType']/{ SCHEMA_NS } sequence/{ SCHEMA_NS } element[@name='algorithmProperties']/{ SCHEMA_NS } complexType/{ SCHEMA_NS } sequence/{ SCHEMA_NS } element[@name='mode']/{ SCHEMA_NS } simpleType" ),
768+ dp_cases_from_json_schemas ('definitions' , 'cryptoProperties' , 'properties' , 'algorithmProperties' , 'properties' , 'mode' ),
769+ )))
770+ def test_knows_value (self , value : str ) -> None :
771+ super ()._test_knows_value (CryptoMode , value )
772+
773+ @named_data (* (d for d in NAMED_OF_SV if d [2 ] >= SchemaVersion .V1_6 ))
774+ def test_cases_render_valid (self , of : OutputFormat , sv : SchemaVersion , * _ : Any , ** __ : Any ) -> None :
775+ bom = _make_bom (
776+ components = [
777+ Component (
778+ name = f'CryptoMode: { cm .name } ' , bom_ref = f'dummy-CIP:{ cm .name } ' ,
779+ type = ComponentType .CRYPTOGRAPHIC_ASSET ,
780+ crypto_properties = CryptoProperties (
781+ asset_type = CryptoAssetType .ALGORITHM ,
782+ algorithm_properties = AlgorithmProperties (
783+ mode = cm
784+ )
785+ )
786+ ) for cm in CryptoMode
787+ ])
788+ super ()._test_cases_render (bom , of , sv )
789+
790+
762791"""
763792@ddt
764793class TestEnum...(_EnumTestCase):
@@ -782,8 +811,6 @@ def test_cases_render_valid(self, of: OutputFormat, sv: SchemaVersion, *_: Any,
782811
783812"""
784813missing:
785- - CryptoCertificationLevel
786- - CryptoMode
787814- CryptoPadding
788815- CryptoFunction
789816- RelatedCryptoMaterialType
0 commit comments