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"); }
public static string CreateDocument(Bom bom, bool json) { if (json) { return(JsonBomSerializer.Serialize(bom)); } else { return(XmlBomSerializer.Serialize(bom)); } }
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)); }
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)); }
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); }
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)); }
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)); } }