public void Verify_it_can_create_a_json_object() { // File was shortened to only show relevant information for this test var fileContents = @"{ ""components"": [ { ""purl"": ""pkg:nuget/org.corgibytes.calculatron/[email protected]"" }, { ""purl"": ""pkg:nuget/org.corgibytes.flyswatter/[email protected]"" }, { ""purl"": ""pkg:composer/org.corgibytes.tea/[email protected]"" } ] }"; _fileReaderService.FeedJson(fileContents); var expectedPackageUrls = new List <PackageURL> { new("pkg:nuget/org.corgibytes.calculatron/[email protected]"), new("pkg:nuget/org.corgibytes.flyswatter/[email protected]"), new("pkg:composer/org.corgibytes.tea/[email protected]") }; Assert.Equivalent(expectedPackageUrls, _readCycloneDxFile.AsPackageUrls("This/is/a/filepath")); }
public void Verify_it_can_process_an_entire_file_as_list() { // This file only resembles what we need from it. A typical CycloneDX file would contain more info var fileContents = @"{ ""components"": [ { ""purl"": ""pkg:nuget/org.corgibytes.flyswatter/[email protected]"" }, { ""purl"": ""pkg:nuget/org.corgibytes.tea/[email protected]"" } ] }"; _fileReaderService.FeedJson(fileContents); var expectedList = new List <PackageLibYear> { new( new DateTimeOffset(1990, 1, 29, 0, 0, 0, TimeSpan.Zero), new PackageURL("pkg:nuget/org.corgibytes.flyswatter/[email protected]"), new DateTimeOffset(1990, 1, 29, 0, 0, 0, TimeSpan.Zero), new PackageURL("pkg:nuget/org.corgibytes.flyswatter/[email protected]"), 0 ), new( new DateTimeOffset(2004, 11, 11, 0, 0, 0, TimeSpan.Zero), new PackageURL("pkg:nuget/org.corgibytes.tea/[email protected]"), new DateTimeOffset(2011, 10, 26, 0, 0, 0, TimeSpan.Zero), new PackageURL("pkg:nuget/org.corgibytes.tea/[email protected]"), 6.96 ) }; var actualList = _calculateLibYearFromCycloneDxFile.AsList("/this/is/a/path"); Assert.Equivalent(expectedList, actualList); }