Exemple #1
0
 public static string BomSerializer(CycloneDX.Models.v1_2.Bom bom, BomFormat format)
 {
     if (format == BomFormat.Json || format == BomFormat.Json_v1_2)
     {
         return(JsonBomSerializer.Serialize(bom));
     }
     else if (format == BomFormat.Xml || format == BomFormat.Xml_v1_2)
     {
         return(XmlBomSerializer.Serialize(bom));
     }
     else if (format == BomFormat.Xml_v1_1)
     {
         return(XmlBomSerializer.Serialize(new CycloneDX.Models.v1_1.Bom(bom)));
     }
     else if (format == BomFormat.Xml_v1_0)
     {
         var v1_1_bom = new CycloneDX.Models.v1_1.Bom(bom);
         return(XmlBomSerializer.Serialize(new CycloneDX.Models.v1_0.Bom(v1_1_bom)));
     }
     else if (format == BomFormat.SpdxTag || format == BomFormat.SpdxTag_v2_2)
     {
         return(SpdxTagSerializer.Serialize(bom, SpdxVersion.v2_2));
     }
     else if (format == BomFormat.SpdxTag_v2_1)
     {
         return(SpdxTagSerializer.Serialize(bom, SpdxVersion.v2_1));
     }
     else if (format == BomFormat.Csv)
     {
         return(CsvSerializer.Serialize(bom));
     }
     throw new UnsupportedFormatException("Unsupported SBOM file format");
 }
Exemple #2
0
 public static string CreateDocument(Bom bom, bool json)
 {
     if (json)
     {
         return(JsonBomSerializer.Serialize(bom));
     }
     else
     {
         return(XmlBomSerializer.Serialize(bom));
     }
 }
Exemple #3
0
        public void Can_Deserialize(string version)
        {
            var resourceFilename = Path.Join("Resources", "bom-" + version + ".xml");
            var xmlBom           = File.ReadAllText(resourceFilename);

            var bom = XmlBomDeserializer.Deserialize(xmlBom);

            xmlBom = XmlBomSerializer.Serialize(bom);

            Snapshot.Match(xmlBom, SnapshotNameExtension.Create(version));
        }
Exemple #4
0
        public void XmlRoundTripTest_v1_2(string filename)
        {
            var resourceFilename = Path.Join("Resources", filename + "-1.2.xml");
            var xmlBom           = File.ReadAllText(resourceFilename);

            var bom = XmlBomDeserializer.Deserialize_v1_2(xmlBom);

            xmlBom = XmlBomSerializer.Serialize(bom);

            Snapshot.Match(xmlBom, SnapshotNameExtension.Create(filename));
        }
Exemple #5
0
        public void XmlRoundTripTest()
        {
            var resourceFilename = Path.Join("Resources", "bom.xml");
            var xmlBom           = File.ReadAllText(resourceFilename);

            var bom = XmlBomDeserializer.Deserialize(xmlBom);

            xmlBom = XmlBomSerializer.Serialize(bom);

            Snapshot.Match(xmlBom);
        }
Exemple #6
0
        public void BomConversionTest_v1_2_to_v1_1_Test(string filename)
        {
            var resourceFilename = Path.Join("Resources", "v1.2", filename + "-1.2.xml");
            var xmlBom           = File.ReadAllText(resourceFilename);

            var bom       = XmlBomDeserializer.Deserialize_v1_2(xmlBom);
            var actualBom = new Models.v1_1.Bom(bom);

            xmlBom = XmlBomSerializer.Serialize(actualBom);

            Snapshot.Match(xmlBom, SnapshotNameExtension.Create(filename));
        }
Exemple #7
0
        public void DeserializationTests(string filename)
        {
            using (var tempDirectory = new TempDirectory())
            {
                var resourceFilename = Path.Join("Resources", filename + ".csv");
                var inputBomString   = File.ReadAllText(resourceFilename);

                var bom = CsvSerializer.Deserialize(inputBomString);

                var bomXml = XmlBomSerializer.Serialize(bom);

                Snapshot.Match(bomXml, SnapshotNameExtension.Create(filename));
            }
        }