From c5f89ffec75fbeaf22052b13220ba2b010632627 Mon Sep 17 00:00:00 2001 From: sensslen Date: Tue, 1 Nov 2022 07:49:47 +0100 Subject: [PATCH] combine validation and errors into one result (#155) --- README.md | 3 +- .../Extension/AsyncEnumerableExtension.cs | 28 + .../LicenseInformationOrigin.cs | 3 +- .../LicenseValidationError.cs | 9 - .../LicenseValidationResult.cs | 17 + .../LicenseValidator/LicenseValidator.cs | 151 +- .../LicenseValidator/ValidatedLicense.cs | 9 - .../LicenseValidator/ValidationError.cs | 4 + src/NuGetUtility/Output/IOuputFormatter.cs | 10 - src/NuGetUtility/Output/IOutputFormatter.cs | 9 + .../Output/Json/JsonOutputFormatter.cs | 25 +- ...JsonConverterWithOmittingEmptyErrorList.cs | 37 + .../Output/Table/TableOutputFormatter.cs | 57 +- src/NuGetUtility/Output/Table/TablePrinter.cs | 47 +- .../Output/Table/TablePrinterExtensions.cs | 8 +- .../PackageInformationReader.cs | 16 +- .../ProjectWithReferencedPackages.cs | 6 + .../ReferencedPackageWithContext.cs | 6 + src/NuGetUtility/Program.cs | 63 +- .../Extensions/MemoryStreamExtension.cs | 6 +- .../EnumerableExtensions.cs | 4 +- ...seValidationResultValueEqualityComparer.cs | 36 + .../LicenseValidator/LicenseValidatorTest.cs | 466 +++--- ...rintCorrectTable_errorCount=1.verified.txt | 8 - ...intCorrectTable_errorCount=20.verified.txt | 122 -- ...rintCorrectTable_errorCount=5.verified.txt | 32 - ...Table_validatedLicenseCount=1.verified.txt | 8 - ...ble_validatedLicenseCount=100.verified.txt | 602 ------- ...able_validatedLicenseCount=20.verified.txt | 122 -- ...Table_validatedLicenseCount=5.verified.txt | 32 - .../Json/JsonOutputFormatterPrettyTest.cs | 55 - ...rintCorrectTable_errorCount=0.verified.txt | 1 - ...rintCorrectTable_errorCount=1.verified.txt | 1 - ...intCorrectTable_errorCount=20.verified.txt | 1 - ...rintCorrectTable_errorCount=5.verified.txt | 1 - ...Table_validatedLicenseCount=0.verified.txt | 1 - ...Table_validatedLicenseCount=1.verified.txt | 1 - ...ble_validatedLicenseCount=100.verified.txt | 1 - ...able_validatedLicenseCount=20.verified.txt | 1 - ...Table_validatedLicenseCount=5.verified.txt | 1 - .../Output/Json/JsonOutputFormatterTest.cs | 58 +- ...ble_validCount=0_errorCount=1.verified.txt | 1 + ...le_validCount=0_errorCount=20.verified.txt | 1 + ...ble_validCount=0_errorCount=3.verified.txt | 1 + ...ble_validCount=0_errorCount=5.verified.txt | 1 + ...e_validCount=100_errorCount=1.verified.txt | 1 + ..._validCount=100_errorCount=20.verified.txt | 1 + ...e_validCount=100_errorCount=3.verified.txt | 1 + ...e_validCount=100_errorCount=5.verified.txt | 1 + ...ble_validCount=1_errorCount=1.verified.txt | 1 + ...le_validCount=1_errorCount=20.verified.txt | 1 + ...ble_validCount=1_errorCount=3.verified.txt | 1 + ...ble_validCount=1_errorCount=5.verified.txt | 1 + ...le_validCount=20_errorCount=1.verified.txt | 1 + ...e_validCount=20_errorCount=20.verified.txt | 1 + ...le_validCount=20_errorCount=3.verified.txt | 1 + ...le_validCount=20_errorCount=5.verified.txt | 1 + ...ble_validCount=5_errorCount=1.verified.txt | 1 + ...le_validCount=5_errorCount=20.verified.txt | 1 + ...ble_validCount=5_errorCount=3.verified.txt | 1 + ...ble_validCount=5_errorCount=5.verified.txt | 1 + ...able_validatedLicenseCount=0.verified.txt} | 0 ...Table_validatedLicenseCount=1.verified.txt | 1 + ...ble_validatedLicenseCount=100.verified.txt | 1 + ...able_validatedLicenseCount=20.verified.txt | 1 + ...Table_validatedLicenseCount=5.verified.txt | 1 + ...ble_validCount=0_errorCount=1.verified.txt | 1 + ...le_validCount=0_errorCount=20.verified.txt | 1 + ...ble_validCount=0_errorCount=3.verified.txt | 1 + ...ble_validCount=0_errorCount=5.verified.txt | 1 + ...e_validCount=100_errorCount=1.verified.txt | 1 + ..._validCount=100_errorCount=20.verified.txt | 1 + ...e_validCount=100_errorCount=3.verified.txt | 1 + ...e_validCount=100_errorCount=5.verified.txt | 1 + ...ble_validCount=1_errorCount=1.verified.txt | 1 + ...le_validCount=1_errorCount=20.verified.txt | 1 + ...ble_validCount=1_errorCount=3.verified.txt | 1 + ...ble_validCount=1_errorCount=5.verified.txt | 1 + ...le_validCount=20_errorCount=1.verified.txt | 1 + ...e_validCount=20_errorCount=20.verified.txt | 1 + ...le_validCount=20_errorCount=3.verified.txt | 1 + ...le_validCount=20_errorCount=5.verified.txt | 1 + ...ble_validCount=5_errorCount=1.verified.txt | 1 + ...le_validCount=5_errorCount=20.verified.txt | 1 + ...ble_validCount=5_errorCount=3.verified.txt | 1 + ...ble_validCount=5_errorCount=5.verified.txt | 1 + ...able_validatedLicenseCount=0.verified.txt} | 0 ...Table_validatedLicenseCount=1.verified.txt | 1 + ...ble_validatedLicenseCount=100.verified.txt | 1 + ...able_validatedLicenseCount=20.verified.txt | 1 + ...Table_validatedLicenseCount=5.verified.txt | 1 + ...ble_validCount=0_errorCount=1.verified.txt | 26 + ...le_validCount=0_errorCount=20.verified.txt | 677 ++++++++ ...ble_validCount=0_errorCount=3.verified.txt | 98 ++ ...ble_validCount=0_errorCount=5.verified.txt | 168 ++ ...e_validCount=100_errorCount=1.verified.txt | 726 +++++++++ ..._validCount=100_errorCount=20.verified.txt | 1377 +++++++++++++++++ ...e_validCount=100_errorCount=3.verified.txt | 798 ++++++++++ ...e_validCount=100_errorCount=5.verified.txt | 868 +++++++++++ ...ble_validCount=1_errorCount=1.verified.txt | 33 + ...le_validCount=1_errorCount=20.verified.txt | 684 ++++++++ ...ble_validCount=1_errorCount=3.verified.txt | 105 ++ ...ble_validCount=1_errorCount=5.verified.txt | 175 +++ ...le_validCount=20_errorCount=1.verified.txt | 166 ++ ...e_validCount=20_errorCount=20.verified.txt | 817 ++++++++++ ...le_validCount=20_errorCount=3.verified.txt | 238 +++ ...le_validCount=20_errorCount=5.verified.txt | 308 ++++ ...ble_validCount=5_errorCount=1.verified.txt | 61 + ...le_validCount=5_errorCount=20.verified.txt | 712 +++++++++ ...ble_validCount=5_errorCount=3.verified.txt | 133 ++ ...ble_validCount=5_errorCount=5.verified.txt | 203 +++ ...Table_validatedLicenseCount=0.verified.txt | 1 + ...Table_validatedLicenseCount=1.verified.txt | 9 + ...ble_validatedLicenseCount=100.verified.txt | 702 +++++++++ ...able_validatedLicenseCount=20.verified.txt | 142 ++ ...Table_validatedLicenseCount=5.verified.txt | 37 + ...ble_validCount=0_errorCount=1.verified.txt | 26 + ...le_validCount=0_errorCount=20.verified.txt | 677 ++++++++ ...ble_validCount=0_errorCount=3.verified.txt | 98 ++ ...ble_validCount=0_errorCount=5.verified.txt | 168 ++ ...e_validCount=100_errorCount=1.verified.txt | 26 + ..._validCount=100_errorCount=20.verified.txt | 677 ++++++++ ...e_validCount=100_errorCount=3.verified.txt | 98 ++ ...e_validCount=100_errorCount=5.verified.txt | 168 ++ ...ble_validCount=1_errorCount=1.verified.txt | 26 + ...le_validCount=1_errorCount=20.verified.txt | 677 ++++++++ ...ble_validCount=1_errorCount=3.verified.txt | 98 ++ ...ble_validCount=1_errorCount=5.verified.txt | 168 ++ ...le_validCount=20_errorCount=1.verified.txt | 26 + ...e_validCount=20_errorCount=20.verified.txt | 677 ++++++++ ...le_validCount=20_errorCount=3.verified.txt | 98 ++ ...le_validCount=20_errorCount=5.verified.txt | 168 ++ ...ble_validCount=5_errorCount=1.verified.txt | 26 + ...le_validCount=5_errorCount=20.verified.txt | 677 ++++++++ ...ble_validCount=5_errorCount=3.verified.txt | 98 ++ ...ble_validCount=5_errorCount=5.verified.txt | 168 ++ ...Table_validatedLicenseCount=0.verified.txt | 1 + ...Table_validatedLicenseCount=1.verified.txt | 9 + ...ble_validatedLicenseCount=100.verified.txt | 702 +++++++++ ...able_validatedLicenseCount=20.verified.txt | 142 ++ ...Table_validatedLicenseCount=5.verified.txt | 37 + ...rintCorrectTable_errorCount=0.verified.txt | 4 - ...rintCorrectTable_errorCount=1.verified.txt | 5 - ...intCorrectTable_errorCount=20.verified.txt | 24 - ...rintCorrectTable_errorCount=5.verified.txt | 9 - ...Table_validatedLicenseCount=0.verified.txt | 4 - ...Table_validatedLicenseCount=1.verified.txt | 5 - ...ble_validatedLicenseCount=100.verified.txt | 104 -- ...able_validatedLicenseCount=20.verified.txt | 24 - ...Table_validatedLicenseCount=5.verified.txt | 9 - .../Output/Table/TableOutputFormatterTest.cs | 53 +- ...ble_validCount=0_errorCount=1.verified.txt | 8 + ...le_validCount=0_errorCount=20.verified.txt | 134 ++ ...ble_validCount=0_errorCount=3.verified.txt | 22 + ...ble_validCount=0_errorCount=5.verified.txt | 35 + ...e_validCount=100_errorCount=1.verified.txt | 108 ++ ..._validCount=100_errorCount=20.verified.txt | 234 +++ ...e_validCount=100_errorCount=3.verified.txt | 122 ++ ...e_validCount=100_errorCount=5.verified.txt | 135 ++ ...ble_validCount=1_errorCount=1.verified.txt | 9 + ...le_validCount=1_errorCount=20.verified.txt | 135 ++ ...ble_validCount=1_errorCount=3.verified.txt | 23 + ...ble_validCount=1_errorCount=5.verified.txt | 36 + ...le_validCount=20_errorCount=1.verified.txt | 28 + ...e_validCount=20_errorCount=20.verified.txt | 154 ++ ...le_validCount=20_errorCount=3.verified.txt | 42 + ...le_validCount=20_errorCount=5.verified.txt | 55 + ...ble_validCount=5_errorCount=1.verified.txt | 13 + ...le_validCount=5_errorCount=20.verified.txt | 139 ++ ...ble_validCount=5_errorCount=3.verified.txt | 27 + ...ble_validCount=5_errorCount=5.verified.txt | 40 + ...Table_validatedLicenseCount=0.verified.txt | 4 + ...Table_validatedLicenseCount=1.verified.txt | 5 + ...ble_validatedLicenseCount=100.verified.txt | 104 ++ ...able_validatedLicenseCount=20.verified.txt | 24 + ...Table_validatedLicenseCount=5.verified.txt | 9 + ...ble_validCount=0_errorCount=1.verified.txt | 8 + ...le_validCount=0_errorCount=20.verified.txt | 134 ++ ...ble_validCount=0_errorCount=3.verified.txt | 22 + ...ble_validCount=0_errorCount=5.verified.txt | 35 + ...e_validCount=100_errorCount=1.verified.txt | 8 + ..._validCount=100_errorCount=20.verified.txt | 134 ++ ...e_validCount=100_errorCount=3.verified.txt | 22 + ...e_validCount=100_errorCount=5.verified.txt | 35 + ...ble_validCount=1_errorCount=1.verified.txt | 8 + ...le_validCount=1_errorCount=20.verified.txt | 134 ++ ...ble_validCount=1_errorCount=3.verified.txt | 22 + ...ble_validCount=1_errorCount=5.verified.txt | 35 + ...le_validCount=20_errorCount=1.verified.txt | 8 + ...e_validCount=20_errorCount=20.verified.txt | 134 ++ ...le_validCount=20_errorCount=3.verified.txt | 22 + ...le_validCount=20_errorCount=5.verified.txt | 35 + ...ble_validCount=5_errorCount=1.verified.txt | 8 + ...le_validCount=5_errorCount=20.verified.txt | 134 ++ ...ble_validCount=5_errorCount=3.verified.txt | 22 + ...ble_validCount=5_errorCount=5.verified.txt | 35 + ...Table_validatedLicenseCount=0.verified.txt | 4 + ...Table_validatedLicenseCount=1.verified.txt | 5 + ...ble_validatedLicenseCount=100.verified.txt | 104 ++ ...able_validatedLicenseCount=20.verified.txt | 24 + ...Table_validatedLicenseCount=5.verified.txt | 9 + tests/NuGetUtility.Test/Output/TestBase.cs | 92 ++ .../PackageInformationReaderTest.cs | 73 +- .../ProjectsCollectorTest.cs | 3 +- ...Test.cs => ReferencedPackageReaderTest.cs} | 8 +- 205 files changed, 18596 insertions(+), 1723 deletions(-) create mode 100644 src/NuGetUtility/Extension/AsyncEnumerableExtension.cs delete mode 100644 src/NuGetUtility/LicenseValidator/LicenseValidationError.cs create mode 100644 src/NuGetUtility/LicenseValidator/LicenseValidationResult.cs delete mode 100644 src/NuGetUtility/LicenseValidator/ValidatedLicense.cs create mode 100644 src/NuGetUtility/LicenseValidator/ValidationError.cs delete mode 100644 src/NuGetUtility/Output/IOuputFormatter.cs create mode 100644 src/NuGetUtility/Output/IOutputFormatter.cs create mode 100644 src/NuGetUtility/Output/Json/ValidatedLicenseJsonConverterWithOmittingEmptyErrorList.cs create mode 100644 src/NuGetUtility/PackageInformationReader/ProjectWithReferencedPackages.cs create mode 100644 src/NuGetUtility/PackageInformationReader/ReferencedPackageWithContext.cs create mode 100644 tests/NuGetUtility.Test/LicenseValidator/LicenseValidationResultValueEqualityComparer.cs delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.cs delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt rename tests/NuGetUtility.Test/Output/{Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt => JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt} (100%) create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt rename tests/NuGetUtility.Test/Output/{Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt => JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt} (100%) create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt delete mode 100644 tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt create mode 100644 tests/NuGetUtility.Test/Output/TestBase.cs rename tests/NuGetUtility.Test/ReferencedPackagesReader/{ReferencedPackagesReaderTest.cs => ReferencedPackageReaderTest.cs} (99%) diff --git a/README.md b/README.md index 47641a17..16eed2a9 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ Usage: dotnet-project-licenses [options] **Options:** | Option | Description | -| --------------------------------------------- |------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +|-----------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `-i, --input` | Project or Solution to be analyzed | | `-ji, --json-input` | Similar to `-i, --input` but providing a file containing a valid JSON Array that contains all projects to be analyzed | | `-t, --include-transitive` | When set, the analysis includes transitive packages (dependencies of packages that are directly installed to the project) | @@ -35,6 +35,7 @@ Usage: dotnet-project-licenses [options] | `-override, --override-package-information` | When used, this option allows to override the package information used for the validation. This makes sure that no attempt is made to get the associated information about the package from the available web resources. This is useful for packages that e.g. provide a license file as part of the nuget package which (at the time of writing) cannot be used for validation and thus requires the package's information to be provided by this option. | | `-d, --license-information-download-location` | When used, this option downloads the html content of the license URL to the specified folder. This is done for all NuGet packages that specify a license URL instead of providing the license expression. | | `-o, --output` | This Parameter accepts the value `table`, `json` or `jsonPretty`. It allows to select the type of output that should be given. If omitted, the output is given in tabular form. | +| `-err, --error-only` | This flag allows to print only packages that contain validation errors (if there are any). This allows the user to focus on errors instead of having to deal with many properly validated licenses. | ## Example tool commands diff --git a/src/NuGetUtility/Extension/AsyncEnumerableExtension.cs b/src/NuGetUtility/Extension/AsyncEnumerableExtension.cs new file mode 100644 index 00000000..faef9bc0 --- /dev/null +++ b/src/NuGetUtility/Extension/AsyncEnumerableExtension.cs @@ -0,0 +1,28 @@ +namespace NuGetUtility.Extension +{ + public static class AsyncEnumerableExtension + { + public static async IAsyncEnumerable SelectMany(this IAsyncEnumerable input, + Func> transform) + { + await foreach (var value in input) + { + await foreach (var transformedValue in transform(value)) + { + yield return transformedValue; + } + } + } + public static async IAsyncEnumerable SelectMany(this IEnumerable input, + Func> transform) + { + foreach (var value in input) + { + await foreach (var transformedValue in transform(value)) + { + yield return transformedValue; + } + } + } + } +} diff --git a/src/NuGetUtility/LicenseValidator/LicenseInformationOrigin.cs b/src/NuGetUtility/LicenseValidator/LicenseInformationOrigin.cs index a773377a..705e78ef 100644 --- a/src/NuGetUtility/LicenseValidator/LicenseInformationOrigin.cs +++ b/src/NuGetUtility/LicenseValidator/LicenseInformationOrigin.cs @@ -3,6 +3,7 @@ public enum LicenseInformationOrigin { Expression, - Url + Url, + Unknown } } diff --git a/src/NuGetUtility/LicenseValidator/LicenseValidationError.cs b/src/NuGetUtility/LicenseValidator/LicenseValidationError.cs deleted file mode 100644 index 911bac74..00000000 --- a/src/NuGetUtility/LicenseValidator/LicenseValidationError.cs +++ /dev/null @@ -1,9 +0,0 @@ -using NuGet.Versioning; - -namespace NuGetUtility.LicenseValidator -{ - public record LicenseValidationError(string Context, - string PackageId, - NuGetVersion PackageVersion, - string Message); -} diff --git a/src/NuGetUtility/LicenseValidator/LicenseValidationResult.cs b/src/NuGetUtility/LicenseValidator/LicenseValidationResult.cs new file mode 100644 index 00000000..48d93e8c --- /dev/null +++ b/src/NuGetUtility/LicenseValidator/LicenseValidationResult.cs @@ -0,0 +1,17 @@ +using NuGet.Versioning; + +namespace NuGetUtility.LicenseValidator +{ + public record LicenseValidationResult(string PackageId, + NuGetVersion PackageVersion, + string? PackageProjectUrl, + string? License, + LicenseInformationOrigin LicenseInformationOrigin, + List? ValidationErrors = null) + { + public List ValidationErrors { get; } = ValidationErrors ?? new List(); + + public string? License { get; set; } = License; + public LicenseInformationOrigin LicenseInformationOrigin { get; set; } = LicenseInformationOrigin; + } +} diff --git a/src/NuGetUtility/LicenseValidator/LicenseValidator.cs b/src/NuGetUtility/LicenseValidator/LicenseValidator.cs index d875f34e..19ed9ee3 100644 --- a/src/NuGetUtility/LicenseValidator/LicenseValidator.cs +++ b/src/NuGetUtility/LicenseValidator/LicenseValidator.cs @@ -1,16 +1,17 @@ using NuGet.Packaging; using NuGet.Protocol.Core.Types; +using NuGet.Versioning; +using NuGetUtility.PackageInformationReader; using NuGetUtility.Wrapper.HttpClientWrapper; +using System.Collections.Concurrent; namespace NuGetUtility.LicenseValidator { public class LicenseValidator { private readonly IEnumerable _allowedLicenses; - private readonly List _errors = new List(); private readonly IFileDownloader _fileDownloader; private readonly Dictionary _licenseMapping; - private readonly HashSet _validatedLicenses = new HashSet(); public LicenseValidator(Dictionary licenseMapping, IEnumerable allowedLicenses, @@ -21,39 +22,88 @@ public LicenseValidator(Dictionary licenseMapping, _fileDownloader = fileDownloader; } - public async Task Validate(IAsyncEnumerable downloadedInfo, string context) + public async Task> Validate( + IAsyncEnumerable packages) { - await foreach (var info in downloadedInfo) + var result = new ConcurrentDictionary(); + await foreach (var info in packages) { - if (info.LicenseMetadata != null) + if (info.PackageInfo.LicenseMetadata != null) { - ValidateLicenseByMetadata(info, context); + ValidateLicenseByMetadata(info.PackageInfo, info.Context, result); } - else if (info.LicenseUrl != null) + else if (info.PackageInfo.LicenseUrl != null) { - await ValidateLicenseByUrl(info, context); + await ValidateLicenseByUrl(info.PackageInfo, info.Context, result); } else { - _errors.Add(new LicenseValidationError(context, - info.Identity.Id, - info.Identity.Version, - "No license information found")); + AddOrUpdateLicense(result, + info.PackageInfo, + LicenseInformationOrigin.Unknown, + new ValidationError("No license information found", info.Context)); } } + return result.Values; } - public IEnumerable GetErrors() + private void AddOrUpdateLicense( + ConcurrentDictionary result, + IPackageSearchMetadata info, + LicenseInformationOrigin origin, + ValidationError error, + string? license = null) { - return _errors; + var newValue = new LicenseValidationResult( + info.Identity.Id, + info.Identity.Version, + info.ProjectUrl?.ToString(), + license, + origin, + new List { error }); + result.AddOrUpdate(new LicenseNameAndVersion(info.Identity.Id, info.Identity.Version), + key => CreateResult(key, newValue), + (key, oldValue) => UpdateResult(key, oldValue, newValue)); } - public IEnumerable GetValidatedLicenses() + private void AddOrUpdateLicense( + ConcurrentDictionary result, + IPackageSearchMetadata info, + LicenseInformationOrigin origin, + string? license = null) { - return _validatedLicenses; + var newValue = new LicenseValidationResult( + info.Identity.Id, + info.Identity.Version, + info.ProjectUrl?.ToString(), + license, + origin); + result.AddOrUpdate(new LicenseNameAndVersion(info.Identity.Id, info.Identity.Version), + key => CreateResult(key, newValue), + (key, oldValue) => UpdateResult(key, oldValue, newValue)); } - private void ValidateLicenseByMetadata(IPackageSearchMetadata info, string context) + private LicenseValidationResult UpdateResult(LicenseNameAndVersion _, + LicenseValidationResult oldValue, + LicenseValidationResult newValue) + { + oldValue.ValidationErrors.AddRange(newValue.ValidationErrors); + if (oldValue.License is null && newValue.License is not null) + { + oldValue.License = newValue.License; + oldValue.LicenseInformationOrigin = newValue.LicenseInformationOrigin; + } + return oldValue; + } + + private LicenseValidationResult CreateResult(LicenseNameAndVersion _, LicenseValidationResult newValue) + { + return newValue; + } + + private void ValidateLicenseByMetadata(IPackageSearchMetadata info, + string context, + ConcurrentDictionary result) { switch (info.LicenseMetadata!.Type) { @@ -61,30 +111,35 @@ private void ValidateLicenseByMetadata(IPackageSearchMetadata info, string conte var licenseId = info.LicenseMetadata!.License; if (IsLicenseValid(licenseId)) { - _validatedLicenses.Add(new ValidatedLicense(info.Identity.Id, - info.Identity.Version, - info.LicenseMetadata.License, - LicenseInformationOrigin.Expression)); + AddOrUpdateLicense(result, + info, + LicenseInformationOrigin.Expression, + info.LicenseMetadata.License); } else { - _errors.Add(new LicenseValidationError(context, - info.Identity.Id, - info.Identity.Version, - GetLicenseNotAllowedMessage(info.LicenseMetadata.License))); + AddOrUpdateLicense(result, + info, + LicenseInformationOrigin.Expression, + new ValidationError(GetLicenseNotAllowedMessage(info.LicenseMetadata.License), context), + info.LicenseMetadata.License); } break; default: - _errors.Add(new LicenseValidationError(context, - info.Identity.Id, - info.Identity.Version, - $"Validation for licenses of type {info.LicenseMetadata!.Type} not yet supported")); + AddOrUpdateLicense(result, + info, + LicenseInformationOrigin.Unknown, + new ValidationError( + $"Validation for licenses of type {info.LicenseMetadata!.Type} not yet supported", + context)); break; } } - private async Task ValidateLicenseByUrl(IPackageSearchMetadata info, string context) + private async Task ValidateLicenseByUrl(IPackageSearchMetadata info, + string context, + ConcurrentDictionary result) { if (info.LicenseUrl.IsAbsoluteUri) { @@ -103,32 +158,34 @@ await _fileDownloader.DownloadFile(info.LicenseUrl, { if (IsLicenseValid(licenseId)) { - _validatedLicenses.Add(new ValidatedLicense(info.Identity.Id, - info.Identity.Version, - licenseId, - LicenseInformationOrigin.Url)); + AddOrUpdateLicense(result, + info, + LicenseInformationOrigin.Url, + licenseId); } else { - _errors.Add(new LicenseValidationError(context, - info.Identity.Id, - info.Identity.Version, - GetLicenseNotAllowedMessage(licenseId))); + AddOrUpdateLicense(result, + info, + LicenseInformationOrigin.Url, + new ValidationError(GetLicenseNotAllowedMessage(licenseId), context), + licenseId); } } else if (!_allowedLicenses.Any()) { - _validatedLicenses.Add(new ValidatedLicense(info.Identity.Id, - info.Identity.Version, - info.LicenseUrl.ToString(), - LicenseInformationOrigin.Url)); + AddOrUpdateLicense(result, + info, + LicenseInformationOrigin.Url, + info.LicenseUrl.ToString()); } else { - _errors.Add(new LicenseValidationError(context, - info.Identity.Id, - info.Identity.Version, - $"Cannot determine License type for url {info.LicenseUrl}")); + AddOrUpdateLicense(result, + info, + LicenseInformationOrigin.Url, + new ValidationError($"Cannot determine License type for url {info.LicenseUrl}", context), + info.LicenseUrl.ToString()); } } @@ -154,5 +211,7 @@ private string GetLicenseNotAllowedMessage(string license) { return $"License {license} not found in list of supported licenses"; } + + private record LicenseNameAndVersion(string LicenseName, NuGetVersion Version); } } diff --git a/src/NuGetUtility/LicenseValidator/ValidatedLicense.cs b/src/NuGetUtility/LicenseValidator/ValidatedLicense.cs deleted file mode 100644 index 0995708a..00000000 --- a/src/NuGetUtility/LicenseValidator/ValidatedLicense.cs +++ /dev/null @@ -1,9 +0,0 @@ -using NuGet.Versioning; - -namespace NuGetUtility.LicenseValidator -{ - public record ValidatedLicense(string PackageId, - NuGetVersion PackageVersion, - string License, - LicenseInformationOrigin LicenseInformationOrigin); -} diff --git a/src/NuGetUtility/LicenseValidator/ValidationError.cs b/src/NuGetUtility/LicenseValidator/ValidationError.cs new file mode 100644 index 00000000..2f22ad4b --- /dev/null +++ b/src/NuGetUtility/LicenseValidator/ValidationError.cs @@ -0,0 +1,4 @@ +namespace NuGetUtility.LicenseValidator +{ + public record ValidationError(string Error, string Context); +} diff --git a/src/NuGetUtility/Output/IOuputFormatter.cs b/src/NuGetUtility/Output/IOuputFormatter.cs deleted file mode 100644 index aef9ec9f..00000000 --- a/src/NuGetUtility/Output/IOuputFormatter.cs +++ /dev/null @@ -1,10 +0,0 @@ -using NuGetUtility.LicenseValidator; - -namespace NuGetUtility.Output -{ - public interface IOutputFormatter - { - Task Write(Stream stream, IEnumerable errors); - Task Write(Stream stream, IEnumerable validated); - } -} diff --git a/src/NuGetUtility/Output/IOutputFormatter.cs b/src/NuGetUtility/Output/IOutputFormatter.cs new file mode 100644 index 00000000..f8a63113 --- /dev/null +++ b/src/NuGetUtility/Output/IOutputFormatter.cs @@ -0,0 +1,9 @@ +using NuGetUtility.LicenseValidator; + +namespace NuGetUtility.Output +{ + public interface IOutputFormatter + { + Task Write(Stream stream, IList results); + } +} diff --git a/src/NuGetUtility/Output/Json/JsonOutputFormatter.cs b/src/NuGetUtility/Output/Json/JsonOutputFormatter.cs index 776ae608..5d47f1e6 100644 --- a/src/NuGetUtility/Output/Json/JsonOutputFormatter.cs +++ b/src/NuGetUtility/Output/Json/JsonOutputFormatter.cs @@ -5,23 +5,32 @@ namespace NuGetUtility.Output.Json { public class JsonOutputFormatter : IOutputFormatter { + private readonly bool _printErrorsOnly; private readonly JsonSerializerOptions _options; - public JsonOutputFormatter(bool prettyPrint = false) + public JsonOutputFormatter(bool prettyPrint = false, bool printErrorsOnly = false) { + _printErrorsOnly = printErrorsOnly; _options = new JsonSerializerOptions { - Converters = { new NuGetVersionJsonConverter() }, + Converters = + { new NuGetVersionJsonConverter(), new ValidatedLicenseJsonConverterWithOmittingEmptyErrorList() }, WriteIndented = prettyPrint }; } - public async Task Write(Stream stream, IEnumerable errors) + public async Task Write(Stream stream, IList results) { - await JsonSerializer.SerializeAsync(stream, errors, _options); - } - public async Task Write(Stream stream, IEnumerable validated) - { - await JsonSerializer.SerializeAsync(stream, validated, _options); + if (_printErrorsOnly) + { + var resultsWithErrors = results.Where(r => r.ValidationErrors.Any()).ToList(); + if (resultsWithErrors.Any()) + { + await JsonSerializer.SerializeAsync(stream, resultsWithErrors, _options); + return; + } + } + + await JsonSerializer.SerializeAsync(stream, results, _options); } } } diff --git a/src/NuGetUtility/Output/Json/ValidatedLicenseJsonConverterWithOmittingEmptyErrorList.cs b/src/NuGetUtility/Output/Json/ValidatedLicenseJsonConverterWithOmittingEmptyErrorList.cs new file mode 100644 index 00000000..d5e66f19 --- /dev/null +++ b/src/NuGetUtility/Output/Json/ValidatedLicenseJsonConverterWithOmittingEmptyErrorList.cs @@ -0,0 +1,37 @@ +using NuGetUtility.LicenseValidator; +using System.Text.Json; +using System.Text.Json.Serialization; + +namespace NuGetUtility.Output.Json +{ + public class ValidatedLicenseJsonConverterWithOmittingEmptyErrorList : JsonConverter + { + public override LicenseValidationResult? Read(ref Utf8JsonReader reader, + Type typeToConvert, + JsonSerializerOptions options) + { + throw new NotImplementedException(); + } + public override void Write(Utf8JsonWriter writer, LicenseValidationResult value, JsonSerializerOptions options) + { + writer.WriteStartObject(); + foreach (var propertyInfo in value.GetType().GetProperties()) + { + if (propertyInfo.Name == nameof(value.ValidationErrors)) + { + if (!value.ValidationErrors.Any()) + { + continue; + } + } + var writeValue = propertyInfo.GetValue(value); + if (writeValue != null) + { + writer.WritePropertyName(propertyInfo.Name); + JsonSerializer.Serialize(writer, propertyInfo.GetValue(value), options); + } + } + writer.WriteEndObject(); + } + } +} diff --git a/src/NuGetUtility/Output/Table/TableOutputFormatter.cs b/src/NuGetUtility/Output/Table/TableOutputFormatter.cs index 079fcee0..31f78228 100644 --- a/src/NuGetUtility/Output/Table/TableOutputFormatter.cs +++ b/src/NuGetUtility/Output/Table/TableOutputFormatter.cs @@ -4,31 +4,52 @@ namespace NuGetUtility.Output.Table { public class TableOutputFormatter : IOutputFormatter { - public async Task Write(Stream stream, IEnumerable errors) + private readonly bool _printErrorsOnly; + public TableOutputFormatter(bool printErrorsOnly = false) { - await TablePrinterExtensions.Create(stream, "Context", "Package", "Version", "LicenseError") - .FromValues(errors, - error => - { - return new object[] { error.Context, error.PackageId, error.PackageVersion, error.Message }; - }) - .Print(); + _printErrorsOnly = printErrorsOnly; } - public async Task Write(Stream stream, IEnumerable validated) + public async Task Write(Stream stream, IList results) { + var errorColumnDefinition = new ColumnDefinition("Error", + license => string.Join(Environment.NewLine, license.ValidationErrors.Select(e => e.Error))); + var columnDefinitions = new[] + { + new ColumnDefinition("Package", license => license.PackageId, true), + new ColumnDefinition("Version", license => license.PackageVersion.ToString() ,true), + new ColumnDefinition("License Information Origin", license => license.LicenseInformationOrigin.ToString(), true), + new ColumnDefinition("License Expression", license => license.License ?? string.Empty), + new ColumnDefinition("Package Project Url",license => license.PackageProjectUrl??string.Empty), + errorColumnDefinition, + new ColumnDefinition("Error Context", license => string.Join(Environment.NewLine, license.ValidationErrors.Select(e => e.Context))), + }; + + foreach (var license in results) + { + foreach (var definition in columnDefinitions) + { + definition.Enabled |= !string.IsNullOrWhiteSpace(definition.StringAccessor(license)); + } + } + + if (_printErrorsOnly && errorColumnDefinition.Enabled) + { + results = results.Where(r => r.ValidationErrors.Any()).ToList(); + } + + var relevantColumns = columnDefinitions.Where(c => c.Enabled).ToArray(); await TablePrinterExtensions - .Create(stream, "Package", "Version", "License Information Origin", "License Expression") + .Create(stream, relevantColumns.Select(d => d.Title)) .FromValues( - validated, - license => - { - return new object[] - { - license.PackageId, license.PackageVersion, license.LicenseInformationOrigin, license.License - }; - }) + results, + license => relevantColumns.Select(d => d.StringAccessor(license))) .Print(); } + + private record ColumnDefinition(string Title, Func StringAccessor, bool Enabled = false) + { + public bool Enabled { get; set; } = Enabled; + } } } diff --git a/src/NuGetUtility/Output/Table/TablePrinter.cs b/src/NuGetUtility/Output/Table/TablePrinter.cs index eff2a8b9..a79b5efb 100644 --- a/src/NuGetUtility/Output/Table/TablePrinter.cs +++ b/src/NuGetUtility/Output/Table/TablePrinter.cs @@ -1,7 +1,5 @@ // ReSharper disable once CheckNamespace -using System.Text; - namespace Utilities { /// @@ -9,19 +7,19 @@ namespace Utilities /// public class TablePrinter { - private readonly List _lengths; - private readonly List _rows = new List(); + private readonly int[] _lengths; + private readonly List _rows = new List(); private readonly Stream _stream; private readonly string[] _titles; - public TablePrinter(Stream stream, params string[] titles) + public TablePrinter(Stream stream, IEnumerable titles) { _stream = stream; - _titles = titles; - _lengths = titles.Select(t => t.Length).ToList(); + _titles = titles.ToArray(); + _lengths = _titles.Select(t => t.Length).ToArray(); } - public void AddRow(params object?[] row) + public void AddRow(string?[] row) { if (row.Length != _titles.Length) { @@ -29,14 +27,16 @@ public void AddRow(params object?[] row) $"Added row length [{row.Length}] is not equal to title row length [{_titles.Length}]"); } - _rows.Add(row.Select(o => o?.ToString() ?? "").ToArray()); + var rowElements = row.Select(item => SplitToLines(item?.ToString() ?? string.Empty).ToArray()).ToArray(); for (var i = 0; i < _titles.Length; i++) { - if (_rows.Last()[i].Length > _lengths[i]) + var maxLineLength = rowElements[i].Any() ? rowElements[i].Max(line => line.Length) : 0; + if (maxLineLength > _lengths[i]) { - _lengths[i] = _rows.Last()[i].Length; + _lengths[i] = maxLineLength; } } + _rows.Add(rowElements); } public async Task Print() @@ -54,6 +54,16 @@ public async Task Print() await WriteSeparator(writer); } + + private async Task WriteRow(string[][] values, TextWriter writer) + { + var maximumLines = values.Max(lines => lines.Length); + for (var line = 0; line < maximumLines; line++) + { + await WriteRow(values.Select(v => v.Length > line ? v[line] : string.Empty).ToArray(), writer); + } + } + private async Task WriteRow(string[] values, TextWriter writer) { for (var i = 0; i < values.Length; i++) @@ -62,7 +72,6 @@ private async Task WriteRow(string[] values, TextWriter writer) await writer.WriteAsync(values[i].PadRight(_lengths[i])); await writer.WriteAsync(' '); } - await writer.WriteLineAsync("|"); } @@ -74,5 +83,19 @@ private async Task WriteSeparator(TextWriter writer) } await writer.WriteLineAsync("+"); } + + /// + /// Credit: https://stackoverflow.com/a/23408020/1199089 + /// + /// + /// + private static IEnumerable SplitToLines(string input) + { + using var reader = new StringReader(input); + while (reader.ReadLine() is { } line) + { + yield return line; + } + } } } diff --git a/src/NuGetUtility/Output/Table/TablePrinterExtensions.cs b/src/NuGetUtility/Output/Table/TablePrinterExtensions.cs index 633ab963..5c4bdba9 100644 --- a/src/NuGetUtility/Output/Table/TablePrinterExtensions.cs +++ b/src/NuGetUtility/Output/Table/TablePrinterExtensions.cs @@ -8,14 +8,18 @@ public static TablePrinter Create(Stream stream, params string[] headings) { return new TablePrinter(stream, headings); } + public static TablePrinter Create(Stream stream, IEnumerable headings) + { + return new TablePrinter(stream, headings); + } public static TablePrinter FromValues(this TablePrinter printer, IEnumerable values, - Func formatter) + Func> formatter) { foreach (var value in values) { - printer.AddRow(formatter(value)); + printer.AddRow(formatter(value).ToArray()); } return printer; diff --git a/src/NuGetUtility/PackageInformationReader/PackageInformationReader.cs b/src/NuGetUtility/PackageInformationReader/PackageInformationReader.cs index 90b8b3be..989bc7d1 100644 --- a/src/NuGetUtility/PackageInformationReader/PackageInformationReader.cs +++ b/src/NuGetUtility/PackageInformationReader/PackageInformationReader.cs @@ -24,21 +24,22 @@ public void Dispose() } } - public async IAsyncEnumerable GetPackageInfo( - IEnumerable packageMetadata, + public async IAsyncEnumerable GetPackageInfo( + ProjectWithReferencedPackages projectWithReferencedPackages, [EnumeratorCancellation] CancellationToken cancellation) { - foreach (var package in packageMetadata) + foreach (var package in projectWithReferencedPackages.ReferencedPackages) { if (TryGetPackageInfoFromCustomInformation(package, out var info)) { - yield return info!; + yield return new ReferencedPackageWithContext(projectWithReferencedPackages.Project, info!); } else { - yield return await TryGetPackageInformationFromRepositoriesOrReturnInput(_sourceRepositories, - package, - cancellation); + yield return new ReferencedPackageWithContext(projectWithReferencedPackages.Project, + await TryGetPackageInformationFromRepositoriesOrReturnInput(_sourceRepositories, + package, + cancellation)); } } } @@ -96,4 +97,5 @@ private bool TryGetPackageInfoFromCustomInformation(IPackageSearchMetadata packa } } } + } diff --git a/src/NuGetUtility/PackageInformationReader/ProjectWithReferencedPackages.cs b/src/NuGetUtility/PackageInformationReader/ProjectWithReferencedPackages.cs new file mode 100644 index 00000000..635f8e32 --- /dev/null +++ b/src/NuGetUtility/PackageInformationReader/ProjectWithReferencedPackages.cs @@ -0,0 +1,6 @@ +using NuGet.Protocol.Core.Types; + +namespace NuGetUtility.PackageInformationReader +{ + public record ProjectWithReferencedPackages(string Project, IEnumerable ReferencedPackages); +} diff --git a/src/NuGetUtility/PackageInformationReader/ReferencedPackageWithContext.cs b/src/NuGetUtility/PackageInformationReader/ReferencedPackageWithContext.cs new file mode 100644 index 00000000..33cc2317 --- /dev/null +++ b/src/NuGetUtility/PackageInformationReader/ReferencedPackageWithContext.cs @@ -0,0 +1,6 @@ +using NuGet.Protocol.Core.Types; + +namespace NuGetUtility.PackageInformationReader +{ + public record ReferencedPackageWithContext(string Context, IPackageSearchMetadata PackageInfo); +} diff --git a/src/NuGetUtility/Program.cs b/src/NuGetUtility/Program.cs index 06b990d8..1fda6c6a 100644 --- a/src/NuGetUtility/Program.cs +++ b/src/NuGetUtility/Program.cs @@ -1,6 +1,7 @@ using McMaster.Extensions.CommandLineUtils; using NuGet.Configuration; using NuGet.Protocol.Core.Types; +using NuGetUtility.Extension; using NuGetUtility.LicenseValidator; using NuGetUtility.Output; using NuGetUtility.Output.Json; @@ -70,6 +71,12 @@ public class Program Description = "This parameter allows to choose between tabular and json output.")] public OutputType OutputType { get; } = OutputType.Table; + [Option(LongName = "error-only", + ShortName = "err", + Description = + "If this option is set and there are license validation errors, only the errors are returned as result. Otherwise all validation results are always returned.")] + public bool ReturnErrorsOnly { get; } = false; + private HttpClient HttpClient { get @@ -90,7 +97,7 @@ public static async Task Main(string[] args) lifetime.Done(returnCode); } - private async Task OnExecuteAsync() + private async Task OnExecuteAsync(CancellationToken cancellationToken) { var inputFiles = GetInputFiles(); var ignoredPackages = GetIgnoredPackages(); @@ -111,29 +118,24 @@ private async Task OnExecuteAsync() urlLicenseFileDownloader); var projectReaderExceptions = new List(); - foreach (var project in inputFiles.SelectMany(file => projectCollector.GetProjects(file))) + var projects = inputFiles.SelectMany(file => projectCollector.GetProjects(file)); + var packagesForProject = projects.Select(p => { - IEnumerable installedPackages; + IEnumerable? installedPackages = null; try { - installedPackages = projectReader.GetInstalledPackages(project, IncludeTransitive); + installedPackages = projectReader.GetInstalledPackages(p, IncludeTransitive); } catch (Exception e) { projectReaderExceptions.Add(e); - continue; } - - var settings = Settings.LoadDefaultSettings(project); - var sourceProvider = new PackageSourceProvider(settings); - using var informationReader = new PackageInformationReader.PackageInformationReader( - new WrappedSourceRepositoryProvider(new SourceRepositoryProvider(sourceProvider, - Repository.Provider.GetCoreV3())), - overridePackageInformation); - var downloadedInfo = informationReader.GetPackageInfo(installedPackages, CancellationToken.None); - - await validator.Validate(downloadedInfo, project); - } + return new ProjectWithReferencedPackages(p, + installedPackages ?? Enumerable.Empty()); + }); + var downloadedLicenseInformation = + packagesForProject.SelectMany(p => GetPackageInfos(p, overridePackageInformation, cancellationToken)); + var results = await validator.Validate(downloadedLicenseInformation); if (projectReaderExceptions.Any()) { @@ -143,23 +145,32 @@ private async Task OnExecuteAsync() } await using var outputStream = Console.OpenStandardOutput(); - if (validator.GetErrors().Any()) - { - await output.Write(outputStream, validator.GetErrors()); - return -1; - } - - await output.Write(outputStream, validator.GetValidatedLicenses()); + await output.Write(outputStream, results.ToList()); return 0; } + private IAsyncEnumerable GetPackageInfos( + ProjectWithReferencedPackages projectWithReferences, + IEnumerable overridePackageInformation, + CancellationToken cancellation) + { + var settings = Settings.LoadDefaultSettings(projectWithReferences.Project); + var sourceProvider = new PackageSourceProvider(settings); + using var informationReader = new PackageInformationReader.PackageInformationReader( + new WrappedSourceRepositoryProvider(new SourceRepositoryProvider(sourceProvider, + Repository.Provider.GetCoreV3())), + overridePackageInformation); + return informationReader.GetPackageInfo(new ProjectWithReferencedPackages(projectWithReferences.Project, + projectWithReferences.ReferencedPackages), + cancellation); + } private IOutputFormatter GetOutputFormatter() { return OutputType switch { - OutputType.Json => new JsonOutputFormatter(), - OutputType.JsonPretty => new JsonOutputFormatter(true), - OutputType.Table => new TableOutputFormatter(), + OutputType.Json => new JsonOutputFormatter(false, ReturnErrorsOnly), + OutputType.JsonPretty => new JsonOutputFormatter(true, ReturnErrorsOnly), + OutputType.Table => new TableOutputFormatter(ReturnErrorsOnly), _ => throw new ArgumentOutOfRangeException($"{OutputType} not supported") }; } diff --git a/tests/NuGetUtility.Test/Extensions/MemoryStreamExtension.cs b/tests/NuGetUtility.Test/Extensions/MemoryStreamExtension.cs index b420cf94..17c09442 100644 --- a/tests/NuGetUtility.Test/Extensions/MemoryStreamExtension.cs +++ b/tests/NuGetUtility.Test/Extensions/MemoryStreamExtension.cs @@ -1,13 +1,11 @@ -using System.Text; - -namespace NuGetUtility.Test.Extensions +namespace NuGetUtility.Test.Extensions { public static class MemoryStreamExtension { public static string AsString(this MemoryStream stream) { stream.Position = 0; - using var reader = new StreamReader(stream, leaveOpen: true); + using var reader = new StreamReader(stream, leaveOpen: true, encoding: System.Text.Encoding.UTF8); return reader.ReadToEnd(); } } diff --git a/tests/NuGetUtility.Test/Helper/ShuffelledEnumerable/EnumerableExtensions.cs b/tests/NuGetUtility.Test/Helper/ShuffelledEnumerable/EnumerableExtensions.cs index 3c00af4a..9e152dcc 100644 --- a/tests/NuGetUtility.Test/Helper/ShuffelledEnumerable/EnumerableExtensions.cs +++ b/tests/NuGetUtility.Test/Helper/ShuffelledEnumerable/EnumerableExtensions.cs @@ -5,9 +5,9 @@ /// public static class EnumerableExtensions { - public static IEnumerable Shuffle(this IEnumerable source) + public static IEnumerable Shuffle(this IEnumerable source, int seed) { - return source.Shuffle(new Random()); + return source.Shuffle(new Random(seed)); } public static IEnumerable Shuffle(this IEnumerable source, Random rng) diff --git a/tests/NuGetUtility.Test/LicenseValidator/LicenseValidationResultValueEqualityComparer.cs b/tests/NuGetUtility.Test/LicenseValidator/LicenseValidationResultValueEqualityComparer.cs new file mode 100644 index 00000000..3ea40b78 --- /dev/null +++ b/tests/NuGetUtility.Test/LicenseValidator/LicenseValidationResultValueEqualityComparer.cs @@ -0,0 +1,36 @@ +using NuGetUtility.LicenseValidator; + +namespace NuGetUtility.Test.LicenseValidator +{ + public class LicenseValidationResultValueEqualityComparer : IEqualityComparer + { + public bool Equals(LicenseValidationResult? x, LicenseValidationResult? y) + { + if (ReferenceEquals(x, y)) return true; + if (ReferenceEquals(x, null)) return false; + if (ReferenceEquals(y, null)) return false; + if (x.GetType() != y.GetType()) return false; + return x.ValidationErrors.SequenceEqual(y.ValidationErrors) && (x.License == y.License) && + (x.LicenseInformationOrigin == y.LicenseInformationOrigin) && (x.PackageId == y.PackageId) && + x.PackageVersion.Equals(y.PackageVersion) && (x.PackageProjectUrl == y.PackageProjectUrl); + } + public int GetHashCode(LicenseValidationResult obj) + { + return HashCode.Combine(GetHashCode(obj.ValidationErrors), + obj.License, + (int)obj.LicenseInformationOrigin, + obj.PackageId, + obj.PackageVersion, + obj.PackageProjectUrl); + } + private HashCode GetHashCode(List validationErrors) + { + var code = new HashCode(); + foreach (var error in validationErrors) + { + code.Add(error); + } + return code; + } + } +} diff --git a/tests/NuGetUtility.Test/LicenseValidator/LicenseValidatorTest.cs b/tests/NuGetUtility.Test/LicenseValidator/LicenseValidatorTest.cs index c75b2dc3..389124ea 100644 --- a/tests/NuGetUtility.Test/LicenseValidator/LicenseValidatorTest.cs +++ b/tests/NuGetUtility.Test/LicenseValidator/LicenseValidatorTest.cs @@ -6,6 +6,7 @@ using NuGet.Protocol.Core.Types; using NuGet.Versioning; using NuGetUtility.LicenseValidator; +using NuGetUtility.PackageInformationReader; using NuGetUtility.Test.Helper.AsyncEnumerableExtension; using NuGetUtility.Test.Helper.AutoFixture.NuGet.Versioning; using NuGetUtility.Test.Helper.NUnitExtension; @@ -21,46 +22,41 @@ internal class LicenseValidatorTest public void SetUp() { var fixture = new Fixture(); - _fileDonwloader = new Mock(); + _fileDownloader = new Mock(); _licenseMapping = fixture.Create>(); _allowedLicenses = fixture.CreateMany(); _context = fixture.Create(); + _projectUrl = fixture.Create(); _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping, _allowedLicenses, - _fileDonwloader.Object); + _fileDownloader.Object); } - private NuGetUtility.LicenseValidator.LicenseValidator? _uut; - private Dictionary? _licenseMapping; - private IEnumerable? _allowedLicenses; - private string? _context; - private Mock? _fileDonwloader; - - [Test] - public async Task ValidatingEmptyList_Should_ReturnEmptyErrorArray() - { - var emptyListToValidate = Enumerable.Empty().AsAsyncEnumerable(); - await _uut!.Validate(emptyListToValidate, _context!); - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetErrors()); - } + private NuGetUtility.LicenseValidator.LicenseValidator _uut = null!; + private Dictionary _licenseMapping = null!; + private IEnumerable _allowedLicenses = null!; + private string _context = null!; + private Mock _fileDownloader = null!; + private Uri _projectUrl = null!; [Test] public async Task ValidatingEmptyList_Should_ReturnEmptyValidatedLicenses() { - var emptyListToValidate = Enumerable.Empty().AsAsyncEnumerable(); - await _uut!.Validate(emptyListToValidate, _context!); - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetValidatedLicenses()); + var emptyListToValidate = Enumerable.Empty().AsAsyncEnumerable(); + var results = await _uut.Validate(emptyListToValidate); + CollectionAssert.AreEqual(Enumerable.Empty(), results); } - private static Mock SetupPackage(string packageId, NuGetVersion packageVersion) + private Mock SetupPackage(string packageId, NuGetVersion packageVersion) { var packageInfo = new Mock(); packageInfo.SetupGet(m => m.Identity).Returns(new PackageIdentity(packageId, packageVersion)); + packageInfo.SetupGet(m => m.ProjectUrl).Returns(_projectUrl); return packageInfo; } - private static Mock SetupPackageWithLicenseInformationOfType(string packageId, + private Mock SetupPackageWithLicenseInformationOfType(string packageId, NuGetVersion packageVersion, string license, LicenseType type) @@ -75,30 +71,17 @@ private static Mock SetupPackageWithLicenseInformationOf return packageInfo; } - private static Mock SetupPackageWithProperLicenseInformation(string packageId, + private Mock SetupPackageWithProperLicenseInformation(string packageId, NuGetVersion packageVersion, string license) { return SetupPackageWithLicenseInformationOfType(packageId, packageVersion, license, LicenseType.Expression); } - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task - ValidatingLicensesWithProperLicenseInformation_Should_NotContainErrorsIfAllowedLicensesIsEmpty( - string packageId, - NuGetVersion packageVersion, - string license) + private IAsyncEnumerable CreateInput(Mock metadata, + string context) { - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, - new string[] { }, - _fileDonwloader!.Object); - - var package = SetupPackageWithProperLicenseInformation(packageId, packageVersion, license); - - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetErrors()); + return new[] { new ReferencedPackageWithContext(context, metadata.Object) }.AsAsyncEnumerable(); } [Test] @@ -108,20 +91,27 @@ public async Task ValidatingLicensesWithProperLicenseInformation_Should_GiveCorr NuGetVersion packageVersion, string license) { - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, + _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping, new string[] { }, - _fileDonwloader!.Object); + _fileDownloader.Object); var package = SetupPackageWithProperLicenseInformation(packageId, packageVersion, license); - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEquivalent(new[] - { new ValidatedLicense(packageId, packageVersion, license, LicenseInformationOrigin.Expression) }, - _uut.GetValidatedLicenses()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + license, + LicenseInformationOrigin.Expression) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } - private static Mock SetupPackageWithLicenseUrl(string packageId, + private Mock SetupPackageWithLicenseUrl(string packageId, NuGetVersion packageVersion, Uri url) { @@ -130,62 +120,31 @@ private static Mock SetupPackageWithLicenseUrl(string pa return packageInfo; } - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithMatchingLicenseUrl_Should_NotContainErrorsIfAllowedLicensesIsEmpty( - string packageId, - NuGetVersion packageVersion) - { - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, - new string[] { }, - _fileDonwloader!.Object); - - var package = SetupPackageWithLicenseUrl(packageId, packageVersion, _licenseMapping!.Shuffle().First().Key); - - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetErrors()); - } - [Test] [ExtendedAutoData(typeof(NuGetVersionBuilder))] public async Task ValidatingLicensesWithMatchingLicenseUrl_Should_GiveCorrectValidatedLicenseList( string packageId, NuGetVersion packageVersion) { - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, + _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping, new string[] { }, - _fileDonwloader!.Object); + _fileDownloader.Object); - var mappingLicense = _licenseMapping!.Shuffle().First(); + var mappingLicense = _licenseMapping.Shuffle(34561).First(); var package = SetupPackageWithLicenseUrl(packageId, packageVersion, mappingLicense.Key); - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEquivalent( - new[] - { - new ValidatedLicense(packageId, packageVersion, mappingLicense.Value, LicenseInformationOrigin.Url) - }, - _uut.GetValidatedLicenses()); - } - - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithNonMatchingLicenseUrl_Should_NotContainErrorsIfAllowedLicensesIsEmpty( - string packageId, - NuGetVersion packageVersion, - Uri licenseUrl) - { - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, - new string[] { }, - _fileDonwloader!.Object); - - var package = SetupPackageWithLicenseUrl(packageId, packageVersion, licenseUrl); - - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetErrors()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + mappingLicense.Value, + LicenseInformationOrigin.Url) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] @@ -195,27 +154,28 @@ public async Task ValidatingLicensesWithMatchingLicenseUrl_Should_GiveCorrectVal NuGetVersion packageVersion, Uri licenseUrl) { - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, + _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping, new string[] { }, - _fileDonwloader!.Object); + _fileDownloader.Object); var package = SetupPackageWithLicenseUrl(packageId, packageVersion, licenseUrl); - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEquivalent( - new[] - { - new ValidatedLicense(packageId, - packageVersion, - new string(licenseUrl.ToString()), - LicenseInformationOrigin.Url) - }, - _uut.GetValidatedLicenses()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + licenseUrl.ToString(), + LicenseInformationOrigin.Url) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] - public async Task ValidatingLicensesWithNotSupportedLicenseMetadata_Should_GiveCorrectErrorsAndValidationList( + public async Task ValidatingLicensesWithNotSupportedLicenseMetadata_Should_GiveCorrectResult( [EnumValuesExcept(LicenseType.Expression)] LicenseType licenseType) { var fixture = new Fixture(); @@ -224,137 +184,139 @@ public async Task ValidatingLicensesWithNotSupportedLicenseMetadata_Should_GiveC var packageVersion = fixture.Create(); var license = fixture.Create(); - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, + _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping, new string[] { }, - _fileDonwloader!.Object); + _fileDownloader.Object); var package = SetupPackageWithLicenseInformationOfType(packageId, packageVersion, license, licenseType); - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut.GetValidatedLicenses()); - CollectionAssert.AreEquivalent( - new[] - { - new LicenseValidationError(_context!, - packageId, - packageVersion, - $"Validation for licenses of type {licenseType} not yet supported") - }, - _uut.GetErrors()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + null, + LicenseInformationOrigin.Unknown, + new List + { + new ValidationError($"Validation for licenses of type {licenseType} not yet supported", + _context) + }) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithoutLicenseInformation_Should_GiveCorrectErrorsAndValidationList( + public async Task ValidatingLicensesWithoutLicenseInformation_Should_GiveCorrectResult( string packageId, NuGetVersion packageVersion) { - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, + _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping, new string[] { }, - _fileDonwloader!.Object); + _fileDownloader.Object); var package = SetupPackage(packageId, packageVersion); - await _uut.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut.GetValidatedLicenses()); - CollectionAssert.AreEquivalent( - new[] - { - new LicenseValidationError(_context!, packageId, packageVersion, "No license information found") - }, - _uut.GetErrors()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + null, + LicenseInformationOrigin.Unknown, + new List + { + new ValidationError("No license information found", + _context) + }) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithProperLicenseInformation_Should_LeadToCorrectErrorsIfNotAllowed( + public async Task ValidatingLicensesWithProperLicenseInformation_Should_GiveCorrectResult_If_NotAllowed( string packageId, NuGetVersion packageVersion, string license) { var package = SetupPackageWithProperLicenseInformation(packageId, packageVersion, license); - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual( - new[] - { - new LicenseValidationError(_context!, - packageId, - packageVersion, - $"License {license} not found in list of supported licenses") - }, - _uut!.GetErrors()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + license, + LicenseInformationOrigin.Expression, + new List + { + new ValidationError($"License {license} not found in list of supported licenses", + _context) + }) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithProperLicenseInformation_Should_LeadToEmptyValidArrayIfNotAllowed( - string packageId, - NuGetVersion packageVersion, - string license) - { - var package = SetupPackageWithProperLicenseInformation(packageId, packageVersion, license); - - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetValidatedLicenses()); - } - - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithProperLicenseInformation_Should_LeadToEmptyErrorArrayIfAllowed( + public async Task ValidatingLicensesWithProperLicenseInformation_Should_GiveCorrectResult_If_Allowed( string packageId, NuGetVersion packageVersion) { - var validLicense = _allowedLicenses!.Shuffle().First(); + var validLicense = _allowedLicenses.Shuffle(135643).First(); var package = SetupPackageWithProperLicenseInformation(packageId, packageVersion, validLicense); - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetErrors()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + validLicense, + LicenseInformationOrigin.Expression) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithProperLicenseInformation_Should_LeadToCorrectValidationArrayIfAllowed( + public async Task ValidatingLicensesWithMatchingUrlInformation_Should_GiveCorrectResult_If_NotAllowed( string packageId, NuGetVersion packageVersion) { - var validLicense = _allowedLicenses!.Shuffle().First(); - var package = SetupPackageWithProperLicenseInformation(packageId, packageVersion, validLicense); - - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(new[] - { - new ValidatedLicense(packageId, packageVersion, validLicense, LicenseInformationOrigin.Expression) - }, - _uut!.GetValidatedLicenses()); - } - - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithMatchingUrlInformation_Should_LeadToCorrectErrorsIfNotAllowed( - string packageId, - NuGetVersion packageVersion) - { - var urlMatch = _licenseMapping!.Shuffle().First(); + var urlMatch = _licenseMapping.Shuffle(765).First(); var package = SetupPackageWithLicenseUrl(packageId, packageVersion, urlMatch.Key); - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual( - new[] - { - new LicenseValidationError(_context!, - packageId, - packageVersion, - $"License {urlMatch.Value} not found in list of supported licenses") - }, - _uut!.GetErrors()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + urlMatch.Value, + LicenseInformationOrigin.Url, + new List + { + new ValidationError($"License {urlMatch.Value} not found in list of supported licenses", + _context) + }) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] @@ -363,12 +325,12 @@ public async Task ValidatingLicensesWithUrlInformation_Should_StartDownloadingSa string packageId, NuGetVersion packageVersion) { - var urlMatch = _licenseMapping!.Shuffle().First(); + var urlMatch = _licenseMapping.Shuffle(4567).First(); var package = SetupPackageWithLicenseUrl(packageId, packageVersion, urlMatch.Key); - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); + _ = await _uut.Validate(CreateInput(package, _context)); - _fileDonwloader!.Verify(m => m.DownloadFile(package.Object.LicenseUrl, + _fileDownloader.Verify(m => m.DownloadFile(package.Object.LicenseUrl, $"{package.Object.Identity.Id}__{package.Object.Identity.Version}.html"), Times.Once); } @@ -379,14 +341,13 @@ public void ValidatingLicensesWithUrlInformation_Should_ThrowLicenseDownloadInfo string packageId, NuGetVersion packageVersion) { - var urlMatch = _licenseMapping!.Shuffle().First(); + var urlMatch = _licenseMapping.Shuffle(12345).First(); var package = SetupPackageWithLicenseUrl(packageId, packageVersion, urlMatch.Key); - _fileDonwloader!.Setup(m => m.DownloadFile(package.Object.LicenseUrl, It.IsAny())) + _fileDownloader.Setup(m => m.DownloadFile(package.Object.LicenseUrl, It.IsAny())) .ThrowsAsync(new Exception()); - var exception = Assert.ThrowsAsync(async () => await _uut!.Validate( - new[] { package.Object }.AsAsyncEnumerable(), - _context!)); + var exception = + Assert.ThrowsAsync(() => _uut.Validate(CreateInput(package, _context))); Assert.IsInstanceOf(exception!.InnerException); Assert.AreEqual( $"Failed to download license for package {packageId} ({packageVersion}).\nContext: {_context}", @@ -395,88 +356,57 @@ public void ValidatingLicensesWithUrlInformation_Should_ThrowLicenseDownloadInfo [Test] [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithMatchingUrlInformation_Should_LeadToEmptyValidArrayIfNotAllowed( - string packageId, - NuGetVersion packageVersion) - { - var urlMatch = _licenseMapping!.Shuffle().First(); - var package = SetupPackageWithLicenseUrl(packageId, packageVersion, urlMatch.Key); - - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetValidatedLicenses()); - } - - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithMatchingUrlInformation_Should_LeadToEmptyErrorArrayIfAllowed( + public async Task ValidatingLicensesWithMatchingUrlInformation_Should_GiveCorrectResult_If_Allowed( string packageId, NuGetVersion packageVersion) { - var urlMatch = _licenseMapping!.Shuffle().First(); - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, - _allowedLicenses!.Append(urlMatch.Value), - _fileDonwloader!.Object); - var package = SetupPackageWithLicenseUrl(packageId, packageVersion, urlMatch.Key); - - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetErrors()); - } - - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithMatchingUrlInformation_Should_LeadToCorrectValidationArrayIfAllowed( - string packageId, - NuGetVersion packageVersion) - { - var urlMatch = _licenseMapping!.Shuffle().First(); - _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping!, - _allowedLicenses!.Append(urlMatch.Value), - _fileDonwloader!.Object); + var urlMatch = _licenseMapping.Shuffle(43562).First(); + _uut = new NuGetUtility.LicenseValidator.LicenseValidator(_licenseMapping, + _allowedLicenses.Append(urlMatch.Value), + _fileDownloader.Object); var package = SetupPackageWithLicenseUrl(packageId, packageVersion, urlMatch.Key); - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(new[] - { new ValidatedLicense(packageId, packageVersion, urlMatch.Value, LicenseInformationOrigin.Url) }, - _uut!.GetValidatedLicenses()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + urlMatch.Value, + LicenseInformationOrigin.Url) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } [Test] [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithNotMatchingUrlInformation_Should_LeadToCorrectErrorsIfNotAllowed( + public async Task ValidatingLicensesWithNotMatchingUrlInformation_Should_GiveCorrectResult_If_NotAllowed( string packageId, NuGetVersion packageVersion, Uri licenseUrl) { var package = SetupPackageWithLicenseUrl(packageId, packageVersion, licenseUrl); - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual( - new[] - { - new LicenseValidationError(_context!, - packageId, - packageVersion, - $"Cannot determine License type for url {licenseUrl}") - }, - _uut!.GetErrors()); - } - - [Test] - [ExtendedAutoData(typeof(NuGetVersionBuilder))] - public async Task ValidatingLicensesWithNotMatchingUrlInformation_Should_LeadToEmptyValidArrayIfNotAllowed( - string packageId, - NuGetVersion packageVersion, - Uri licenseUrl) - { - var package = SetupPackageWithLicenseUrl(packageId, packageVersion, licenseUrl); - - await _uut!.Validate(new[] { package.Object }.AsAsyncEnumerable(), _context!); - - CollectionAssert.AreEqual(Enumerable.Empty(), _uut!.GetValidatedLicenses()); + var result = await _uut.Validate(CreateInput(package, _context)); + + Assert.That(result, + Is.EquivalentTo(new[] + { + new LicenseValidationResult(packageId, + packageVersion, + _projectUrl.ToString(), + licenseUrl.ToString(), + LicenseInformationOrigin.Url, + new List + { + new ValidationError($"Cannot determine License type for url {licenseUrl}", + _context) + }) + }) + .Using(new LicenseValidationResultValueEqualityComparer())); } } + } diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt deleted file mode 100644 index bc9c6576..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt +++ /dev/null @@ -1,8 +0,0 @@ -[ - { - "Context": "/usr/local/src/alarm_salmon.z7", - "PackageId": "Dawson Mitchell", - "PackageVersion": "0.4.2", - "Message": "In tempora aliquam." - } -] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt deleted file mode 100644 index 40aa572d..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt +++ /dev/null @@ -1,122 +0,0 @@ -[ - { - "Context": "/usr/local/src/alarm_salmon.z7", - "PackageId": "Dawson Mitchell", - "PackageVersion": "0.4.2", - "Message": "In tempora aliquam." - }, - { - "Context": "/proc/locks_ssl_incredible_wooden_shirt.sdw", - "PackageId": "Dawson Nikolaus", - "PackageVersion": "3.8.6", - "Message": "Quaerat est eum quo." - }, - { - "Context": "/usr/sbin/multi_byte.flw", - "PackageId": "Maximus Rice", - "PackageVersion": "7.5.8", - "Message": "Sit nihil vel molestias aut quia aut." - }, - { - "Context": "/srv/convergence_primary.st", - "PackageId": "Lawson Fadel", - "PackageVersion": "1.7.0", - "Message": "Fuga in ut et impedit quibusdam at sunt sint." - }, - { - "Context": "/Network/orchard_http.sass", - "PackageId": "Kennedi Hodkiewicz", - "PackageVersion": "8.1.2", - "Message": "Suscipit nostrum ut atque." - }, - { - "Context": "/usr/bin/sri_lanka_rupee.7z", - "PackageId": "Alan Lindgren", - "PackageVersion": "0.9.7", - "Message": "Neque et aut enim." - }, - { - "Context": "/opt/share/refined_frozen_bike.clkt", - "PackageId": "Gus Orn", - "PackageVersion": "6.8.8", - "Message": "Error odio et magnam corporis modi dicta impedit vero eaque." - }, - { - "Context": "/usr/local/bin/sleek_frozen_ball_index.csh", - "PackageId": "Sedrick Simonis", - "PackageVersion": "8.1.1", - "Message": "Odio labore excepturi id quae illum." - }, - { - "Context": "/usr/lib/investment_account.wqd", - "PackageId": "Milan Veum", - "PackageVersion": "8.5.9", - "Message": "Culpa eaque consequatur voluptas vero quod ad." - }, - { - "Context": "/etc/namedb/contextually_based_security_array.me", - "PackageId": "Reyes Stracke", - "PackageVersion": "9.5.9", - "Message": "Eius ab nisi molestiae voluptatem reprehenderit omnis at perspiciatis." - }, - { - "Context": "/var/yp/contextually_based_licensed_wooden_towels_bedfordshire.pfm", - "PackageId": "Buster Maggio", - "PackageVersion": "5.2.5", - "Message": "Adipisci eum dicta asperiores deserunt ut deserunt assumenda." - }, - { - "Context": "/usr/obj/administrator.zip", - "PackageId": "Sharon McClure", - "PackageVersion": "0.7.2", - "Message": "Qui sint ut." - }, - { - "Context": "/dev/human_resource_viral_payment.hlp", - "PackageId": "Bernard Toy", - "PackageVersion": "2.1.7", - "Message": "Omnis voluptate id tempore laudantium dolore quos fugit voluptatem." - }, - { - "Context": "/usr/libexec/sports_contextually_based.xvml", - "PackageId": "Curtis Walter", - "PackageVersion": "7.3.7", - "Message": "Aut tempora aspernatur." - }, - { - "Context": "/etc/periodic/exe_rapids_compressing.fxpl", - "PackageId": "Reyna Huels", - "PackageVersion": "1.0.0", - "Message": "Laborum magni porro voluptatibus nisi error et." - }, - { - "Context": "/lost\u002Bfound/ergonomic_concrete_chips_applications_matrices.box", - "PackageId": "Freddie Boehm", - "PackageVersion": "7.2.6", - "Message": "Libero ipsum dolorem optio dignissimos." - }, - { - "Context": "/usr/ports/unbranded_wooden_fish_junction.war", - "PackageId": "Sheila Lesch", - "PackageVersion": "3.5.0", - "Message": "Commodi esse debitis accusamus ipsam." - }, - { - "Context": "/rescue/rwanda_franc_accountability_synthesize.pptm", - "PackageId": "Elvera D\u0027Amore", - "PackageVersion": "7.1.8", - "Message": "Id et ea." - }, - { - "Context": "/usr/obj/uniform_nevada.tga", - "PackageId": "Milton Emmerich", - "PackageVersion": "2.2.9", - "Message": "Nostrum tenetur eum molestiae eaque." - }, - { - "Context": "/usr/sbin/specialist_streamline.cdmic", - "PackageId": "Milton Ratke", - "PackageVersion": "7.2.6", - "Message": "Possimus blanditiis illo illo quia ab animi labore ratione at." - } -] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt deleted file mode 100644 index dbc328a1..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt +++ /dev/null @@ -1,32 +0,0 @@ -[ - { - "Context": "/usr/local/src/alarm_salmon.z7", - "PackageId": "Dawson Mitchell", - "PackageVersion": "0.4.2", - "Message": "In tempora aliquam." - }, - { - "Context": "/proc/locks_ssl_incredible_wooden_shirt.sdw", - "PackageId": "Dawson Nikolaus", - "PackageVersion": "3.8.6", - "Message": "Quaerat est eum quo." - }, - { - "Context": "/usr/sbin/multi_byte.flw", - "PackageId": "Maximus Rice", - "PackageVersion": "7.5.8", - "Message": "Sit nihil vel molestias aut quia aut." - }, - { - "Context": "/srv/convergence_primary.st", - "PackageId": "Lawson Fadel", - "PackageVersion": "1.7.0", - "Message": "Fuga in ut et impedit quibusdam at sunt sint." - }, - { - "Context": "/Network/orchard_http.sass", - "PackageId": "Kennedi Hodkiewicz", - "PackageVersion": "8.1.2", - "Message": "Suscipit nostrum ut atque." - } -] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt deleted file mode 100644 index 78e9e2b9..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt +++ /dev/null @@ -1,8 +0,0 @@ -[ - { - "PackageId": "Global Branding Technician", - "PackageVersion": "9.6.5", - "License": "copying the program won\u0027t do anything, we need to copy the auxiliary HDD program!", - "LicenseInformationOrigin": 1 - } -] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt deleted file mode 100644 index 219a1cce..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt +++ /dev/null @@ -1,602 +0,0 @@ -[ - { - "PackageId": "Global Branding Technician", - "PackageVersion": "9.6.5", - "License": "copying the program won\u0027t do anything, we need to copy the auxiliary HDD program!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Central Integration Administrator", - "PackageVersion": "2.8.7", - "License": "Use the haptic COM feed, then you can bypass the haptic feed!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Corporate Markets Representative", - "PackageVersion": "7.5.2", - "License": "The GB pixel is down, copy the cross-platform pixel so we can copy the GB pixel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Future Web Facilitator", - "PackageVersion": "0.9.8", - "License": "You can\u0027t connect the panel without transmitting the haptic ADP panel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Regional Research Facilitator", - "PackageVersion": "0.6.9", - "License": "I\u0027ll override the redundant AI alarm, that should alarm the AI alarm!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Chief Branding Developer", - "PackageVersion": "1.0.8", - "License": "I\u0027ll connect the online AGP monitor, that should monitor the AGP monitor!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Internal Web Facilitator", - "PackageVersion": "6.5.7", - "License": "Try to navigate the THX card, maybe it will navigate the solid state card!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Investor Identity Manager", - "PackageVersion": "8.2.1", - "License": "synthesizing the monitor won\u0027t do anything, we need to index the solid state SSL monitor!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Operations Technician", - "PackageVersion": "9.1.1", - "License": "Use the back-end HDD firewall, then you can input the back-end firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Human Interactions Liaison", - "PackageVersion": "0.1.3", - "License": "generating the protocol won\u0027t do anything, we need to quantify the digital EXE protocol!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Global Quality Assistant", - "PackageVersion": "9.8.1", - "License": "We need to back up the redundant SAS matrix!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Dynamic Creative Representative", - "PackageVersion": "4.0.7", - "License": "If we reboot the protocol, we can get to the XML protocol through the virtual XML protocol!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Quality Engineer", - "PackageVersion": "1.9.6", - "License": "Try to compress the ADP application, maybe it will compress the bluetooth application!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "National Intranet Representative", - "PackageVersion": "4.1.1", - "License": "If we synthesize the hard drive, we can get to the SAS hard drive through the back-end SAS hard drive!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Optimization Officer", - "PackageVersion": "2.7.7", - "License": "If we override the hard drive, we can get to the SQL hard drive through the neural SQL hard drive!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Quality Agent", - "PackageVersion": "5.9.1", - "License": "We need to program the cross-platform SMS hard drive!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Human Accountability Consultant", - "PackageVersion": "1.7.6", - "License": "You can\u0027t index the program without transmitting the virtual ADP program!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Lead Functionality Executive", - "PackageVersion": "5.0.3", - "License": "Try to quantify the SQL circuit, maybe it will quantify the optical circuit!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Regional Optimization Assistant", - "PackageVersion": "9.9.6", - "License": "Try to quantify the HTTP firewall, maybe it will quantify the optical firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Human Mobility Administrator", - "PackageVersion": "0.8.6", - "License": "We need to transmit the digital XSS pixel!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Corporate Intranet Architect", - "PackageVersion": "0.5.8", - "License": "Use the open-source SAS pixel, then you can copy the open-source pixel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Investor Program Strategist", - "PackageVersion": "1.1.5", - "License": "I\u0027ll transmit the online FTP bus, that should bus the FTP bus!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Future Markets Strategist", - "PackageVersion": "2.5.2", - "License": "We need to transmit the online COM pixel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Dynamic Usability Representative", - "PackageVersion": "6.7.8", - "License": "hacking the matrix won\u0027t do anything, we need to back up the primary TCP matrix!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Lead Creative Executive", - "PackageVersion": "6.0.5", - "License": "Try to bypass the SDD bus, maybe it will bypass the multi-byte bus!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Regional Security Specialist", - "PackageVersion": "0.2.4", - "License": "You can\u0027t program the interface without parsing the solid state COM interface!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Lead Program Administrator", - "PackageVersion": "1.2.0", - "License": "We need to transmit the digital SMS sensor!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Lead Optimization Architect", - "PackageVersion": "0.7.0", - "License": "Use the online SQL monitor, then you can parse the online monitor!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Customer Branding Engineer", - "PackageVersion": "1.8.6", - "License": "overriding the alarm won\u0027t do anything, we need to index the haptic SQL alarm!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Internal Accountability Producer", - "PackageVersion": "1.7.8", - "License": "Try to transmit the EXE bandwidth, maybe it will transmit the redundant bandwidth!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "National Paradigm Analyst", - "PackageVersion": "5.3.6", - "License": "We need to bypass the online AI system!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Forward Solutions Architect", - "PackageVersion": "4.2.8", - "License": "The PNG firewall is down, copy the open-source firewall so we can copy the PNG firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Chief Assurance Director", - "PackageVersion": "1.7.1", - "License": "Try to parse the COM application, maybe it will parse the cross-platform application!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Principal Implementation Planner", - "PackageVersion": "3.3.3", - "License": "If we parse the protocol, we can get to the GB protocol through the auxiliary GB protocol!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Product Marketing Architect", - "PackageVersion": "0.6.9", - "License": "Try to copy the AI protocol, maybe it will copy the 1080p protocol!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Product Creative Representative", - "PackageVersion": "4.5.6", - "License": "You can\u0027t reboot the microchip without indexing the optical AI microchip!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Future Integration Assistant", - "PackageVersion": "9.4.2", - "License": "We need to compress the optical CSS bandwidth!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Internal Branding Architect", - "PackageVersion": "1.6.5", - "License": "If we quantify the microchip, we can get to the HDD microchip through the auxiliary HDD microchip!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "District Applications Manager", - "PackageVersion": "4.6.2", - "License": "We need to program the wireless SQL pixel!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Forward Research Planner", - "PackageVersion": "3.6.8", - "License": "We need to calculate the optical THX capacitor!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Dynamic Configuration Producer", - "PackageVersion": "2.9.5", - "License": "Try to index the USB matrix, maybe it will index the optical matrix!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Forward Security Orchestrator", - "PackageVersion": "1.5.8", - "License": "Try to calculate the THX driver, maybe it will calculate the 1080p driver!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Identity Executive", - "PackageVersion": "5.6.2", - "License": "compressing the firewall won\u0027t do anything, we need to generate the bluetooth IB firewall!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Lead Optimization Engineer", - "PackageVersion": "9.3.6", - "License": "I\u0027ll input the auxiliary GB driver, that should driver the GB driver!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Senior Paradigm Liaison", - "PackageVersion": "8.9.7", - "License": "Use the open-source AI alarm, then you can copy the open-source alarm!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "International Web Orchestrator", - "PackageVersion": "1.7.0", - "License": "Use the optical XML array, then you can program the optical array!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "District Branding Administrator", - "PackageVersion": "3.2.0", - "License": "indexing the feed won\u0027t do anything, we need to input the digital ADP feed!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Internal Factors Developer", - "PackageVersion": "7.5.6", - "License": "The FTP firewall is down, program the solid state firewall so we can program the FTP firewall!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Chief Research Developer", - "PackageVersion": "2.4.7", - "License": "If we reboot the matrix, we can get to the ADP matrix through the virtual ADP matrix!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Customer Division Technician", - "PackageVersion": "4.1.9", - "License": "You can\u0027t bypass the transmitter without quantifying the open-source ADP transmitter!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Legacy Implementation Manager", - "PackageVersion": "4.3.8", - "License": "You can\u0027t parse the monitor without calculating the back-end JBOD monitor!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Chief Mobility Representative", - "PackageVersion": "5.0.7", - "License": "overriding the feed won\u0027t do anything, we need to index the auxiliary SAS feed!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Investor Optimization Agent", - "PackageVersion": "6.4.8", - "License": "If we transmit the program, we can get to the GB program through the auxiliary GB program!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Direct Optimization Developer", - "PackageVersion": "4.7.9", - "License": "Use the auxiliary RAM sensor, then you can input the auxiliary sensor!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Direct Response Analyst", - "PackageVersion": "7.9.5", - "License": "If we connect the bandwidth, we can get to the RAM bandwidth through the virtual RAM bandwidth!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Internal Accountability Facilitator", - "PackageVersion": "9.8.7", - "License": "The RSS bandwidth is down, calculate the multi-byte bandwidth so we can calculate the RSS bandwidth!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Legacy Interactions Associate", - "PackageVersion": "5.8.4", - "License": "I\u0027ll copy the 1080p SCSI alarm, that should alarm the SCSI alarm!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Dynamic Mobility Architect", - "PackageVersion": "8.5.6", - "License": "I\u0027ll bypass the primary XML program, that should program the XML program!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Legacy Program Liaison", - "PackageVersion": "5.9.3", - "License": "If we synthesize the protocol, we can get to the XML protocol through the neural XML protocol!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "International Infrastructure Coordinator", - "PackageVersion": "1.0.2", - "License": "Use the auxiliary HTTP driver, then you can transmit the auxiliary driver!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Global Assurance Strategist", - "PackageVersion": "6.2.8", - "License": "You can\u0027t override the feed without programming the wireless SDD feed!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Future Integration Director", - "PackageVersion": "8.5.3", - "License": "If we parse the panel, we can get to the ADP panel through the solid state ADP panel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Lead Optimization Developer", - "PackageVersion": "6.0.1", - "License": "The GB firewall is down, bypass the optical firewall so we can bypass the GB firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Future Implementation Supervisor", - "PackageVersion": "0.6.6", - "License": "I\u0027ll hack the mobile CSS feed, that should feed the CSS feed!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Dynamic Branding Director", - "PackageVersion": "5.3.8", - "License": "The SMS interface is down, parse the neural interface so we can parse the SMS interface!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Customer Applications Producer", - "PackageVersion": "3.8.8", - "License": "programming the system won\u0027t do anything, we need to program the back-end SMS system!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Central Brand Administrator", - "PackageVersion": "0.1.0", - "License": "Use the online SMTP transmitter, then you can copy the online transmitter!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Dynamic Markets Officer", - "PackageVersion": "4.1.6", - "License": "If we quantify the system, we can get to the SAS system through the primary SAS system!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Internal Identity Developer", - "PackageVersion": "5.7.9", - "License": "The SMTP card is down, transmit the redundant card so we can transmit the SMTP card!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Regional Division Officer", - "PackageVersion": "0.3.9", - "License": "If we synthesize the firewall, we can get to the IB firewall through the digital IB firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Internal Configuration Agent", - "PackageVersion": "3.6.9", - "License": "You can\u0027t parse the matrix without hacking the digital COM matrix!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Human Intranet Director", - "PackageVersion": "2.7.8", - "License": "The SQL pixel is down, back up the open-source pixel so we can back up the SQL pixel!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Global Optimization Technician", - "PackageVersion": "6.9.1", - "License": "transmitting the application won\u0027t do anything, we need to back up the primary TCP application!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "National Tactics Director", - "PackageVersion": "1.2.2", - "License": "If we reboot the firewall, we can get to the HTTP firewall through the primary HTTP firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Dynamic Brand Architect", - "PackageVersion": "5.2.2", - "License": "Try to generate the HDD circuit, maybe it will generate the redundant circuit!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Forward Implementation Director", - "PackageVersion": "7.7.5", - "License": "Try to back up the SMTP capacitor, maybe it will back up the haptic capacitor!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Regional Factors Strategist", - "PackageVersion": "4.9.1", - "License": "The SQL hard drive is down, generate the haptic hard drive so we can generate the SQL hard drive!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Global Branding Architect", - "PackageVersion": "9.3.4", - "License": "The SDD feed is down, copy the redundant feed so we can copy the SDD feed!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Lead Branding Supervisor", - "PackageVersion": "1.7.4", - "License": "Use the optical JSON pixel, then you can parse the optical pixel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Legacy Accounts Representative", - "PackageVersion": "2.4.7", - "License": "We need to calculate the auxiliary SDD program!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Central Tactics Engineer", - "PackageVersion": "9.0.2", - "License": "We need to index the back-end RAM port!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Senior Metrics Developer", - "PackageVersion": "6.2.8", - "License": "I\u0027ll override the wireless AI panel, that should panel the AI panel!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Chief Security Producer", - "PackageVersion": "0.0.7", - "License": "You can\u0027t reboot the feed without overriding the mobile IB feed!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Product Configuration Facilitator", - "PackageVersion": "6.6.6", - "License": "compressing the interface won\u0027t do anything, we need to navigate the wireless EXE interface!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Regional Assurance Analyst", - "PackageVersion": "7.4.0", - "License": "backing up the interface won\u0027t do anything, we need to hack the cross-platform THX interface!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Global Factors Executive", - "PackageVersion": "0.7.0", - "License": "backing up the firewall won\u0027t do anything, we need to bypass the haptic SCSI firewall!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Global Tactics Agent", - "PackageVersion": "2.8.3", - "License": "The SMS array is down, override the cross-platform array so we can override the SMS array!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Customer Research Developer", - "PackageVersion": "9.8.4", - "License": "You can\u0027t calculate the system without programming the back-end SMTP system!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "National Infrastructure Architect", - "PackageVersion": "8.6.9", - "License": "The CSS application is down, hack the multi-byte application so we can hack the CSS application!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Lead Division Specialist", - "PackageVersion": "1.1.7", - "License": "I\u0027ll quantify the redundant TCP microchip, that should microchip the TCP microchip!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Senior Intranet Designer", - "PackageVersion": "3.4.4", - "License": "Use the auxiliary PCI port, then you can generate the auxiliary port!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "National Applications Planner", - "PackageVersion": "9.6.9", - "License": "backing up the interface won\u0027t do anything, we need to back up the online HDD interface!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Dynamic Accounts Architect", - "PackageVersion": "9.9.2", - "License": "Try to compress the ADP alarm, maybe it will compress the solid state alarm!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Product Infrastructure Facilitator", - "PackageVersion": "9.3.0", - "License": "Use the redundant SDD system, then you can index the redundant system!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Future Data Orchestrator", - "PackageVersion": "5.5.1", - "License": "Try to hack the SMS circuit, maybe it will hack the neural circuit!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Principal Functionality Orchestrator", - "PackageVersion": "4.3.9", - "License": "overriding the monitor won\u0027t do anything, we need to connect the bluetooth SMS monitor!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Group Technician", - "PackageVersion": "2.3.0", - "License": "You can\u0027t navigate the transmitter without indexing the auxiliary XSS transmitter!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Central Accountability Engineer", - "PackageVersion": "4.7.9", - "License": "copying the system won\u0027t do anything, we need to back up the auxiliary GB system!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Global Branding Engineer", - "PackageVersion": "6.5.8", - "License": "If we quantify the protocol, we can get to the IB protocol through the neural IB protocol!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Human Branding Manager", - "PackageVersion": "9.8.8", - "License": "If we hack the system, we can get to the USB system through the online USB system!", - "LicenseInformationOrigin": 0 - } -] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt deleted file mode 100644 index e007b313..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt +++ /dev/null @@ -1,122 +0,0 @@ -[ - { - "PackageId": "Global Branding Technician", - "PackageVersion": "9.6.5", - "License": "copying the program won\u0027t do anything, we need to copy the auxiliary HDD program!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Central Integration Administrator", - "PackageVersion": "2.8.7", - "License": "Use the haptic COM feed, then you can bypass the haptic feed!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Corporate Markets Representative", - "PackageVersion": "7.5.2", - "License": "The GB pixel is down, copy the cross-platform pixel so we can copy the GB pixel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Future Web Facilitator", - "PackageVersion": "0.9.8", - "License": "You can\u0027t connect the panel without transmitting the haptic ADP panel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Regional Research Facilitator", - "PackageVersion": "0.6.9", - "License": "I\u0027ll override the redundant AI alarm, that should alarm the AI alarm!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Chief Branding Developer", - "PackageVersion": "1.0.8", - "License": "I\u0027ll connect the online AGP monitor, that should monitor the AGP monitor!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Internal Web Facilitator", - "PackageVersion": "6.5.7", - "License": "Try to navigate the THX card, maybe it will navigate the solid state card!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Investor Identity Manager", - "PackageVersion": "8.2.1", - "License": "synthesizing the monitor won\u0027t do anything, we need to index the solid state SSL monitor!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Operations Technician", - "PackageVersion": "9.1.1", - "License": "Use the back-end HDD firewall, then you can input the back-end firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Human Interactions Liaison", - "PackageVersion": "0.1.3", - "License": "generating the protocol won\u0027t do anything, we need to quantify the digital EXE protocol!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Global Quality Assistant", - "PackageVersion": "9.8.1", - "License": "We need to back up the redundant SAS matrix!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Dynamic Creative Representative", - "PackageVersion": "4.0.7", - "License": "If we reboot the protocol, we can get to the XML protocol through the virtual XML protocol!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Quality Engineer", - "PackageVersion": "1.9.6", - "License": "Try to compress the ADP application, maybe it will compress the bluetooth application!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "National Intranet Representative", - "PackageVersion": "4.1.1", - "License": "If we synthesize the hard drive, we can get to the SAS hard drive through the back-end SAS hard drive!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Optimization Officer", - "PackageVersion": "2.7.7", - "License": "If we override the hard drive, we can get to the SQL hard drive through the neural SQL hard drive!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "National Quality Agent", - "PackageVersion": "5.9.1", - "License": "We need to program the cross-platform SMS hard drive!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Human Accountability Consultant", - "PackageVersion": "1.7.6", - "License": "You can\u0027t index the program without transmitting the virtual ADP program!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Lead Functionality Executive", - "PackageVersion": "5.0.3", - "License": "Try to quantify the SQL circuit, maybe it will quantify the optical circuit!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Regional Optimization Assistant", - "PackageVersion": "9.9.6", - "License": "Try to quantify the HTTP firewall, maybe it will quantify the optical firewall!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Human Mobility Administrator", - "PackageVersion": "0.8.6", - "License": "We need to transmit the digital XSS pixel!", - "LicenseInformationOrigin": 0 - } -] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt deleted file mode 100644 index 1bbab2d7..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt +++ /dev/null @@ -1,32 +0,0 @@ -[ - { - "PackageId": "Global Branding Technician", - "PackageVersion": "9.6.5", - "License": "copying the program won\u0027t do anything, we need to copy the auxiliary HDD program!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Central Integration Administrator", - "PackageVersion": "2.8.7", - "License": "Use the haptic COM feed, then you can bypass the haptic feed!", - "LicenseInformationOrigin": 0 - }, - { - "PackageId": "Corporate Markets Representative", - "PackageVersion": "7.5.2", - "License": "The GB pixel is down, copy the cross-platform pixel so we can copy the GB pixel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Future Web Facilitator", - "PackageVersion": "0.9.8", - "License": "You can\u0027t connect the panel without transmitting the haptic ADP panel!", - "LicenseInformationOrigin": 1 - }, - { - "PackageId": "Regional Research Facilitator", - "PackageVersion": "0.6.9", - "License": "I\u0027ll override the redundant AI alarm, that should alarm the AI alarm!", - "LicenseInformationOrigin": 1 - } -] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.cs b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.cs deleted file mode 100644 index 15cd47d2..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.cs +++ /dev/null @@ -1,55 +0,0 @@ -using Bogus; -using NuGet.Versioning; -using NuGetUtility.LicenseValidator; -using NuGetUtility.Output; -using NuGetUtility.Output.Json; -using NuGetUtility.Test.Extensions; - -namespace NuGetUtility.Test.Output.Json -{ - [TestFixture] - public class JsonOutputFormatterPrettyTest - { - [SetUp] - public void SetUp() - { - _validatedLicenseFaker = new Faker().CustomInstantiator(f => - new ValidatedLicense(f.Name.JobTitle(), - new NuGetVersion(f.System.Semver()), - f.Hacker.Phrase(), - f.Random.Enum())) - .UseSeed(5432); - _licenseValidationErrorFaker = new Faker().CustomInstantiator(f => - new LicenseValidationError(f.System.FilePath(), - f.Name.FullName(), - new NuGetVersion(f.System.Semver()), - f.Lorem.Sentence())) - .UseSeed(126334); - _uut = new JsonOutputFormatter(true); - } - private IOutputFormatter _uut = null!; - private Faker _validatedLicenseFaker = null!; - private Faker _licenseValidationErrorFaker = null!; - - [Test] - public async Task Errors_Should_PrintCorrectTable([Values(0, 1, 5, 20)] int errorCount) - { - using var stream = new MemoryStream(); - var errors = _licenseValidationErrorFaker.GenerateForever().Take(errorCount); - await _uut.Write(stream, errors); - - await Verify(stream.AsString()); - } - - [Test] - public async Task ValidatedLicenses_Should_PrintCorrectTable( - [Values(0, 1, 5, 20, 100)] int validatedLicenseCount) - { - using var stream = new MemoryStream(); - var validated = _validatedLicenseFaker.GenerateForever().Take(validatedLicenseCount); - await _uut.Write(stream, validated); - - await Verify(stream.AsString()); - } - } -} diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt deleted file mode 100644 index b76e44e1..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt deleted file mode 100644 index e098e189..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[{"Context":"/boot/defaults/background_comoro_franc.mods","PackageId":"Rae Beahan","PackageVersion":"4.0.9","Message":"Hic labore libero rerum."}] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt deleted file mode 100644 index 527423a1..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[{"Context":"/boot/defaults/background_comoro_franc.mods","PackageId":"Rae Beahan","PackageVersion":"4.0.9","Message":"Hic labore libero rerum."},{"Context":"/Users/concrete_oklahoma.sig","PackageId":"Wilfrid Keebler","PackageVersion":"8.2.3","Message":"Eveniet aut expedita eum officia sequi ipsa."},{"Context":"/lost\u002Bfound/outdoors_\u0026_industrial_legacy_lodge.qps","PackageId":"Zakary Kozey","PackageVersion":"2.5.5","Message":"Officia quos saepe neque dolores aliquam mollitia omnis totam et."},{"Context":"/rescue/virtual.xlam","PackageId":"Arturo Murazik","PackageVersion":"6.7.4","Message":"Nemo error repellendus commodi ut ut."},{"Context":"/opt/include/ftp.ppt","PackageId":"Floyd Predovic","PackageVersion":"2.0.2","Message":"Ratione et nihil debitis voluptate error reprehenderit iste aut aut."},{"Context":"/etc/calculating_back_up_bedfordshire.p","PackageId":"Bernhard Schmitt","PackageVersion":"5.2.2","Message":"Id aut sequi qui rerum odit."},{"Context":"/lost\u002Bfound/sensor_ergonomic_turnpike.ez","PackageId":"Godfrey Schoen","PackageVersion":"4.8.3","Message":"Sit harum id voluptas velit."},{"Context":"/var/spool/ergonomic_rubber_pants.dna","PackageId":"Gerard Schneider","PackageVersion":"4.2.7","Message":"Alias illum vitae aut incidunt nam."},{"Context":"/var/spool/cultivate_matrix_practical_frozen_computer.cxt","PackageId":"Jarvis Lockman","PackageVersion":"4.4.1","Message":"Cum nam repudiandae."},{"Context":"/usr/lib/blue_delaware_tasty.ics","PackageId":"Jazlyn Greenfelder","PackageVersion":"9.4.9","Message":"Quis officia ut iusto dicta."},{"Context":"/opt/include/data_warehouse_virtual_egyptian_pound.pfr","PackageId":"Sabina Rath","PackageVersion":"4.4.3","Message":"Fugit impedit minima eum iste et amet similique molestiae eum."},{"Context":"/usr/crescent.air","PackageId":"Kaylah Stroman","PackageVersion":"2.5.5","Message":"Unde itaque debitis sunt totam fugiat tenetur repellat est."},{"Context":"/usr/share/small_organized.joda","PackageId":"Royce Thiel","PackageVersion":"1.1.3","Message":"Iusto omnis et dicta aut et nemo nulla dolorem vero."},{"Context":"/usr/local/bin/rhode_island.edx","PackageId":"Ramiro Borer","PackageVersion":"0.2.5","Message":"Rerum consectetur maiores officia aut in dolore perferendis."},{"Context":"/opt/killer_withdrawal.skd","PackageId":"Marc Hoppe","PackageVersion":"7.0.6","Message":"Quo dolorum exercitationem rerum soluta aut ut ipsa temporibus beatae."},{"Context":"/var/spool/networked_cultivate_bedfordshire.icm","PackageId":"Anastacio Shields","PackageVersion":"8.4.4","Message":"Saepe enim beatae qui nihil commodi voluptatem aut."},{"Context":"/usr/include/ohio.xenc","PackageId":"Cody Runte","PackageVersion":"3.9.5","Message":"Consequatur dolorum qui consequatur sapiente."},{"Context":"/usr/lib/buckinghamshire_checking_account_corporate.xwd","PackageId":"Chadd Schamberger","PackageVersion":"5.8.8","Message":"Quo consequatur et."},{"Context":"/private/var/open_source.svgz","PackageId":"Alessia Lebsack","PackageVersion":"7.8.2","Message":"Aspernatur sunt odio."},{"Context":"/Library/networks.txt","PackageId":"Flavio Franecki","PackageVersion":"6.3.3","Message":"Provident velit ut occaecati architecto quos fuga iste optio."}] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt deleted file mode 100644 index 066ed02f..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[{"Context":"/boot/defaults/background_comoro_franc.mods","PackageId":"Rae Beahan","PackageVersion":"4.0.9","Message":"Hic labore libero rerum."},{"Context":"/Users/concrete_oklahoma.sig","PackageId":"Wilfrid Keebler","PackageVersion":"8.2.3","Message":"Eveniet aut expedita eum officia sequi ipsa."},{"Context":"/lost\u002Bfound/outdoors_\u0026_industrial_legacy_lodge.qps","PackageId":"Zakary Kozey","PackageVersion":"2.5.5","Message":"Officia quos saepe neque dolores aliquam mollitia omnis totam et."},{"Context":"/rescue/virtual.xlam","PackageId":"Arturo Murazik","PackageVersion":"6.7.4","Message":"Nemo error repellendus commodi ut ut."},{"Context":"/opt/include/ftp.ppt","PackageId":"Floyd Predovic","PackageVersion":"2.0.2","Message":"Ratione et nihil debitis voluptate error reprehenderit iste aut aut."}] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt deleted file mode 100644 index b76e44e1..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt deleted file mode 100644 index 547d15a7..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[{"PackageId":"Dynamic Intranet Planner","PackageVersion":"0.2.4","License":"Try to synthesize the TCP matrix, maybe it will synthesize the primary matrix!","LicenseInformationOrigin":0}] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt deleted file mode 100644 index 5a813f30..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[{"PackageId":"Dynamic Intranet Planner","PackageVersion":"0.2.4","License":"Try to synthesize the TCP matrix, maybe it will synthesize the primary matrix!","LicenseInformationOrigin":0},{"PackageId":"District Factors Supervisor","PackageVersion":"4.7.7","License":"compressing the matrix won\u0027t do anything, we need to calculate the 1080p TCP matrix!","LicenseInformationOrigin":0},{"PackageId":"International Integration Strategist","PackageVersion":"4.1.9","License":"You can\u0027t compress the hard drive without bypassing the bluetooth SDD hard drive!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Creative Supervisor","PackageVersion":"4.4.8","License":"If we index the capacitor, we can get to the IB capacitor through the multi-byte IB capacitor!","LicenseInformationOrigin":0},{"PackageId":"Principal Branding Officer","PackageVersion":"9.2.6","License":"You can\u0027t calculate the driver without bypassing the wireless CSS driver!","LicenseInformationOrigin":0},{"PackageId":"Principal Response Engineer","PackageVersion":"7.8.4","License":"We need to navigate the multi-byte FTP matrix!","LicenseInformationOrigin":1},{"PackageId":"Senior Infrastructure Officer","PackageVersion":"1.4.0","License":"If we input the circuit, we can get to the IB circuit through the auxiliary IB circuit!","LicenseInformationOrigin":1},{"PackageId":"Principal Configuration Engineer","PackageVersion":"4.7.9","License":"synthesizing the pixel won\u0027t do anything, we need to transmit the solid state FTP pixel!","LicenseInformationOrigin":1},{"PackageId":"Central Directives Representative","PackageVersion":"3.6.2","License":"Use the multi-byte ADP matrix, then you can quantify the multi-byte matrix!","LicenseInformationOrigin":1},{"PackageId":"Principal Web Manager","PackageVersion":"9.5.3","License":"If we bypass the protocol, we can get to the JBOD protocol through the online JBOD protocol!","LicenseInformationOrigin":0},{"PackageId":"Principal Intranet Designer","PackageVersion":"1.7.5","License":"Try to calculate the EXE circuit, maybe it will calculate the multi-byte circuit!","LicenseInformationOrigin":0},{"PackageId":"International Directives Coordinator","PackageVersion":"3.0.2","License":"hacking the panel won\u0027t do anything, we need to reboot the auxiliary SDD panel!","LicenseInformationOrigin":0},{"PackageId":"Future Mobility Strategist","PackageVersion":"0.7.8","License":"Try to index the FTP circuit, maybe it will index the digital circuit!","LicenseInformationOrigin":0},{"PackageId":"District Response Executive","PackageVersion":"3.7.3","License":"Try to bypass the ADP hard drive, maybe it will bypass the bluetooth hard drive!","LicenseInformationOrigin":0},{"PackageId":"Internal Integration Manager","PackageVersion":"9.4.4","License":"We need to generate the cross-platform EXE hard drive!","LicenseInformationOrigin":0},{"PackageId":"Lead Identity Consultant","PackageVersion":"4.1.5","License":"I\u0027ll calculate the optical XSS matrix, that should matrix the XSS matrix!","LicenseInformationOrigin":0},{"PackageId":"Forward Intranet Assistant","PackageVersion":"5.8.3","License":"I\u0027ll compress the primary AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Central Marketing Analyst","PackageVersion":"0.6.5","License":"parsing the alarm won\u0027t do anything, we need to hack the virtual SMS alarm!","LicenseInformationOrigin":1},{"PackageId":"Senior Security Administrator","PackageVersion":"9.6.2","License":"Try to input the HTTP monitor, maybe it will input the multi-byte monitor!","LicenseInformationOrigin":1},{"PackageId":"Corporate Web Technician","PackageVersion":"9.3.6","License":"We need to input the auxiliary THX system!","LicenseInformationOrigin":1},{"PackageId":"Central Data Technician","PackageVersion":"4.5.1","License":"You can\u0027t bypass the matrix without transmitting the virtual CSS matrix!","LicenseInformationOrigin":0},{"PackageId":"Human Usability Analyst","PackageVersion":"8.4.7","License":"Try to navigate the XSS protocol, maybe it will navigate the cross-platform protocol!","LicenseInformationOrigin":1},{"PackageId":"Chief Factors Supervisor","PackageVersion":"0.2.9","License":"We need to hack the 1080p SMS interface!","LicenseInformationOrigin":0},{"PackageId":"Customer Paradigm Designer","PackageVersion":"8.7.6","License":"I\u0027ll hack the neural JSON panel, that should panel the JSON panel!","LicenseInformationOrigin":0},{"PackageId":"International Division Representative","PackageVersion":"0.5.6","License":"If we compress the panel, we can get to the JSON panel through the digital JSON panel!","LicenseInformationOrigin":1},{"PackageId":"Lead Configuration Developer","PackageVersion":"1.4.1","License":"backing up the system won\u0027t do anything, we need to generate the digital AI system!","LicenseInformationOrigin":0},{"PackageId":"Regional Applications Consultant","PackageVersion":"1.6.8","License":"I\u0027ll synthesize the virtual SCSI application, that should application the SCSI application!","LicenseInformationOrigin":1},{"PackageId":"Legacy Solutions Officer","PackageVersion":"3.8.3","License":"Use the bluetooth CSS microchip, then you can synthesize the bluetooth microchip!","LicenseInformationOrigin":1},{"PackageId":"Lead Identity Strategist","PackageVersion":"5.4.5","License":"Use the digital GB bandwidth, then you can bypass the digital bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Future Paradigm Producer","PackageVersion":"7.0.9","License":"You can\u0027t transmit the microchip without synthesizing the cross-platform EXE microchip!","LicenseInformationOrigin":0},{"PackageId":"Lead Factors Manager","PackageVersion":"7.4.5","License":"You can\u0027t transmit the circuit without generating the optical SAS circuit!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"5.3.0","License":"Try to parse the XSS sensor, maybe it will parse the back-end sensor!","LicenseInformationOrigin":1},{"PackageId":"Future Response Specialist","PackageVersion":"6.5.8","License":"The CSS capacitor is down, connect the haptic capacitor so we can connect the CSS capacitor!","LicenseInformationOrigin":0},{"PackageId":"Global Web Supervisor","PackageVersion":"4.7.8","License":"I\u0027ll transmit the 1080p SMTP application, that should application the SMTP application!","LicenseInformationOrigin":0},{"PackageId":"Direct Applications Engineer","PackageVersion":"9.6.7","License":"hacking the firewall won\u0027t do anything, we need to hack the virtual RSS firewall!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Officer","PackageVersion":"7.5.8","License":"If we synthesize the circuit, we can get to the CSS circuit through the multi-byte CSS circuit!","LicenseInformationOrigin":1},{"PackageId":"Investor Program Specialist","PackageVersion":"5.9.5","License":"I\u0027ll quantify the wireless SSL capacitor, that should capacitor the SSL capacitor!","LicenseInformationOrigin":1},{"PackageId":"Corporate Assurance Developer","PackageVersion":"2.4.5","License":"Try to back up the USB firewall, maybe it will back up the 1080p firewall!","LicenseInformationOrigin":1},{"PackageId":"Chief Mobility Officer","PackageVersion":"5.7.3","License":"We need to transmit the back-end HTTP panel!","LicenseInformationOrigin":0},{"PackageId":"Chief Functionality Consultant","PackageVersion":"3.8.2","License":"If we navigate the sensor, we can get to the EXE sensor through the bluetooth EXE sensor!","LicenseInformationOrigin":0},{"PackageId":"Regional Division Facilitator","PackageVersion":"8.2.7","License":"Use the bluetooth SSL protocol, then you can override the bluetooth protocol!","LicenseInformationOrigin":0},{"PackageId":"Customer Markets Agent","PackageVersion":"0.0.5","License":"You can\u0027t index the matrix without parsing the multi-byte FTP matrix!","LicenseInformationOrigin":0},{"PackageId":"Future Interactions Manager","PackageVersion":"2.4.6","License":"We need to compress the mobile HDD program!","LicenseInformationOrigin":1},{"PackageId":"Regional Functionality Representative","PackageVersion":"3.1.7","License":"We need to quantify the wireless PCI alarm!","LicenseInformationOrigin":0},{"PackageId":"Chief Factors Facilitator","PackageVersion":"8.4.8","License":"You can\u0027t navigate the driver without generating the haptic GB driver!","LicenseInformationOrigin":1},{"PackageId":"National Metrics Facilitator","PackageVersion":"5.6.6","License":"hacking the interface won\u0027t do anything, we need to compress the digital XML interface!","LicenseInformationOrigin":1},{"PackageId":"Future Integration Developer","PackageVersion":"5.1.5","License":"The SDD monitor is down, hack the 1080p monitor so we can hack the SDD monitor!","LicenseInformationOrigin":0},{"PackageId":"National Data Director","PackageVersion":"8.6.9","License":"I\u0027ll hack the cross-platform AI sensor, that should sensor the AI sensor!","LicenseInformationOrigin":0},{"PackageId":"Chief Accounts Assistant","PackageVersion":"7.8.4","License":"Use the bluetooth HDD sensor, then you can parse the bluetooth sensor!","LicenseInformationOrigin":0},{"PackageId":"District Assurance Orchestrator","PackageVersion":"5.7.1","License":"You can\u0027t navigate the panel without backing up the cross-platform FTP panel!","LicenseInformationOrigin":0},{"PackageId":"Central Tactics Analyst","PackageVersion":"8.0.1","License":"You can\u0027t back up the port without programming the bluetooth HTTP port!","LicenseInformationOrigin":0},{"PackageId":"Future Communications Developer","PackageVersion":"7.5.8","License":"overriding the monitor won\u0027t do anything, we need to input the online CSS monitor!","LicenseInformationOrigin":0},{"PackageId":"National Quality Consultant","PackageVersion":"5.7.6","License":"You can\u0027t input the bandwidth without overriding the mobile FTP bandwidth!","LicenseInformationOrigin":0},{"PackageId":"Product Infrastructure Coordinator","PackageVersion":"7.8.3","License":"Use the solid state FTP pixel, then you can calculate the solid state pixel!","LicenseInformationOrigin":0},{"PackageId":"Product Optimization Specialist","PackageVersion":"0.0.7","License":"If we bypass the port, we can get to the COM port through the optical COM port!","LicenseInformationOrigin":0},{"PackageId":"Investor Communications Liaison","PackageVersion":"2.3.6","License":"I\u0027ll synthesize the multi-byte PCI transmitter, that should transmitter the PCI transmitter!","LicenseInformationOrigin":0},{"PackageId":"Regional Directives Liaison","PackageVersion":"4.8.1","License":"I\u0027ll parse the redundant FTP driver, that should driver the FTP driver!","LicenseInformationOrigin":0},{"PackageId":"National Web Technician","PackageVersion":"4.8.1","License":"The SMS microchip is down, synthesize the 1080p microchip so we can synthesize the SMS microchip!","LicenseInformationOrigin":0},{"PackageId":"Principal Assurance Executive","PackageVersion":"7.2.4","License":"Try to index the SMS system, maybe it will index the cross-platform system!","LicenseInformationOrigin":1},{"PackageId":"Direct Marketing Consultant","PackageVersion":"2.6.1","License":"Try to hack the SSL monitor, maybe it will hack the open-source monitor!","LicenseInformationOrigin":0},{"PackageId":"International Usability Developer","PackageVersion":"6.1.9","License":"overriding the program won\u0027t do anything, we need to synthesize the digital AI program!","LicenseInformationOrigin":1},{"PackageId":"Global Branding Architect","PackageVersion":"0.6.2","License":"I\u0027ll generate the auxiliary XSS circuit, that should circuit the XSS circuit!","LicenseInformationOrigin":0},{"PackageId":"Senior Markets Manager","PackageVersion":"7.4.3","License":"Use the 1080p PNG matrix, then you can synthesize the 1080p matrix!","LicenseInformationOrigin":1},{"PackageId":"Central Quality Architect","PackageVersion":"8.9.5","License":"Use the multi-byte TCP transmitter, then you can compress the multi-byte transmitter!","LicenseInformationOrigin":1},{"PackageId":"Global Marketing Analyst","PackageVersion":"6.3.7","License":"If we connect the microchip, we can get to the SCSI microchip through the optical SCSI microchip!","LicenseInformationOrigin":1},{"PackageId":"Human Research Agent","PackageVersion":"7.3.4","License":"Try to hack the JSON sensor, maybe it will hack the 1080p sensor!","LicenseInformationOrigin":1},{"PackageId":"National Solutions Engineer","PackageVersion":"5.8.4","License":"You can\u0027t bypass the port without navigating the optical PNG port!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Intranet Agent","PackageVersion":"6.3.2","License":"You can\u0027t transmit the panel without navigating the wireless RAM panel!","LicenseInformationOrigin":0},{"PackageId":"National Factors Developer","PackageVersion":"7.8.0","License":"Use the redundant SMS pixel, then you can navigate the redundant pixel!","LicenseInformationOrigin":1},{"PackageId":"Forward Usability Supervisor","PackageVersion":"9.7.6","License":"The SQL driver is down, hack the open-source driver so we can hack the SQL driver!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Quality Designer","PackageVersion":"6.6.1","License":"The XML bandwidth is down, bypass the primary bandwidth so we can bypass the XML bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Operations Specialist","PackageVersion":"7.4.2","License":"Try to synthesize the PNG bandwidth, maybe it will synthesize the online bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Global Research Strategist","PackageVersion":"1.1.6","License":"The IB panel is down, input the optical panel so we can input the IB panel!","LicenseInformationOrigin":0},{"PackageId":"Central Communications Supervisor","PackageVersion":"7.3.9","License":"I\u0027ll connect the redundant RAM driver, that should driver the RAM driver!","LicenseInformationOrigin":0},{"PackageId":"Legacy Accountability Officer","PackageVersion":"7.2.4","License":"I\u0027ll parse the bluetooth JBOD firewall, that should firewall the JBOD firewall!","LicenseInformationOrigin":0},{"PackageId":"District Applications Producer","PackageVersion":"3.6.1","License":"If we input the monitor, we can get to the HTTP monitor through the neural HTTP monitor!","LicenseInformationOrigin":0},{"PackageId":"Corporate Data Designer","PackageVersion":"0.9.9","License":"The XSS alarm is down, hack the solid state alarm so we can hack the XSS alarm!","LicenseInformationOrigin":1},{"PackageId":"International Accounts Analyst","PackageVersion":"8.9.5","License":"navigating the interface won\u0027t do anything, we need to bypass the haptic TCP interface!","LicenseInformationOrigin":0},{"PackageId":"Human Group Manager","PackageVersion":"9.2.4","License":"I\u0027ll generate the virtual GB system, that should system the GB system!","LicenseInformationOrigin":1},{"PackageId":"Customer Response Architect","PackageVersion":"4.7.0","License":"We need to parse the online JBOD hard drive!","LicenseInformationOrigin":1},{"PackageId":"Future Metrics Associate","PackageVersion":"6.3.1","License":"If we back up the monitor, we can get to the RSS monitor through the primary RSS monitor!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Implementation Analyst","PackageVersion":"3.6.0","License":"Try to back up the FTP hard drive, maybe it will back up the mobile hard drive!","LicenseInformationOrigin":1},{"PackageId":"National Configuration Analyst","PackageVersion":"4.1.6","License":"I\u0027ll synthesize the digital COM protocol, that should protocol the COM protocol!","LicenseInformationOrigin":1},{"PackageId":"Product Optimization Manager","PackageVersion":"4.0.7","License":"You can\u0027t bypass the sensor without parsing the optical CSS sensor!","LicenseInformationOrigin":1},{"PackageId":"Central Web Director","PackageVersion":"2.4.5","License":"Use the 1080p SMTP matrix, then you can synthesize the 1080p matrix!","LicenseInformationOrigin":0},{"PackageId":"Senior Program Representative","PackageVersion":"0.2.4","License":"The IB bandwidth is down, generate the 1080p bandwidth so we can generate the IB bandwidth!","LicenseInformationOrigin":0},{"PackageId":"Internal Operations Analyst","PackageVersion":"5.8.0","License":"Try to parse the EXE program, maybe it will parse the digital program!","LicenseInformationOrigin":0},{"PackageId":"Customer Brand Executive","PackageVersion":"5.3.2","License":"The XSS program is down, transmit the bluetooth program so we can transmit the XSS program!","LicenseInformationOrigin":1},{"PackageId":"Senior Markets Consultant","PackageVersion":"7.8.2","License":"The TCP microchip is down, compress the wireless microchip so we can compress the TCP microchip!","LicenseInformationOrigin":0},{"PackageId":"Chief Markets Planner","PackageVersion":"8.7.7","License":"If we override the application, we can get to the PNG application through the optical PNG application!","LicenseInformationOrigin":1},{"PackageId":"Human Data Designer","PackageVersion":"1.0.2","License":"The RAM monitor is down, index the mobile monitor so we can index the RAM monitor!","LicenseInformationOrigin":1},{"PackageId":"Lead Integration Architect","PackageVersion":"8.9.9","License":"Try to input the JBOD array, maybe it will input the virtual array!","LicenseInformationOrigin":1},{"PackageId":"Global Accounts Strategist","PackageVersion":"1.7.0","License":"Use the cross-platform SQL sensor, then you can generate the cross-platform sensor!","LicenseInformationOrigin":1},{"PackageId":"Human Intranet Manager","PackageVersion":"9.4.8","License":"You can\u0027t back up the port without transmitting the wireless SSL port!","LicenseInformationOrigin":1},{"PackageId":"Internal Interactions Designer","PackageVersion":"5.4.1","License":"You can\u0027t transmit the bandwidth without programming the 1080p PCI bandwidth!","LicenseInformationOrigin":0},{"PackageId":"International Accountability Manager","PackageVersion":"6.2.0","License":"Try to copy the TCP monitor, maybe it will copy the auxiliary monitor!","LicenseInformationOrigin":1},{"PackageId":"Global Response Analyst","PackageVersion":"8.9.7","License":"We need to input the digital RAM monitor!","LicenseInformationOrigin":0},{"PackageId":"Product Research Orchestrator","PackageVersion":"1.6.1","License":"We need to back up the back-end SQL matrix!","LicenseInformationOrigin":1},{"PackageId":"Product Quality Orchestrator","PackageVersion":"8.1.8","License":"We need to parse the bluetooth EXE bus!","LicenseInformationOrigin":1},{"PackageId":"District Branding Associate","PackageVersion":"4.2.5","License":"I\u0027ll reboot the wireless PNG interface, that should interface the PNG interface!","LicenseInformationOrigin":0}] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt deleted file mode 100644 index 4646e44b..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[{"PackageId":"Dynamic Intranet Planner","PackageVersion":"0.2.4","License":"Try to synthesize the TCP matrix, maybe it will synthesize the primary matrix!","LicenseInformationOrigin":0},{"PackageId":"District Factors Supervisor","PackageVersion":"4.7.7","License":"compressing the matrix won\u0027t do anything, we need to calculate the 1080p TCP matrix!","LicenseInformationOrigin":0},{"PackageId":"International Integration Strategist","PackageVersion":"4.1.9","License":"You can\u0027t compress the hard drive without bypassing the bluetooth SDD hard drive!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Creative Supervisor","PackageVersion":"4.4.8","License":"If we index the capacitor, we can get to the IB capacitor through the multi-byte IB capacitor!","LicenseInformationOrigin":0},{"PackageId":"Principal Branding Officer","PackageVersion":"9.2.6","License":"You can\u0027t calculate the driver without bypassing the wireless CSS driver!","LicenseInformationOrigin":0},{"PackageId":"Principal Response Engineer","PackageVersion":"7.8.4","License":"We need to navigate the multi-byte FTP matrix!","LicenseInformationOrigin":1},{"PackageId":"Senior Infrastructure Officer","PackageVersion":"1.4.0","License":"If we input the circuit, we can get to the IB circuit through the auxiliary IB circuit!","LicenseInformationOrigin":1},{"PackageId":"Principal Configuration Engineer","PackageVersion":"4.7.9","License":"synthesizing the pixel won\u0027t do anything, we need to transmit the solid state FTP pixel!","LicenseInformationOrigin":1},{"PackageId":"Central Directives Representative","PackageVersion":"3.6.2","License":"Use the multi-byte ADP matrix, then you can quantify the multi-byte matrix!","LicenseInformationOrigin":1},{"PackageId":"Principal Web Manager","PackageVersion":"9.5.3","License":"If we bypass the protocol, we can get to the JBOD protocol through the online JBOD protocol!","LicenseInformationOrigin":0},{"PackageId":"Principal Intranet Designer","PackageVersion":"1.7.5","License":"Try to calculate the EXE circuit, maybe it will calculate the multi-byte circuit!","LicenseInformationOrigin":0},{"PackageId":"International Directives Coordinator","PackageVersion":"3.0.2","License":"hacking the panel won\u0027t do anything, we need to reboot the auxiliary SDD panel!","LicenseInformationOrigin":0},{"PackageId":"Future Mobility Strategist","PackageVersion":"0.7.8","License":"Try to index the FTP circuit, maybe it will index the digital circuit!","LicenseInformationOrigin":0},{"PackageId":"District Response Executive","PackageVersion":"3.7.3","License":"Try to bypass the ADP hard drive, maybe it will bypass the bluetooth hard drive!","LicenseInformationOrigin":0},{"PackageId":"Internal Integration Manager","PackageVersion":"9.4.4","License":"We need to generate the cross-platform EXE hard drive!","LicenseInformationOrigin":0},{"PackageId":"Lead Identity Consultant","PackageVersion":"4.1.5","License":"I\u0027ll calculate the optical XSS matrix, that should matrix the XSS matrix!","LicenseInformationOrigin":0},{"PackageId":"Forward Intranet Assistant","PackageVersion":"5.8.3","License":"I\u0027ll compress the primary AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Central Marketing Analyst","PackageVersion":"0.6.5","License":"parsing the alarm won\u0027t do anything, we need to hack the virtual SMS alarm!","LicenseInformationOrigin":1},{"PackageId":"Senior Security Administrator","PackageVersion":"9.6.2","License":"Try to input the HTTP monitor, maybe it will input the multi-byte monitor!","LicenseInformationOrigin":1},{"PackageId":"Corporate Web Technician","PackageVersion":"9.3.6","License":"We need to input the auxiliary THX system!","LicenseInformationOrigin":1}] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt deleted file mode 100644 index 464095f3..00000000 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt +++ /dev/null @@ -1 +0,0 @@ -[{"PackageId":"Dynamic Intranet Planner","PackageVersion":"0.2.4","License":"Try to synthesize the TCP matrix, maybe it will synthesize the primary matrix!","LicenseInformationOrigin":0},{"PackageId":"District Factors Supervisor","PackageVersion":"4.7.7","License":"compressing the matrix won\u0027t do anything, we need to calculate the 1080p TCP matrix!","LicenseInformationOrigin":0},{"PackageId":"International Integration Strategist","PackageVersion":"4.1.9","License":"You can\u0027t compress the hard drive without bypassing the bluetooth SDD hard drive!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Creative Supervisor","PackageVersion":"4.4.8","License":"If we index the capacitor, we can get to the IB capacitor through the multi-byte IB capacitor!","LicenseInformationOrigin":0},{"PackageId":"Principal Branding Officer","PackageVersion":"9.2.6","License":"You can\u0027t calculate the driver without bypassing the wireless CSS driver!","LicenseInformationOrigin":0}] diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.cs b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.cs index 80f0724a..9d114319 100644 --- a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.cs +++ b/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterTest.cs @@ -1,55 +1,25 @@ -using Bogus; -using NuGet.Versioning; -using NuGetUtility.LicenseValidator; -using NuGetUtility.Output; +using NuGetUtility.Output; using NuGetUtility.Output.Json; -using NuGetUtility.Test.Extensions; namespace NuGetUtility.Test.Output.Json { - [TestFixture] - public class JsonOutputFormatterTest + + [TestFixture(false, false)] + [TestFixture(true, false)] + [TestFixture(false, true)] + [TestFixture(true, true)] + public class JsonOutputFormatterTest : TestBase { - [SetUp] - public void SetUp() + private readonly bool _prettyPrint; + private readonly bool _omitValidLicensesOnError; + public JsonOutputFormatterTest(bool prettyPrint, bool omitValidLicensesOnError) { - _validatedLicenseFaker = new Faker().CustomInstantiator(f => - new ValidatedLicense(f.Name.JobTitle(), - new NuGetVersion(f.System.Semver()), - f.Hacker.Phrase(), - f.Random.Enum())) - .UseSeed(23498); - _licenseValidationErrorFaker = new Faker().CustomInstantiator(f => - new LicenseValidationError(f.System.FilePath(), - f.Name.FullName(), - new NuGetVersion(f.System.Semver()), - f.Lorem.Sentence())) - .UseSeed(745039342); - _uut = new JsonOutputFormatter(); + _prettyPrint = prettyPrint; + _omitValidLicensesOnError = omitValidLicensesOnError; } - private IOutputFormatter _uut = null!; - private Faker _validatedLicenseFaker = null!; - private Faker _licenseValidationErrorFaker = null!; - - [Test] - public async Task Errors_Should_PrintCorrectTable([Values(0, 1, 5, 20)] int errorCount) + protected override IOutputFormatter CreateUut() { - using var stream = new MemoryStream(); - var errors = _licenseValidationErrorFaker.GenerateForever().Take(errorCount); - await _uut.Write(stream, errors); - - await Verify(stream.AsString()); - } - - [Test] - public async Task ValidatedLicenses_Should_PrintCorrectTable( - [Values(0, 1, 5, 20, 100)] int validatedLicenseCount) - { - using var stream = new MemoryStream(); - var validated = _validatedLicenseFaker.GenerateForever().Take(validatedLicenseCount); - await _uut.Write(stream, validated); - - await Verify(stream.AsString()); + return new JsonOutputFormatter(_prettyPrint, _omitValidLicensesOnError); } } } diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt new file mode 100644 index 00000000..739f3790 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt new file mode 100644 index 00000000..a303267b --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt new file mode 100644 index 00000000..7aac02c2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt new file mode 100644 index 00000000..543830d8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt new file mode 100644 index 00000000..66ff871c --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Central Data Consultant","PackageVersion":"6.5.0","PackageProjectUrl":"https://delilah.org","License":"generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Central Creative Analyst","PackageVersion":"3.6.4","PackageProjectUrl":"http://abigayle.net","License":"programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!","LicenseInformationOrigin":0},{"PackageId":"Human Optimization Director","PackageVersion":"0.1.8","PackageProjectUrl":"https://crystal.info","License":"We need to transmit the back-end PCI panel!","LicenseInformationOrigin":2},{"PackageId":"Forward Infrastructure Specialist","PackageVersion":"6.1.6","PackageProjectUrl":"http://melisa.com","License":"quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!","LicenseInformationOrigin":2},{"PackageId":"Direct Research Assistant","PackageVersion":"5.9.7","PackageProjectUrl":"http://danial.org","License":"Try to connect the TCP circuit, maybe it will connect the back-end circuit!","LicenseInformationOrigin":2},{"PackageId":"Internal Division Agent","PackageVersion":"2.4.2","PackageProjectUrl":"http://armani.name","License":"Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!","LicenseInformationOrigin":0},{"PackageId":"Corporate Data Assistant","PackageVersion":"7.9.8","PackageProjectUrl":"http://arlene.biz","License":"Try to generate the SMTP feed, maybe it will generate the online feed!","LicenseInformationOrigin":1},{"PackageId":"Human Directives Specialist","PackageVersion":"4.3.4","PackageProjectUrl":"http://tabitha.name","License":"I\u0027ll reboot the virtual CSS program, that should program the CSS program!","LicenseInformationOrigin":1},{"PackageId":"Legacy Accountability Coordinator","PackageVersion":"5.5.0","PackageProjectUrl":"http://erling.name","License":"Try to back up the COM driver, maybe it will back up the bluetooth driver!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Product Marketing Strategist","PackageVersion":"0.1.7","PackageProjectUrl":"http://melany.name","License":"I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!","LicenseInformationOrigin":1},{"PackageId":"District Directives Analyst","PackageVersion":"9.3.0","PackageProjectUrl":"http://bridie.biz","License":"Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!","LicenseInformationOrigin":2},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Regional Tactics Technician","PackageVersion":"7.6.7","PackageProjectUrl":"http://alvena.net","License":"If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!","LicenseInformationOrigin":0},{"PackageId":"Corporate Intranet Analyst","PackageVersion":"0.9.0","PackageProjectUrl":"https://creola.info","License":"indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!","LicenseInformationOrigin":0},{"PackageId":"Product Infrastructure Orchestrator","PackageVersion":"5.0.6","PackageProjectUrl":"http://forrest.com","License":"If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!","LicenseInformationOrigin":2},{"PackageId":"Corporate Program Facilitator","PackageVersion":"2.7.4","PackageProjectUrl":"https://vida.net","License":"I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!","LicenseInformationOrigin":1},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"International Metrics Officer","PackageVersion":"3.7.1","PackageProjectUrl":"https://myrl.info","License":"hacking the array won\u0027t do anything, we need to back up the haptic IB array!","LicenseInformationOrigin":0},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Chief Markets Agent","PackageVersion":"8.8.4","PackageProjectUrl":"http://dayana.name","License":"I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!","LicenseInformationOrigin":2},{"PackageId":"Forward Data Administrator","PackageVersion":"9.0.6","PackageProjectUrl":"https://michelle.org","License":"Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!","LicenseInformationOrigin":1},{"PackageId":"Customer Applications Developer","PackageVersion":"5.6.1","PackageProjectUrl":"http://kiley.org","License":"We need to connect the bluetooth RAM application!","LicenseInformationOrigin":2},{"PackageId":"Senior Brand Analyst","PackageVersion":"2.5.0","PackageProjectUrl":"http://danial.name","License":"overriding the interface won\u0027t do anything, we need to override the virtual THX interface!","LicenseInformationOrigin":0},{"PackageId":"Legacy Interactions Analyst","PackageVersion":"3.0.8","PackageProjectUrl":"http://logan.net","License":"You can\u0027t parse the hard drive without generating the digital AGP hard drive!","LicenseInformationOrigin":2},{"PackageId":"Senior Operations Engineer","PackageVersion":"3.1.8","PackageProjectUrl":"http://montana.name","License":"If we program the array, we can get to the JBOD array through the primary JBOD array!","LicenseInformationOrigin":0},{"PackageId":"Future Factors Representative","PackageVersion":"9.2.0","PackageProjectUrl":"https://jazmin.org","License":"Use the solid state SDD application, then you can navigate the solid state application!","LicenseInformationOrigin":1},{"PackageId":"Customer Group Technician","PackageVersion":"9.8.2","PackageProjectUrl":"https://sandrine.name","License":"programming the system won\u0027t do anything, we need to synthesize the primary AGP system!","LicenseInformationOrigin":1},{"PackageId":"Regional Accountability Assistant","PackageVersion":"2.7.5","PackageProjectUrl":"http://barney.com","License":"You can\u0027t program the alarm without overriding the cross-platform RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Legacy Optimization Assistant","PackageVersion":"8.8.2","PackageProjectUrl":"https://scot.info","License":"The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!","LicenseInformationOrigin":1},{"PackageId":"Product Paradigm Director","PackageVersion":"6.3.8","PackageProjectUrl":"http://kiera.org","License":"Use the wireless THX array, then you can connect the wireless array!","LicenseInformationOrigin":0},{"PackageId":"Forward Web Assistant","PackageVersion":"3.5.5","PackageProjectUrl":"https://tremayne.org","License":"The COM array is down, calculate the open-source array so we can calculate the COM array!","LicenseInformationOrigin":0},{"PackageId":"Lead Factors Planner","PackageVersion":"1.0.4","PackageProjectUrl":"http://mikayla.com","License":"You can\u0027t compress the driver without calculating the back-end SQL driver!","LicenseInformationOrigin":0},{"PackageId":"Regional Data Strategist","PackageVersion":"3.5.3","PackageProjectUrl":"https://sedrick.biz","License":"I\u0027ll transmit the optical USB program, that should program the USB program!","LicenseInformationOrigin":1},{"PackageId":"National Accountability Administrator","PackageVersion":"5.9.9","PackageProjectUrl":"http://julio.info","License":"Use the neural IB matrix, then you can generate the neural matrix!","LicenseInformationOrigin":0},{"PackageId":"Lead Tactics Executive","PackageVersion":"6.2.9","PackageProjectUrl":"https://maxwell.name","License":"I\u0027ll transmit the online TCP driver, that should driver the TCP driver!","LicenseInformationOrigin":0},{"PackageId":"Legacy Research Producer","PackageVersion":"2.8.3","PackageProjectUrl":"https://sonia.org","License":"backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Division Consultant","PackageVersion":"4.8.7","PackageProjectUrl":"https://jack.net","License":"The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!","LicenseInformationOrigin":0},{"PackageId":"Direct Data Consultant","PackageVersion":"6.3.3","PackageProjectUrl":"https://heath.name","License":"Use the haptic XML driver, then you can index the haptic driver!","LicenseInformationOrigin":1},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"District Metrics Analyst","PackageVersion":"4.6.0","PackageProjectUrl":"http://nathaniel.name","License":"overriding the interface won\u0027t do anything, we need to connect the digital GB interface!","LicenseInformationOrigin":2},{"PackageId":"Product Interactions Executive","PackageVersion":"5.4.8","PackageProjectUrl":"https://maye.org","License":"We need to override the auxiliary AGP firewall!","LicenseInformationOrigin":1},{"PackageId":"Customer Assurance Consultant","PackageVersion":"5.6.2","PackageProjectUrl":"https://eryn.org","License":"Use the digital IB alarm, then you can program the digital alarm!","LicenseInformationOrigin":1},{"PackageId":"District Factors Assistant","PackageVersion":"9.8.2","PackageProjectUrl":"https://ernestine.net","License":"Try to compress the SMS bus, maybe it will compress the bluetooth bus!","LicenseInformationOrigin":2},{"PackageId":"National Tactics Administrator","PackageVersion":"9.2.8","PackageProjectUrl":"https://brett.biz","License":"The FTP card is down, index the digital card so we can index the FTP card!","LicenseInformationOrigin":1},{"PackageId":"Senior Accountability Specialist","PackageVersion":"0.8.7","PackageProjectUrl":"http://kristina.info","License":"We need to input the cross-platform RAM system!","LicenseInformationOrigin":0},{"PackageId":"Chief Directives Executive","PackageVersion":"9.4.9","PackageProjectUrl":"http://jedediah.net","License":"Try to back up the THX interface, maybe it will back up the auxiliary interface!","LicenseInformationOrigin":1},{"PackageId":"Product Operations Liaison","PackageVersion":"1.1.0","PackageProjectUrl":"http://tabitha.com","License":"You can\u0027t generate the array without quantifying the open-source PCI array!","LicenseInformationOrigin":0},{"PackageId":"Human Functionality Associate","PackageVersion":"9.4.1","PackageProjectUrl":"https://bonita.biz","License":"I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!","LicenseInformationOrigin":1},{"PackageId":"Senior Group Designer","PackageVersion":"3.0.6","PackageProjectUrl":"http://keyshawn.net","License":"We need to copy the cross-platform SAS panel!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Regional Branding Facilitator","PackageVersion":"0.3.9","PackageProjectUrl":"https://otilia.info","License":"We need to connect the optical SQL capacitor!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"National Response Planner","PackageVersion":"7.8.0","PackageProjectUrl":"https://hertha.org","License":"Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Research Representative","PackageVersion":"1.6.9","PackageProjectUrl":"https://carol.org","License":"You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!","LicenseInformationOrigin":1},{"PackageId":"Senior Implementation Associate","PackageVersion":"8.2.9","PackageProjectUrl":"http://roderick.org","License":"synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Central Security Representative","PackageVersion":"4.3.4","PackageProjectUrl":"https://velva.name","License":"The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!","LicenseInformationOrigin":0},{"PackageId":"Legacy Accountability Agent","PackageVersion":"5.8.2","PackageProjectUrl":"http://chelsea.com","License":"I\u0027ll compress the auxiliary XSS port, that should port the XSS port!","LicenseInformationOrigin":2},{"PackageId":"Lead Accountability Orchestrator","PackageVersion":"2.6.2","PackageProjectUrl":"https://tre.org","License":"You can\u0027t connect the panel without bypassing the bluetooth SSL panel!","LicenseInformationOrigin":0},{"PackageId":"Future Group Director","PackageVersion":"2.3.4","PackageProjectUrl":"https://luna.info","License":"I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Brand Officer","PackageVersion":"1.1.5","PackageProjectUrl":"https://shayne.name","License":"If we transmit the application, we can get to the SAS application through the wireless SAS application!","LicenseInformationOrigin":2},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Internal Quality Director","PackageVersion":"5.3.0","PackageProjectUrl":"http://hyman.com","License":"Use the redundant AI alarm, then you can transmit the redundant alarm!","LicenseInformationOrigin":1},{"PackageId":"Investor Division Planner","PackageVersion":"1.4.6","PackageProjectUrl":"https://evelyn.info","License":"I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!","LicenseInformationOrigin":1},{"PackageId":"Legacy Implementation Assistant","PackageVersion":"2.1.6","PackageProjectUrl":"https://liana.net","License":"Use the auxiliary RSS sensor, then you can program the auxiliary sensor!","LicenseInformationOrigin":2},{"PackageId":"District Interactions Developer","PackageVersion":"9.9.4","PackageProjectUrl":"http://adrien.biz","License":"I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Internal Accounts Specialist","PackageVersion":"4.9.2","PackageProjectUrl":"https://wilfredo.biz","License":"The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!","LicenseInformationOrigin":1},{"PackageId":"Customer Functionality Manager","PackageVersion":"5.9.0","PackageProjectUrl":"https://mariane.info","License":"The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!","LicenseInformationOrigin":1},{"PackageId":"Customer Accountability Strategist","PackageVersion":"0.5.2","PackageProjectUrl":"https://stuart.com","License":"You can\u0027t parse the firewall without navigating the solid state ADP firewall!","LicenseInformationOrigin":0},{"PackageId":"Internal Directives Designer","PackageVersion":"0.4.8","PackageProjectUrl":"http://mable.net","License":"Use the virtual AI capacitor, then you can navigate the virtual capacitor!","LicenseInformationOrigin":0},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"Direct Group Consultant","PackageVersion":"8.8.0","PackageProjectUrl":"https://alana.org","License":"I\u0027ll index the neural SDD bus, that should bus the SDD bus!","LicenseInformationOrigin":2},{"PackageId":"Corporate Paradigm Administrator","PackageVersion":"5.5.2","PackageProjectUrl":"http://trace.net","License":"Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!","LicenseInformationOrigin":1},{"PackageId":"Principal Accountability Facilitator","PackageVersion":"2.1.4","PackageProjectUrl":"https://dillan.net","License":"Use the back-end XML protocol, then you can reboot the back-end protocol!","LicenseInformationOrigin":0},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Product Intranet Assistant","PackageVersion":"2.8.1","PackageProjectUrl":"https://chance.name","License":"You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Internal Division Assistant","PackageVersion":"0.9.4","PackageProjectUrl":"http://emerson.info","License":"The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"National Usability Manager","PackageVersion":"0.3.8","PackageProjectUrl":"http://myriam.name","License":"quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!","LicenseInformationOrigin":1},{"PackageId":"Product Security Developer","PackageVersion":"4.4.5","PackageProjectUrl":"https://maida.org","License":"parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!","LicenseInformationOrigin":2},{"PackageId":"Principal Solutions Supervisor","PackageVersion":"6.1.2","PackageProjectUrl":"https://ari.biz","License":"programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!","LicenseInformationOrigin":2},{"PackageId":"District Group Associate","PackageVersion":"4.0.1","PackageProjectUrl":"https://noemi.info","License":"We need to transmit the redundant TCP panel!","LicenseInformationOrigin":0},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Chief Intranet Strategist","PackageVersion":"9.7.0","PackageProjectUrl":"https://john.name","License":"We need to copy the redundant JSON transmitter!","LicenseInformationOrigin":0},{"PackageId":"Legacy Branding Orchestrator","PackageVersion":"0.2.6","PackageProjectUrl":"https://keeley.net","License":"We need to bypass the back-end FTP alarm!","LicenseInformationOrigin":2},{"PackageId":"Principal Usability Representative","PackageVersion":"9.1.3","PackageProjectUrl":"https://nelson.com","License":"We need to transmit the bluetooth FTP feed!","LicenseInformationOrigin":0},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"Product Integration Officer","PackageVersion":"3.3.6","PackageProjectUrl":"https://howard.org","License":"Use the primary PNG matrix, then you can copy the primary matrix!","LicenseInformationOrigin":1},{"PackageId":"Chief Web Specialist","PackageVersion":"7.4.0","PackageProjectUrl":"http://keely.net","License":"navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!","LicenseInformationOrigin":1},{"PackageId":"Human Configuration Assistant","PackageVersion":"0.1.1","PackageProjectUrl":"https://aurelia.info","License":"We need to hack the mobile SMS circuit!","LicenseInformationOrigin":1},{"PackageId":"Customer Group Manager","PackageVersion":"8.0.4","PackageProjectUrl":"https://luisa.biz","License":"The RAM panel is down, transmit the online panel so we can transmit the RAM panel!","LicenseInformationOrigin":2},{"PackageId":"Global Configuration Planner","PackageVersion":"2.6.3","PackageProjectUrl":"http://willis.name","License":"connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!","LicenseInformationOrigin":2},{"PackageId":"Global Usability Manager","PackageVersion":"6.7.0","PackageProjectUrl":"https://alexandra.info","License":"We need to parse the mobile SCSI protocol!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt new file mode 100644 index 00000000..b2f813cc --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Dynamic Division Consultant","PackageVersion":"4.8.7","PackageProjectUrl":"https://jack.net","License":"The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!","LicenseInformationOrigin":0},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Product Paradigm Director","PackageVersion":"6.3.8","PackageProjectUrl":"http://kiera.org","License":"Use the wireless THX array, then you can connect the wireless array!","LicenseInformationOrigin":0},{"PackageId":"Product Infrastructure Orchestrator","PackageVersion":"5.0.6","PackageProjectUrl":"http://forrest.com","License":"If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!","LicenseInformationOrigin":2},{"PackageId":"Corporate Data Assistant","PackageVersion":"7.9.8","PackageProjectUrl":"http://arlene.biz","License":"Try to generate the SMTP feed, maybe it will generate the online feed!","LicenseInformationOrigin":1},{"PackageId":"Customer Applications Developer","PackageVersion":"5.6.1","PackageProjectUrl":"http://kiley.org","License":"We need to connect the bluetooth RAM application!","LicenseInformationOrigin":2},{"PackageId":"District Group Associate","PackageVersion":"4.0.1","PackageProjectUrl":"https://noemi.info","License":"We need to transmit the redundant TCP panel!","LicenseInformationOrigin":0},{"PackageId":"Principal Accountability Facilitator","PackageVersion":"2.1.4","PackageProjectUrl":"https://dillan.net","License":"Use the back-end XML protocol, then you can reboot the back-end protocol!","LicenseInformationOrigin":0},{"PackageId":"Direct Research Assistant","PackageVersion":"5.9.7","PackageProjectUrl":"http://danial.org","License":"Try to connect the TCP circuit, maybe it will connect the back-end circuit!","LicenseInformationOrigin":2},{"PackageId":"Forward Web Assistant","PackageVersion":"3.5.5","PackageProjectUrl":"https://tremayne.org","License":"The COM array is down, calculate the open-source array so we can calculate the COM array!","LicenseInformationOrigin":0},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Product Operations Liaison","PackageVersion":"1.1.0","PackageProjectUrl":"http://tabitha.com","License":"You can\u0027t generate the array without quantifying the open-source PCI array!","LicenseInformationOrigin":0},{"PackageId":"Human Functionality Associate","PackageVersion":"9.4.1","PackageProjectUrl":"https://bonita.biz","License":"I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!","LicenseInformationOrigin":1},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Central Data Consultant","PackageVersion":"6.5.0","PackageProjectUrl":"https://delilah.org","License":"generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!","LicenseInformationOrigin":1},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Customer Group Technician","PackageVersion":"9.8.2","PackageProjectUrl":"https://sandrine.name","License":"programming the system won\u0027t do anything, we need to synthesize the primary AGP system!","LicenseInformationOrigin":1},{"PackageId":"Lead Accountability Orchestrator","PackageVersion":"2.6.2","PackageProjectUrl":"https://tre.org","License":"You can\u0027t connect the panel without bypassing the bluetooth SSL panel!","LicenseInformationOrigin":0},{"PackageId":"Human Directives Specialist","PackageVersion":"4.3.4","PackageProjectUrl":"http://tabitha.name","License":"I\u0027ll reboot the virtual CSS program, that should program the CSS program!","LicenseInformationOrigin":1},{"PackageId":"Principal Usability Representative","PackageVersion":"9.1.3","PackageProjectUrl":"https://nelson.com","License":"We need to transmit the bluetooth FTP feed!","LicenseInformationOrigin":0},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Lead Factors Planner","PackageVersion":"1.0.4","PackageProjectUrl":"http://mikayla.com","License":"You can\u0027t compress the driver without calculating the back-end SQL driver!","LicenseInformationOrigin":0},{"PackageId":"Product Intranet Assistant","PackageVersion":"2.8.1","PackageProjectUrl":"https://chance.name","License":"You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Chief Intranet Strategist","PackageVersion":"9.7.0","PackageProjectUrl":"https://john.name","License":"We need to copy the redundant JSON transmitter!","LicenseInformationOrigin":0},{"PackageId":"Senior Implementation Associate","PackageVersion":"8.2.9","PackageProjectUrl":"http://roderick.org","License":"synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Corporate Intranet Analyst","PackageVersion":"0.9.0","PackageProjectUrl":"https://creola.info","License":"indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!","LicenseInformationOrigin":0},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Senior Operations Engineer","PackageVersion":"3.1.8","PackageProjectUrl":"http://montana.name","License":"If we program the array, we can get to the JBOD array through the primary JBOD array!","LicenseInformationOrigin":0},{"PackageId":"Human Configuration Assistant","PackageVersion":"0.1.1","PackageProjectUrl":"https://aurelia.info","License":"We need to hack the mobile SMS circuit!","LicenseInformationOrigin":1},{"PackageId":"Chief Directives Executive","PackageVersion":"9.4.9","PackageProjectUrl":"http://jedediah.net","License":"Try to back up the THX interface, maybe it will back up the auxiliary interface!","LicenseInformationOrigin":1},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"Legacy Branding Orchestrator","PackageVersion":"0.2.6","PackageProjectUrl":"https://keeley.net","License":"We need to bypass the back-end FTP alarm!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2},{"PackageId":"District Factors Assistant","PackageVersion":"9.8.2","PackageProjectUrl":"https://ernestine.net","License":"Try to compress the SMS bus, maybe it will compress the bluetooth bus!","LicenseInformationOrigin":2},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"Chief Web Specialist","PackageVersion":"7.4.0","PackageProjectUrl":"http://keely.net","License":"navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!","LicenseInformationOrigin":1},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Internal Division Assistant","PackageVersion":"0.9.4","PackageProjectUrl":"http://emerson.info","License":"The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!","LicenseInformationOrigin":0},{"PackageId":"Senior Brand Analyst","PackageVersion":"2.5.0","PackageProjectUrl":"http://danial.name","License":"overriding the interface won\u0027t do anything, we need to override the virtual THX interface!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"Global Configuration Planner","PackageVersion":"2.6.3","PackageProjectUrl":"http://willis.name","License":"connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!","LicenseInformationOrigin":2},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Regional Branding Facilitator","PackageVersion":"0.3.9","PackageProjectUrl":"https://otilia.info","License":"We need to connect the optical SQL capacitor!","LicenseInformationOrigin":1},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"Product Marketing Strategist","PackageVersion":"0.1.7","PackageProjectUrl":"http://melany.name","License":"I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!","LicenseInformationOrigin":1},{"PackageId":"Future Factors Representative","PackageVersion":"9.2.0","PackageProjectUrl":"https://jazmin.org","License":"Use the solid state SDD application, then you can navigate the solid state application!","LicenseInformationOrigin":1},{"PackageId":"Chief Markets Agent","PackageVersion":"8.8.4","PackageProjectUrl":"http://dayana.name","License":"I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Legacy Optimization Assistant","PackageVersion":"8.8.2","PackageProjectUrl":"https://scot.info","License":"The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!","LicenseInformationOrigin":1},{"PackageId":"District Directives Analyst","PackageVersion":"9.3.0","PackageProjectUrl":"http://bridie.biz","License":"Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!","LicenseInformationOrigin":2},{"PackageId":"National Response Planner","PackageVersion":"7.8.0","PackageProjectUrl":"https://hertha.org","License":"Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!","LicenseInformationOrigin":1},{"PackageId":"Customer Accountability Strategist","PackageVersion":"0.5.2","PackageProjectUrl":"https://stuart.com","License":"You can\u0027t parse the firewall without navigating the solid state ADP firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Data Strategist","PackageVersion":"3.5.3","PackageProjectUrl":"https://sedrick.biz","License":"I\u0027ll transmit the optical USB program, that should program the USB program!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Administrator","PackageVersion":"9.2.8","PackageProjectUrl":"https://brett.biz","License":"The FTP card is down, index the digital card so we can index the FTP card!","LicenseInformationOrigin":1},{"PackageId":"Senior Accountability Specialist","PackageVersion":"0.8.7","PackageProjectUrl":"http://kristina.info","License":"We need to input the cross-platform RAM system!","LicenseInformationOrigin":0},{"PackageId":"Product Integration Officer","PackageVersion":"3.3.6","PackageProjectUrl":"https://howard.org","License":"Use the primary PNG matrix, then you can copy the primary matrix!","LicenseInformationOrigin":1},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Legacy Accountability Coordinator","PackageVersion":"5.5.0","PackageProjectUrl":"http://erling.name","License":"Try to back up the COM driver, maybe it will back up the bluetooth driver!","LicenseInformationOrigin":0},{"PackageId":"Product Security Developer","PackageVersion":"4.4.5","PackageProjectUrl":"https://maida.org","License":"parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!","LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"International Metrics Officer","PackageVersion":"3.7.1","PackageProjectUrl":"https://myrl.info","License":"hacking the array won\u0027t do anything, we need to back up the haptic IB array!","LicenseInformationOrigin":0},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Forward Infrastructure Specialist","PackageVersion":"6.1.6","PackageProjectUrl":"http://melisa.com","License":"quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!","LicenseInformationOrigin":2},{"PackageId":"National Accountability Administrator","PackageVersion":"5.9.9","PackageProjectUrl":"http://julio.info","License":"Use the neural IB matrix, then you can generate the neural matrix!","LicenseInformationOrigin":0},{"PackageId":"Senior Group Designer","PackageVersion":"3.0.6","PackageProjectUrl":"http://keyshawn.net","License":"We need to copy the cross-platform SAS panel!","LicenseInformationOrigin":1},{"PackageId":"Product Interactions Executive","PackageVersion":"5.4.8","PackageProjectUrl":"https://maye.org","License":"We need to override the auxiliary AGP firewall!","LicenseInformationOrigin":1},{"PackageId":"Internal Accounts Specialist","PackageVersion":"4.9.2","PackageProjectUrl":"https://wilfredo.biz","License":"The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Research Representative","PackageVersion":"1.6.9","PackageProjectUrl":"https://carol.org","License":"You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!","LicenseInformationOrigin":1},{"PackageId":"Forward Data Administrator","PackageVersion":"9.0.6","PackageProjectUrl":"https://michelle.org","License":"Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!","LicenseInformationOrigin":1},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Legacy Implementation Assistant","PackageVersion":"2.1.6","PackageProjectUrl":"https://liana.net","License":"Use the auxiliary RSS sensor, then you can program the auxiliary sensor!","LicenseInformationOrigin":2},{"PackageId":"District Metrics Analyst","PackageVersion":"4.6.0","PackageProjectUrl":"http://nathaniel.name","License":"overriding the interface won\u0027t do anything, we need to connect the digital GB interface!","LicenseInformationOrigin":2},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Investor Division Planner","PackageVersion":"1.4.6","PackageProjectUrl":"https://evelyn.info","License":"I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!","LicenseInformationOrigin":1},{"PackageId":"Future Group Director","PackageVersion":"2.3.4","PackageProjectUrl":"https://luna.info","License":"I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Internal Quality Director","PackageVersion":"5.3.0","PackageProjectUrl":"http://hyman.com","License":"Use the redundant AI alarm, then you can transmit the redundant alarm!","LicenseInformationOrigin":1},{"PackageId":"Human Optimization Director","PackageVersion":"0.1.8","PackageProjectUrl":"https://crystal.info","License":"We need to transmit the back-end PCI panel!","LicenseInformationOrigin":2},{"PackageId":"Principal Solutions Supervisor","PackageVersion":"6.1.2","PackageProjectUrl":"https://ari.biz","License":"programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!","LicenseInformationOrigin":2},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Direct Data Consultant","PackageVersion":"6.3.3","PackageProjectUrl":"https://heath.name","License":"Use the haptic XML driver, then you can index the haptic driver!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Brand Officer","PackageVersion":"1.1.5","PackageProjectUrl":"https://shayne.name","License":"If we transmit the application, we can get to the SAS application through the wireless SAS application!","LicenseInformationOrigin":2},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"Corporate Paradigm Administrator","PackageVersion":"5.5.2","PackageProjectUrl":"http://trace.net","License":"Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!","LicenseInformationOrigin":1},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Central Security Representative","PackageVersion":"4.3.4","PackageProjectUrl":"https://velva.name","License":"The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!","LicenseInformationOrigin":0},{"PackageId":"Regional Accountability Assistant","PackageVersion":"2.7.5","PackageProjectUrl":"http://barney.com","License":"You can\u0027t program the alarm without overriding the cross-platform RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Lead Tactics Executive","PackageVersion":"6.2.9","PackageProjectUrl":"https://maxwell.name","License":"I\u0027ll transmit the online TCP driver, that should driver the TCP driver!","LicenseInformationOrigin":0},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Legacy Interactions Analyst","PackageVersion":"3.0.8","PackageProjectUrl":"http://logan.net","License":"You can\u0027t parse the hard drive without generating the digital AGP hard drive!","LicenseInformationOrigin":2},{"PackageId":"Legacy Accountability Agent","PackageVersion":"5.8.2","PackageProjectUrl":"http://chelsea.com","License":"I\u0027ll compress the auxiliary XSS port, that should port the XSS port!","LicenseInformationOrigin":2},{"PackageId":"Regional Tactics Technician","PackageVersion":"7.6.7","PackageProjectUrl":"http://alvena.net","License":"If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!","LicenseInformationOrigin":0},{"PackageId":"Direct Group Consultant","PackageVersion":"8.8.0","PackageProjectUrl":"https://alana.org","License":"I\u0027ll index the neural SDD bus, that should bus the SDD bus!","LicenseInformationOrigin":2},{"PackageId":"Global Usability Manager","PackageVersion":"6.7.0","PackageProjectUrl":"https://alexandra.info","License":"We need to parse the mobile SCSI protocol!","LicenseInformationOrigin":1},{"PackageId":"District Interactions Developer","PackageVersion":"9.9.4","PackageProjectUrl":"http://adrien.biz","License":"I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Customer Functionality Manager","PackageVersion":"5.9.0","PackageProjectUrl":"https://mariane.info","License":"The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!","LicenseInformationOrigin":1},{"PackageId":"Internal Directives Designer","PackageVersion":"0.4.8","PackageProjectUrl":"http://mable.net","License":"Use the virtual AI capacitor, then you can navigate the virtual capacitor!","LicenseInformationOrigin":0},{"PackageId":"Customer Group Manager","PackageVersion":"8.0.4","PackageProjectUrl":"https://luisa.biz","License":"The RAM panel is down, transmit the online panel so we can transmit the RAM panel!","LicenseInformationOrigin":2},{"PackageId":"National Usability Manager","PackageVersion":"0.3.8","PackageProjectUrl":"http://myriam.name","License":"quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Central Creative Analyst","PackageVersion":"3.6.4","PackageProjectUrl":"http://abigayle.net","License":"programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!","LicenseInformationOrigin":0},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Internal Division Agent","PackageVersion":"2.4.2","PackageProjectUrl":"http://armani.name","License":"Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!","LicenseInformationOrigin":0},{"PackageId":"Corporate Program Facilitator","PackageVersion":"2.7.4","PackageProjectUrl":"https://vida.net","License":"I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!","LicenseInformationOrigin":1},{"PackageId":"Customer Assurance Consultant","PackageVersion":"5.6.2","PackageProjectUrl":"https://eryn.org","License":"Use the digital IB alarm, then you can program the digital alarm!","LicenseInformationOrigin":1},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Legacy Research Producer","PackageVersion":"2.8.3","PackageProjectUrl":"https://sonia.org","License":"backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt new file mode 100644 index 00000000..e180f78d --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Central Data Consultant","PackageVersion":"6.5.0","PackageProjectUrl":"https://delilah.org","License":"generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Product Interactions Executive","PackageVersion":"5.4.8","PackageProjectUrl":"https://maye.org","License":"We need to override the auxiliary AGP firewall!","LicenseInformationOrigin":1},{"PackageId":"District Interactions Developer","PackageVersion":"9.9.4","PackageProjectUrl":"http://adrien.biz","License":"I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Product Infrastructure Orchestrator","PackageVersion":"5.0.6","PackageProjectUrl":"http://forrest.com","License":"If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!","LicenseInformationOrigin":2},{"PackageId":"Direct Research Assistant","PackageVersion":"5.9.7","PackageProjectUrl":"http://danial.org","License":"Try to connect the TCP circuit, maybe it will connect the back-end circuit!","LicenseInformationOrigin":2},{"PackageId":"Internal Division Agent","PackageVersion":"2.4.2","PackageProjectUrl":"http://armani.name","License":"Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!","LicenseInformationOrigin":0},{"PackageId":"Lead Factors Planner","PackageVersion":"1.0.4","PackageProjectUrl":"http://mikayla.com","License":"You can\u0027t compress the driver without calculating the back-end SQL driver!","LicenseInformationOrigin":0},{"PackageId":"Human Directives Specialist","PackageVersion":"4.3.4","PackageProjectUrl":"http://tabitha.name","License":"I\u0027ll reboot the virtual CSS program, that should program the CSS program!","LicenseInformationOrigin":1},{"PackageId":"Legacy Accountability Coordinator","PackageVersion":"5.5.0","PackageProjectUrl":"http://erling.name","License":"Try to back up the COM driver, maybe it will back up the bluetooth driver!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Product Marketing Strategist","PackageVersion":"0.1.7","PackageProjectUrl":"http://melany.name","License":"I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!","LicenseInformationOrigin":1},{"PackageId":"Forward Infrastructure Specialist","PackageVersion":"6.1.6","PackageProjectUrl":"http://melisa.com","License":"quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!","LicenseInformationOrigin":2},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Regional Tactics Technician","PackageVersion":"7.6.7","PackageProjectUrl":"http://alvena.net","License":"If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Legacy Branding Orchestrator","PackageVersion":"0.2.6","PackageProjectUrl":"https://keeley.net","License":"We need to bypass the back-end FTP alarm!","LicenseInformationOrigin":2},{"PackageId":"Internal Accounts Specialist","PackageVersion":"4.9.2","PackageProjectUrl":"https://wilfredo.biz","License":"The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Chief Web Specialist","PackageVersion":"7.4.0","PackageProjectUrl":"http://keely.net","License":"navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!","LicenseInformationOrigin":1},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Global Usability Manager","PackageVersion":"6.7.0","PackageProjectUrl":"https://alexandra.info","License":"We need to parse the mobile SCSI protocol!","LicenseInformationOrigin":1},{"PackageId":"International Metrics Officer","PackageVersion":"3.7.1","PackageProjectUrl":"https://myrl.info","License":"hacking the array won\u0027t do anything, we need to back up the haptic IB array!","LicenseInformationOrigin":0},{"PackageId":"Customer Applications Developer","PackageVersion":"5.6.1","PackageProjectUrl":"http://kiley.org","License":"We need to connect the bluetooth RAM application!","LicenseInformationOrigin":2},{"PackageId":"Senior Brand Analyst","PackageVersion":"2.5.0","PackageProjectUrl":"http://danial.name","License":"overriding the interface won\u0027t do anything, we need to override the virtual THX interface!","LicenseInformationOrigin":0},{"PackageId":"Chief Directives Executive","PackageVersion":"9.4.9","PackageProjectUrl":"http://jedediah.net","License":"Try to back up the THX interface, maybe it will back up the auxiliary interface!","LicenseInformationOrigin":1},{"PackageId":"Senior Operations Engineer","PackageVersion":"3.1.8","PackageProjectUrl":"http://montana.name","License":"If we program the array, we can get to the JBOD array through the primary JBOD array!","LicenseInformationOrigin":0},{"PackageId":"District Group Associate","PackageVersion":"4.0.1","PackageProjectUrl":"https://noemi.info","License":"We need to transmit the redundant TCP panel!","LicenseInformationOrigin":0},{"PackageId":"Regional Accountability Assistant","PackageVersion":"2.7.5","PackageProjectUrl":"http://barney.com","License":"You can\u0027t program the alarm without overriding the cross-platform RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Forward Data Administrator","PackageVersion":"9.0.6","PackageProjectUrl":"https://michelle.org","License":"Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!","LicenseInformationOrigin":1},{"PackageId":"Legacy Optimization Assistant","PackageVersion":"8.8.2","PackageProjectUrl":"https://scot.info","License":"The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!","LicenseInformationOrigin":1},{"PackageId":"Principal Solutions Supervisor","PackageVersion":"6.1.2","PackageProjectUrl":"https://ari.biz","License":"programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!","LicenseInformationOrigin":2},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"Customer Group Technician","PackageVersion":"9.8.2","PackageProjectUrl":"https://sandrine.name","License":"programming the system won\u0027t do anything, we need to synthesize the primary AGP system!","LicenseInformationOrigin":1},{"PackageId":"Chief Intranet Strategist","PackageVersion":"9.7.0","PackageProjectUrl":"https://john.name","License":"We need to copy the redundant JSON transmitter!","LicenseInformationOrigin":0},{"PackageId":"Investor Division Planner","PackageVersion":"1.4.6","PackageProjectUrl":"https://evelyn.info","License":"I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!","LicenseInformationOrigin":1},{"PackageId":"Senior Accountability Specialist","PackageVersion":"0.8.7","PackageProjectUrl":"http://kristina.info","License":"We need to input the cross-platform RAM system!","LicenseInformationOrigin":0},{"PackageId":"Legacy Research Producer","PackageVersion":"2.8.3","PackageProjectUrl":"https://sonia.org","License":"backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Division Consultant","PackageVersion":"4.8.7","PackageProjectUrl":"https://jack.net","License":"The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!","LicenseInformationOrigin":0},{"PackageId":"Customer Group Manager","PackageVersion":"8.0.4","PackageProjectUrl":"https://luisa.biz","License":"The RAM panel is down, transmit the online panel so we can transmit the RAM panel!","LicenseInformationOrigin":2},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"District Factors Assistant","PackageVersion":"9.8.2","PackageProjectUrl":"https://ernestine.net","License":"Try to compress the SMS bus, maybe it will compress the bluetooth bus!","LicenseInformationOrigin":2},{"PackageId":"Corporate Paradigm Administrator","PackageVersion":"5.5.2","PackageProjectUrl":"http://trace.net","License":"Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!","LicenseInformationOrigin":1},{"PackageId":"Global Configuration Planner","PackageVersion":"2.6.3","PackageProjectUrl":"http://willis.name","License":"connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Accountability Strategist","PackageVersion":"0.5.2","PackageProjectUrl":"https://stuart.com","License":"You can\u0027t parse the firewall without navigating the solid state ADP firewall!","LicenseInformationOrigin":0},{"PackageId":"National Usability Manager","PackageVersion":"0.3.8","PackageProjectUrl":"http://myriam.name","License":"quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!","LicenseInformationOrigin":1},{"PackageId":"Legacy Interactions Analyst","PackageVersion":"3.0.8","PackageProjectUrl":"http://logan.net","License":"You can\u0027t parse the hard drive without generating the digital AGP hard drive!","LicenseInformationOrigin":2},{"PackageId":"Future Factors Representative","PackageVersion":"9.2.0","PackageProjectUrl":"https://jazmin.org","License":"Use the solid state SDD application, then you can navigate the solid state application!","LicenseInformationOrigin":1},{"PackageId":"Product Operations Liaison","PackageVersion":"1.1.0","PackageProjectUrl":"http://tabitha.com","License":"You can\u0027t generate the array without quantifying the open-source PCI array!","LicenseInformationOrigin":0},{"PackageId":"Product Security Developer","PackageVersion":"4.4.5","PackageProjectUrl":"https://maida.org","License":"parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!","LicenseInformationOrigin":2},{"PackageId":"Product Paradigm Director","PackageVersion":"6.3.8","PackageProjectUrl":"http://kiera.org","License":"Use the wireless THX array, then you can connect the wireless array!","LicenseInformationOrigin":0},{"PackageId":"Internal Quality Director","PackageVersion":"5.3.0","PackageProjectUrl":"http://hyman.com","License":"Use the redundant AI alarm, then you can transmit the redundant alarm!","LicenseInformationOrigin":1},{"PackageId":"District Directives Analyst","PackageVersion":"9.3.0","PackageProjectUrl":"http://bridie.biz","License":"Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Corporate Program Facilitator","PackageVersion":"2.7.4","PackageProjectUrl":"https://vida.net","License":"I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!","LicenseInformationOrigin":1},{"PackageId":"Regional Branding Facilitator","PackageVersion":"0.3.9","PackageProjectUrl":"https://otilia.info","License":"We need to connect the optical SQL capacitor!","LicenseInformationOrigin":1},{"PackageId":"Direct Group Consultant","PackageVersion":"8.8.0","PackageProjectUrl":"https://alana.org","License":"I\u0027ll index the neural SDD bus, that should bus the SDD bus!","LicenseInformationOrigin":2},{"PackageId":"Corporate Intranet Analyst","PackageVersion":"0.9.0","PackageProjectUrl":"https://creola.info","License":"indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!","LicenseInformationOrigin":0},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Central Security Representative","PackageVersion":"4.3.4","PackageProjectUrl":"https://velva.name","License":"The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Customer Assurance Consultant","PackageVersion":"5.6.2","PackageProjectUrl":"https://eryn.org","License":"Use the digital IB alarm, then you can program the digital alarm!","LicenseInformationOrigin":1},{"PackageId":"Central Creative Analyst","PackageVersion":"3.6.4","PackageProjectUrl":"http://abigayle.net","License":"programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!","LicenseInformationOrigin":0},{"PackageId":"Lead Tactics Executive","PackageVersion":"6.2.9","PackageProjectUrl":"https://maxwell.name","License":"I\u0027ll transmit the online TCP driver, that should driver the TCP driver!","LicenseInformationOrigin":0},{"PackageId":"Senior Implementation Associate","PackageVersion":"8.2.9","PackageProjectUrl":"http://roderick.org","License":"synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Legacy Implementation Assistant","PackageVersion":"2.1.6","PackageProjectUrl":"https://liana.net","License":"Use the auxiliary RSS sensor, then you can program the auxiliary sensor!","LicenseInformationOrigin":2},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Human Functionality Associate","PackageVersion":"9.4.1","PackageProjectUrl":"https://bonita.biz","License":"I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!","LicenseInformationOrigin":1},{"PackageId":"Customer Functionality Manager","PackageVersion":"5.9.0","PackageProjectUrl":"https://mariane.info","License":"The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!","LicenseInformationOrigin":1},{"PackageId":"Forward Web Assistant","PackageVersion":"3.5.5","PackageProjectUrl":"https://tremayne.org","License":"The COM array is down, calculate the open-source array so we can calculate the COM array!","LicenseInformationOrigin":0},{"PackageId":"Internal Directives Designer","PackageVersion":"0.4.8","PackageProjectUrl":"http://mable.net","License":"Use the virtual AI capacitor, then you can navigate the virtual capacitor!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Administrator","PackageVersion":"9.2.8","PackageProjectUrl":"https://brett.biz","License":"The FTP card is down, index the digital card so we can index the FTP card!","LicenseInformationOrigin":1},{"PackageId":"Direct Data Consultant","PackageVersion":"6.3.3","PackageProjectUrl":"https://heath.name","License":"Use the haptic XML driver, then you can index the haptic driver!","LicenseInformationOrigin":1},{"PackageId":"Chief Markets Agent","PackageVersion":"8.8.4","PackageProjectUrl":"http://dayana.name","License":"I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!","LicenseInformationOrigin":2},{"PackageId":"Product Intranet Assistant","PackageVersion":"2.8.1","PackageProjectUrl":"https://chance.name","License":"You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Lead Accountability Orchestrator","PackageVersion":"2.6.2","PackageProjectUrl":"https://tre.org","License":"You can\u0027t connect the panel without bypassing the bluetooth SSL panel!","LicenseInformationOrigin":0},{"PackageId":"District Metrics Analyst","PackageVersion":"4.6.0","PackageProjectUrl":"http://nathaniel.name","License":"overriding the interface won\u0027t do anything, we need to connect the digital GB interface!","LicenseInformationOrigin":2},{"PackageId":"Legacy Accountability Agent","PackageVersion":"5.8.2","PackageProjectUrl":"http://chelsea.com","License":"I\u0027ll compress the auxiliary XSS port, that should port the XSS port!","LicenseInformationOrigin":2},{"PackageId":"Product Integration Officer","PackageVersion":"3.3.6","PackageProjectUrl":"https://howard.org","License":"Use the primary PNG matrix, then you can copy the primary matrix!","LicenseInformationOrigin":1},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Senior Group Designer","PackageVersion":"3.0.6","PackageProjectUrl":"http://keyshawn.net","License":"We need to copy the cross-platform SAS panel!","LicenseInformationOrigin":1},{"PackageId":"Corporate Data Assistant","PackageVersion":"7.9.8","PackageProjectUrl":"http://arlene.biz","License":"Try to generate the SMTP feed, maybe it will generate the online feed!","LicenseInformationOrigin":1},{"PackageId":"Human Configuration Assistant","PackageVersion":"0.1.1","PackageProjectUrl":"https://aurelia.info","License":"We need to hack the mobile SMS circuit!","LicenseInformationOrigin":1},{"PackageId":"Regional Data Strategist","PackageVersion":"3.5.3","PackageProjectUrl":"https://sedrick.biz","License":"I\u0027ll transmit the optical USB program, that should program the USB program!","LicenseInformationOrigin":1},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Research Representative","PackageVersion":"1.6.9","PackageProjectUrl":"https://carol.org","License":"You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!","LicenseInformationOrigin":1},{"PackageId":"Principal Usability Representative","PackageVersion":"9.1.3","PackageProjectUrl":"https://nelson.com","License":"We need to transmit the bluetooth FTP feed!","LicenseInformationOrigin":0},{"PackageId":"Internal Division Assistant","PackageVersion":"0.9.4","PackageProjectUrl":"http://emerson.info","License":"The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!","LicenseInformationOrigin":0},{"PackageId":"Principal Accountability Facilitator","PackageVersion":"2.1.4","PackageProjectUrl":"https://dillan.net","License":"Use the back-end XML protocol, then you can reboot the back-end protocol!","LicenseInformationOrigin":0},{"PackageId":"Human Optimization Director","PackageVersion":"0.1.8","PackageProjectUrl":"https://crystal.info","License":"We need to transmit the back-end PCI panel!","LicenseInformationOrigin":2},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"National Response Planner","PackageVersion":"7.8.0","PackageProjectUrl":"https://hertha.org","License":"Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!","LicenseInformationOrigin":1},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Future Group Director","PackageVersion":"2.3.4","PackageProjectUrl":"https://luna.info","License":"I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!","LicenseInformationOrigin":0},{"PackageId":"National Accountability Administrator","PackageVersion":"5.9.9","PackageProjectUrl":"http://julio.info","License":"Use the neural IB matrix, then you can generate the neural matrix!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Brand Officer","PackageVersion":"1.1.5","PackageProjectUrl":"https://shayne.name","License":"If we transmit the application, we can get to the SAS application through the wireless SAS application!","LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt new file mode 100644 index 00000000..44ed94a2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Central Data Consultant","PackageVersion":"6.5.0","PackageProjectUrl":"https://delilah.org","License":"generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Product Interactions Executive","PackageVersion":"5.4.8","PackageProjectUrl":"https://maye.org","License":"We need to override the auxiliary AGP firewall!","LicenseInformationOrigin":1},{"PackageId":"District Interactions Developer","PackageVersion":"9.9.4","PackageProjectUrl":"http://adrien.biz","License":"I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Legacy Branding Orchestrator","PackageVersion":"0.2.6","PackageProjectUrl":"https://keeley.net","License":"We need to bypass the back-end FTP alarm!","LicenseInformationOrigin":2},{"PackageId":"Direct Research Assistant","PackageVersion":"5.9.7","PackageProjectUrl":"http://danial.org","License":"Try to connect the TCP circuit, maybe it will connect the back-end circuit!","LicenseInformationOrigin":2},{"PackageId":"Direct Data Consultant","PackageVersion":"6.3.3","PackageProjectUrl":"https://heath.name","License":"Use the haptic XML driver, then you can index the haptic driver!","LicenseInformationOrigin":1},{"PackageId":"Customer Group Technician","PackageVersion":"9.8.2","PackageProjectUrl":"https://sandrine.name","License":"programming the system won\u0027t do anything, we need to synthesize the primary AGP system!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Administrator","PackageVersion":"9.2.8","PackageProjectUrl":"https://brett.biz","License":"The FTP card is down, index the digital card so we can index the FTP card!","LicenseInformationOrigin":1},{"PackageId":"Legacy Accountability Coordinator","PackageVersion":"5.5.0","PackageProjectUrl":"http://erling.name","License":"Try to back up the COM driver, maybe it will back up the bluetooth driver!","LicenseInformationOrigin":0},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Product Infrastructure Orchestrator","PackageVersion":"5.0.6","PackageProjectUrl":"http://forrest.com","License":"If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!","LicenseInformationOrigin":2},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Regional Tactics Technician","PackageVersion":"7.6.7","PackageProjectUrl":"http://alvena.net","License":"If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!","LicenseInformationOrigin":0},{"PackageId":"Product Marketing Strategist","PackageVersion":"0.1.7","PackageProjectUrl":"http://melany.name","License":"I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!","LicenseInformationOrigin":1},{"PackageId":"National Accountability Administrator","PackageVersion":"5.9.9","PackageProjectUrl":"http://julio.info","License":"Use the neural IB matrix, then you can generate the neural matrix!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Research Representative","PackageVersion":"1.6.9","PackageProjectUrl":"https://carol.org","License":"You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Internal Quality Director","PackageVersion":"5.3.0","PackageProjectUrl":"http://hyman.com","License":"Use the redundant AI alarm, then you can transmit the redundant alarm!","LicenseInformationOrigin":1},{"PackageId":"Principal Accountability Facilitator","PackageVersion":"2.1.4","PackageProjectUrl":"https://dillan.net","License":"Use the back-end XML protocol, then you can reboot the back-end protocol!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Brand Officer","PackageVersion":"1.1.5","PackageProjectUrl":"https://shayne.name","License":"If we transmit the application, we can get to the SAS application through the wireless SAS application!","LicenseInformationOrigin":2},{"PackageId":"Chief Web Specialist","PackageVersion":"7.4.0","PackageProjectUrl":"http://keely.net","License":"navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!","LicenseInformationOrigin":1},{"PackageId":"Future Factors Representative","PackageVersion":"9.2.0","PackageProjectUrl":"https://jazmin.org","License":"Use the solid state SDD application, then you can navigate the solid state application!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Analyst","PackageVersion":"2.5.0","PackageProjectUrl":"http://danial.name","License":"overriding the interface won\u0027t do anything, we need to override the virtual THX interface!","LicenseInformationOrigin":0},{"PackageId":"Customer Group Manager","PackageVersion":"8.0.4","PackageProjectUrl":"https://luisa.biz","License":"The RAM panel is down, transmit the online panel so we can transmit the RAM panel!","LicenseInformationOrigin":2},{"PackageId":"Senior Operations Engineer","PackageVersion":"3.1.8","PackageProjectUrl":"http://montana.name","License":"If we program the array, we can get to the JBOD array through the primary JBOD array!","LicenseInformationOrigin":0},{"PackageId":"District Group Associate","PackageVersion":"4.0.1","PackageProjectUrl":"https://noemi.info","License":"We need to transmit the redundant TCP panel!","LicenseInformationOrigin":0},{"PackageId":"Regional Data Strategist","PackageVersion":"3.5.3","PackageProjectUrl":"https://sedrick.biz","License":"I\u0027ll transmit the optical USB program, that should program the USB program!","LicenseInformationOrigin":1},{"PackageId":"Lead Accountability Orchestrator","PackageVersion":"2.6.2","PackageProjectUrl":"https://tre.org","License":"You can\u0027t connect the panel without bypassing the bluetooth SSL panel!","LicenseInformationOrigin":0},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Human Directives Specialist","PackageVersion":"4.3.4","PackageProjectUrl":"http://tabitha.name","License":"I\u0027ll reboot the virtual CSS program, that should program the CSS program!","LicenseInformationOrigin":1},{"PackageId":"Regional Accountability Assistant","PackageVersion":"2.7.5","PackageProjectUrl":"http://barney.com","License":"You can\u0027t program the alarm without overriding the cross-platform RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Internal Accounts Specialist","PackageVersion":"4.9.2","PackageProjectUrl":"https://wilfredo.biz","License":"The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!","LicenseInformationOrigin":1},{"PackageId":"Legacy Interactions Analyst","PackageVersion":"3.0.8","PackageProjectUrl":"http://logan.net","License":"You can\u0027t parse the hard drive without generating the digital AGP hard drive!","LicenseInformationOrigin":2},{"PackageId":"Senior Implementation Associate","PackageVersion":"8.2.9","PackageProjectUrl":"http://roderick.org","License":"synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Division Consultant","PackageVersion":"4.8.7","PackageProjectUrl":"https://jack.net","License":"The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!","LicenseInformationOrigin":0},{"PackageId":"Customer Applications Developer","PackageVersion":"5.6.1","PackageProjectUrl":"http://kiley.org","License":"We need to connect the bluetooth RAM application!","LicenseInformationOrigin":2},{"PackageId":"Corporate Paradigm Administrator","PackageVersion":"5.5.2","PackageProjectUrl":"http://trace.net","License":"Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!","LicenseInformationOrigin":1},{"PackageId":"Customer Accountability Strategist","PackageVersion":"0.5.2","PackageProjectUrl":"https://stuart.com","License":"You can\u0027t parse the firewall without navigating the solid state ADP firewall!","LicenseInformationOrigin":0},{"PackageId":"Product Security Developer","PackageVersion":"4.4.5","PackageProjectUrl":"https://maida.org","License":"parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!","LicenseInformationOrigin":2},{"PackageId":"Future Group Director","PackageVersion":"2.3.4","PackageProjectUrl":"https://luna.info","License":"I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Chief Intranet Strategist","PackageVersion":"9.7.0","PackageProjectUrl":"https://john.name","License":"We need to copy the redundant JSON transmitter!","LicenseInformationOrigin":0},{"PackageId":"Legacy Optimization Assistant","PackageVersion":"8.8.2","PackageProjectUrl":"https://scot.info","License":"The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!","LicenseInformationOrigin":1},{"PackageId":"Chief Directives Executive","PackageVersion":"9.4.9","PackageProjectUrl":"http://jedediah.net","License":"Try to back up the THX interface, maybe it will back up the auxiliary interface!","LicenseInformationOrigin":1},{"PackageId":"Principal Usability Representative","PackageVersion":"9.1.3","PackageProjectUrl":"https://nelson.com","License":"We need to transmit the bluetooth FTP feed!","LicenseInformationOrigin":0},{"PackageId":"Forward Web Assistant","PackageVersion":"3.5.5","PackageProjectUrl":"https://tremayne.org","License":"The COM array is down, calculate the open-source array so we can calculate the COM array!","LicenseInformationOrigin":0},{"PackageId":"Product Intranet Assistant","PackageVersion":"2.8.1","PackageProjectUrl":"https://chance.name","License":"You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Human Optimization Director","PackageVersion":"0.1.8","PackageProjectUrl":"https://crystal.info","License":"We need to transmit the back-end PCI panel!","LicenseInformationOrigin":2},{"PackageId":"Lead Tactics Executive","PackageVersion":"6.2.9","PackageProjectUrl":"https://maxwell.name","License":"I\u0027ll transmit the online TCP driver, that should driver the TCP driver!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Human Functionality Associate","PackageVersion":"9.4.1","PackageProjectUrl":"https://bonita.biz","License":"I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!","LicenseInformationOrigin":1},{"PackageId":"District Directives Analyst","PackageVersion":"9.3.0","PackageProjectUrl":"http://bridie.biz","License":"Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!","LicenseInformationOrigin":2},{"PackageId":"Human Configuration Assistant","PackageVersion":"0.1.1","PackageProjectUrl":"https://aurelia.info","License":"We need to hack the mobile SMS circuit!","LicenseInformationOrigin":1},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Central Security Representative","PackageVersion":"4.3.4","PackageProjectUrl":"https://velva.name","License":"The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!","LicenseInformationOrigin":0},{"PackageId":"Direct Group Consultant","PackageVersion":"8.8.0","PackageProjectUrl":"https://alana.org","License":"I\u0027ll index the neural SDD bus, that should bus the SDD bus!","LicenseInformationOrigin":2},{"PackageId":"Product Integration Officer","PackageVersion":"3.3.6","PackageProjectUrl":"https://howard.org","License":"Use the primary PNG matrix, then you can copy the primary matrix!","LicenseInformationOrigin":1},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"Regional Branding Facilitator","PackageVersion":"0.3.9","PackageProjectUrl":"https://otilia.info","License":"We need to connect the optical SQL capacitor!","LicenseInformationOrigin":1},{"PackageId":"District Factors Assistant","PackageVersion":"9.8.2","PackageProjectUrl":"https://ernestine.net","License":"Try to compress the SMS bus, maybe it will compress the bluetooth bus!","LicenseInformationOrigin":2},{"PackageId":"Corporate Program Facilitator","PackageVersion":"2.7.4","PackageProjectUrl":"https://vida.net","License":"I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!","LicenseInformationOrigin":1},{"PackageId":"Customer Assurance Consultant","PackageVersion":"5.6.2","PackageProjectUrl":"https://eryn.org","License":"Use the digital IB alarm, then you can program the digital alarm!","LicenseInformationOrigin":1},{"PackageId":"Legacy Accountability Agent","PackageVersion":"5.8.2","PackageProjectUrl":"http://chelsea.com","License":"I\u0027ll compress the auxiliary XSS port, that should port the XSS port!","LicenseInformationOrigin":2},{"PackageId":"Legacy Implementation Assistant","PackageVersion":"2.1.6","PackageProjectUrl":"https://liana.net","License":"Use the auxiliary RSS sensor, then you can program the auxiliary sensor!","LicenseInformationOrigin":2},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Global Configuration Planner","PackageVersion":"2.6.3","PackageProjectUrl":"http://willis.name","License":"connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Functionality Manager","PackageVersion":"5.9.0","PackageProjectUrl":"https://mariane.info","License":"The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!","LicenseInformationOrigin":1},{"PackageId":"National Usability Manager","PackageVersion":"0.3.8","PackageProjectUrl":"http://myriam.name","License":"quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!","LicenseInformationOrigin":1},{"PackageId":"Lead Factors Planner","PackageVersion":"1.0.4","PackageProjectUrl":"http://mikayla.com","License":"You can\u0027t compress the driver without calculating the back-end SQL driver!","LicenseInformationOrigin":0},{"PackageId":"Corporate Data Assistant","PackageVersion":"7.9.8","PackageProjectUrl":"http://arlene.biz","License":"Try to generate the SMTP feed, maybe it will generate the online feed!","LicenseInformationOrigin":1},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Principal Solutions Supervisor","PackageVersion":"6.1.2","PackageProjectUrl":"https://ari.biz","License":"programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!","LicenseInformationOrigin":2},{"PackageId":"Central Creative Analyst","PackageVersion":"3.6.4","PackageProjectUrl":"http://abigayle.net","License":"programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!","LicenseInformationOrigin":0},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Legacy Research Producer","PackageVersion":"2.8.3","PackageProjectUrl":"https://sonia.org","License":"backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!","LicenseInformationOrigin":1},{"PackageId":"Product Paradigm Director","PackageVersion":"6.3.8","PackageProjectUrl":"http://kiera.org","License":"Use the wireless THX array, then you can connect the wireless array!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Internal Directives Designer","PackageVersion":"0.4.8","PackageProjectUrl":"http://mable.net","License":"Use the virtual AI capacitor, then you can navigate the virtual capacitor!","LicenseInformationOrigin":0},{"PackageId":"National Response Planner","PackageVersion":"7.8.0","PackageProjectUrl":"https://hertha.org","License":"Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!","LicenseInformationOrigin":1},{"PackageId":"Internal Division Agent","PackageVersion":"2.4.2","PackageProjectUrl":"http://armani.name","License":"Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!","LicenseInformationOrigin":0},{"PackageId":"Corporate Intranet Analyst","PackageVersion":"0.9.0","PackageProjectUrl":"https://creola.info","License":"indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!","LicenseInformationOrigin":0},{"PackageId":"Senior Accountability Specialist","PackageVersion":"0.8.7","PackageProjectUrl":"http://kristina.info","License":"We need to input the cross-platform RAM system!","LicenseInformationOrigin":0},{"PackageId":"Internal Division Assistant","PackageVersion":"0.9.4","PackageProjectUrl":"http://emerson.info","License":"The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!","LicenseInformationOrigin":0},{"PackageId":"Global Usability Manager","PackageVersion":"6.7.0","PackageProjectUrl":"https://alexandra.info","License":"We need to parse the mobile SCSI protocol!","LicenseInformationOrigin":1},{"PackageId":"International Metrics Officer","PackageVersion":"3.7.1","PackageProjectUrl":"https://myrl.info","License":"hacking the array won\u0027t do anything, we need to back up the haptic IB array!","LicenseInformationOrigin":0},{"PackageId":"Chief Markets Agent","PackageVersion":"8.8.4","PackageProjectUrl":"http://dayana.name","License":"I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!","LicenseInformationOrigin":2},{"PackageId":"Forward Infrastructure Specialist","PackageVersion":"6.1.6","PackageProjectUrl":"http://melisa.com","License":"quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!","LicenseInformationOrigin":2},{"PackageId":"District Metrics Analyst","PackageVersion":"4.6.0","PackageProjectUrl":"http://nathaniel.name","License":"overriding the interface won\u0027t do anything, we need to connect the digital GB interface!","LicenseInformationOrigin":2},{"PackageId":"Senior Group Designer","PackageVersion":"3.0.6","PackageProjectUrl":"http://keyshawn.net","License":"We need to copy the cross-platform SAS panel!","LicenseInformationOrigin":1},{"PackageId":"Forward Data Administrator","PackageVersion":"9.0.6","PackageProjectUrl":"https://michelle.org","License":"Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!","LicenseInformationOrigin":1},{"PackageId":"Product Operations Liaison","PackageVersion":"1.1.0","PackageProjectUrl":"http://tabitha.com","License":"You can\u0027t generate the array without quantifying the open-source PCI array!","LicenseInformationOrigin":0},{"PackageId":"Investor Division Planner","PackageVersion":"1.4.6","PackageProjectUrl":"https://evelyn.info","License":"I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt new file mode 100644 index 00000000..4f3a53d6 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt new file mode 100644 index 00000000..79994e84 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt new file mode 100644 index 00000000..063178e9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt new file mode 100644 index 00000000..19d7ae9a --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt new file mode 100644 index 00000000..efc01aea --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt new file mode 100644 index 00000000..14af1806 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt new file mode 100644 index 00000000..ac5b753d --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt new file mode 100644 index 00000000..44c20a6d --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt new file mode 100644 index 00000000..9a6e79f9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt new file mode 100644 index 00000000..449643a9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt new file mode 100644 index 00000000..1b6bdcff --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt new file mode 100644 index 00000000..59e604a7 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt similarity index 100% rename from tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt rename to tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt new file mode 100644 index 00000000..8f62d289 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt new file mode 100644 index 00000000..ccc31af3 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Principal Usability Representative","PackageVersion":"9.1.3","PackageProjectUrl":"https://nelson.com","License":"We need to transmit the bluetooth FTP feed!","LicenseInformationOrigin":0},{"PackageId":"Chief Intranet Strategist","PackageVersion":"9.7.0","PackageProjectUrl":"https://john.name","License":"We need to copy the redundant JSON transmitter!","LicenseInformationOrigin":0},{"PackageId":"Customer Group Manager","PackageVersion":"8.0.4","PackageProjectUrl":"https://luisa.biz","License":"The RAM panel is down, transmit the online panel so we can transmit the RAM panel!","LicenseInformationOrigin":2},{"PackageId":"Customer Accountability Strategist","PackageVersion":"0.5.2","PackageProjectUrl":"https://stuart.com","License":"You can\u0027t parse the firewall without navigating the solid state ADP firewall!","LicenseInformationOrigin":0},{"PackageId":"Chief Directives Executive","PackageVersion":"9.4.9","PackageProjectUrl":"http://jedediah.net","License":"Try to back up the THX interface, maybe it will back up the auxiliary interface!","LicenseInformationOrigin":1},{"PackageId":"District Factors Assistant","PackageVersion":"9.8.2","PackageProjectUrl":"https://ernestine.net","License":"Try to compress the SMS bus, maybe it will compress the bluetooth bus!","LicenseInformationOrigin":2},{"PackageId":"Legacy Interactions Analyst","PackageVersion":"3.0.8","PackageProjectUrl":"http://logan.net","License":"You can\u0027t parse the hard drive without generating the digital AGP hard drive!","LicenseInformationOrigin":2},{"PackageId":"District Metrics Analyst","PackageVersion":"4.6.0","PackageProjectUrl":"http://nathaniel.name","License":"overriding the interface won\u0027t do anything, we need to connect the digital GB interface!","LicenseInformationOrigin":2},{"PackageId":"Senior Accountability Specialist","PackageVersion":"0.8.7","PackageProjectUrl":"http://kristina.info","License":"We need to input the cross-platform RAM system!","LicenseInformationOrigin":0},{"PackageId":"National Usability Manager","PackageVersion":"0.3.8","PackageProjectUrl":"http://myriam.name","License":"quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!","LicenseInformationOrigin":1},{"PackageId":"Lead Tactics Executive","PackageVersion":"6.2.9","PackageProjectUrl":"https://maxwell.name","License":"I\u0027ll transmit the online TCP driver, that should driver the TCP driver!","LicenseInformationOrigin":0},{"PackageId":"Principal Accountability Facilitator","PackageVersion":"2.1.4","PackageProjectUrl":"https://dillan.net","License":"Use the back-end XML protocol, then you can reboot the back-end protocol!","LicenseInformationOrigin":0},{"PackageId":"Internal Quality Director","PackageVersion":"5.3.0","PackageProjectUrl":"http://hyman.com","License":"Use the redundant AI alarm, then you can transmit the redundant alarm!","LicenseInformationOrigin":1},{"PackageId":"Chief Web Specialist","PackageVersion":"7.4.0","PackageProjectUrl":"http://keely.net","License":"navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!","LicenseInformationOrigin":1},{"PackageId":"Lead Accountability Orchestrator","PackageVersion":"2.6.2","PackageProjectUrl":"https://tre.org","License":"You can\u0027t connect the panel without bypassing the bluetooth SSL panel!","LicenseInformationOrigin":0},{"PackageId":"International Metrics Officer","PackageVersion":"3.7.1","PackageProjectUrl":"https://myrl.info","License":"hacking the array won\u0027t do anything, we need to back up the haptic IB array!","LicenseInformationOrigin":0},{"PackageId":"Forward Data Administrator","PackageVersion":"9.0.6","PackageProjectUrl":"https://michelle.org","License":"Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!","LicenseInformationOrigin":1},{"PackageId":"Regional Data Strategist","PackageVersion":"3.5.3","PackageProjectUrl":"https://sedrick.biz","License":"I\u0027ll transmit the optical USB program, that should program the USB program!","LicenseInformationOrigin":1},{"PackageId":"Regional Accountability Assistant","PackageVersion":"2.7.5","PackageProjectUrl":"http://barney.com","License":"You can\u0027t program the alarm without overriding the cross-platform RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Product Integration Officer","PackageVersion":"3.3.6","PackageProjectUrl":"https://howard.org","License":"Use the primary PNG matrix, then you can copy the primary matrix!","LicenseInformationOrigin":1},{"PackageId":"Customer Group Technician","PackageVersion":"9.8.2","PackageProjectUrl":"https://sandrine.name","License":"programming the system won\u0027t do anything, we need to synthesize the primary AGP system!","LicenseInformationOrigin":1},{"PackageId":"Lead Factors Planner","PackageVersion":"1.0.4","PackageProjectUrl":"http://mikayla.com","License":"You can\u0027t compress the driver without calculating the back-end SQL driver!","LicenseInformationOrigin":0},{"PackageId":"Corporate Data Assistant","PackageVersion":"7.9.8","PackageProjectUrl":"http://arlene.biz","License":"Try to generate the SMTP feed, maybe it will generate the online feed!","LicenseInformationOrigin":1},{"PackageId":"Human Functionality Associate","PackageVersion":"9.4.1","PackageProjectUrl":"https://bonita.biz","License":"I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Research Representative","PackageVersion":"1.6.9","PackageProjectUrl":"https://carol.org","License":"You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!","LicenseInformationOrigin":1},{"PackageId":"Internal Accounts Specialist","PackageVersion":"4.9.2","PackageProjectUrl":"https://wilfredo.biz","License":"The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!","LicenseInformationOrigin":1},{"PackageId":"Corporate Program Facilitator","PackageVersion":"2.7.4","PackageProjectUrl":"https://vida.net","License":"I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!","LicenseInformationOrigin":1},{"PackageId":"Investor Division Planner","PackageVersion":"1.4.6","PackageProjectUrl":"https://evelyn.info","License":"I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!","LicenseInformationOrigin":1},{"PackageId":"National Response Planner","PackageVersion":"7.8.0","PackageProjectUrl":"https://hertha.org","License":"Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!","LicenseInformationOrigin":1},{"PackageId":"National Accountability Administrator","PackageVersion":"5.9.9","PackageProjectUrl":"http://julio.info","License":"Use the neural IB matrix, then you can generate the neural matrix!","LicenseInformationOrigin":0},{"PackageId":"Legacy Branding Orchestrator","PackageVersion":"0.2.6","PackageProjectUrl":"https://keeley.net","License":"We need to bypass the back-end FTP alarm!","LicenseInformationOrigin":2},{"PackageId":"Product Infrastructure Orchestrator","PackageVersion":"5.0.6","PackageProjectUrl":"http://forrest.com","License":"If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!","LicenseInformationOrigin":2},{"PackageId":"Forward Infrastructure Specialist","PackageVersion":"6.1.6","PackageProjectUrl":"http://melisa.com","License":"quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!","LicenseInformationOrigin":2},{"PackageId":"District Directives Analyst","PackageVersion":"9.3.0","PackageProjectUrl":"http://bridie.biz","License":"Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!","LicenseInformationOrigin":2},{"PackageId":"Future Group Director","PackageVersion":"2.3.4","PackageProjectUrl":"https://luna.info","License":"I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Branding Facilitator","PackageVersion":"0.3.9","PackageProjectUrl":"https://otilia.info","License":"We need to connect the optical SQL capacitor!","LicenseInformationOrigin":1},{"PackageId":"Global Configuration Planner","PackageVersion":"2.6.3","PackageProjectUrl":"http://willis.name","License":"connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Assurance Consultant","PackageVersion":"5.6.2","PackageProjectUrl":"https://eryn.org","License":"Use the digital IB alarm, then you can program the digital alarm!","LicenseInformationOrigin":1},{"PackageId":"District Interactions Developer","PackageVersion":"9.9.4","PackageProjectUrl":"http://adrien.biz","License":"I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Human Optimization Director","PackageVersion":"0.1.8","PackageProjectUrl":"https://crystal.info","License":"We need to transmit the back-end PCI panel!","LicenseInformationOrigin":2},{"PackageId":"Principal Solutions Supervisor","PackageVersion":"6.1.2","PackageProjectUrl":"https://ari.biz","License":"programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!","LicenseInformationOrigin":2},{"PackageId":"Product Paradigm Director","PackageVersion":"6.3.8","PackageProjectUrl":"http://kiera.org","License":"Use the wireless THX array, then you can connect the wireless array!","LicenseInformationOrigin":0},{"PackageId":"Senior Group Designer","PackageVersion":"3.0.6","PackageProjectUrl":"http://keyshawn.net","License":"We need to copy the cross-platform SAS panel!","LicenseInformationOrigin":1},{"PackageId":"Product Intranet Assistant","PackageVersion":"2.8.1","PackageProjectUrl":"https://chance.name","License":"You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Product Security Developer","PackageVersion":"4.4.5","PackageProjectUrl":"https://maida.org","License":"parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!","LicenseInformationOrigin":2},{"PackageId":"Corporate Paradigm Administrator","PackageVersion":"5.5.2","PackageProjectUrl":"http://trace.net","License":"Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!","LicenseInformationOrigin":1},{"PackageId":"Product Interactions Executive","PackageVersion":"5.4.8","PackageProjectUrl":"https://maye.org","License":"We need to override the auxiliary AGP firewall!","LicenseInformationOrigin":1},{"PackageId":"Central Creative Analyst","PackageVersion":"3.6.4","PackageProjectUrl":"http://abigayle.net","License":"programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!","LicenseInformationOrigin":0},{"PackageId":"Internal Division Assistant","PackageVersion":"0.9.4","PackageProjectUrl":"http://emerson.info","License":"The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Brand Officer","PackageVersion":"1.1.5","PackageProjectUrl":"https://shayne.name","License":"If we transmit the application, we can get to the SAS application through the wireless SAS application!","LicenseInformationOrigin":2},{"PackageId":"Global Usability Manager","PackageVersion":"6.7.0","PackageProjectUrl":"https://alexandra.info","License":"We need to parse the mobile SCSI protocol!","LicenseInformationOrigin":1},{"PackageId":"Chief Markets Agent","PackageVersion":"8.8.4","PackageProjectUrl":"http://dayana.name","License":"I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!","LicenseInformationOrigin":2},{"PackageId":"Human Configuration Assistant","PackageVersion":"0.1.1","PackageProjectUrl":"https://aurelia.info","License":"We need to hack the mobile SMS circuit!","LicenseInformationOrigin":1},{"PackageId":"Direct Group Consultant","PackageVersion":"8.8.0","PackageProjectUrl":"https://alana.org","License":"I\u0027ll index the neural SDD bus, that should bus the SDD bus!","LicenseInformationOrigin":2},{"PackageId":"Senior Implementation Associate","PackageVersion":"8.2.9","PackageProjectUrl":"http://roderick.org","License":"synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Legacy Research Producer","PackageVersion":"2.8.3","PackageProjectUrl":"https://sonia.org","License":"backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!","LicenseInformationOrigin":1},{"PackageId":"Legacy Accountability Agent","PackageVersion":"5.8.2","PackageProjectUrl":"http://chelsea.com","License":"I\u0027ll compress the auxiliary XSS port, that should port the XSS port!","LicenseInformationOrigin":2},{"PackageId":"District Group Associate","PackageVersion":"4.0.1","PackageProjectUrl":"https://noemi.info","License":"We need to transmit the redundant TCP panel!","LicenseInformationOrigin":0},{"PackageId":"Future Factors Representative","PackageVersion":"9.2.0","PackageProjectUrl":"https://jazmin.org","License":"Use the solid state SDD application, then you can navigate the solid state application!","LicenseInformationOrigin":1},{"PackageId":"Customer Applications Developer","PackageVersion":"5.6.1","PackageProjectUrl":"http://kiley.org","License":"We need to connect the bluetooth RAM application!","LicenseInformationOrigin":2},{"PackageId":"Direct Data Consultant","PackageVersion":"6.3.3","PackageProjectUrl":"https://heath.name","License":"Use the haptic XML driver, then you can index the haptic driver!","LicenseInformationOrigin":1},{"PackageId":"Internal Division Agent","PackageVersion":"2.4.2","PackageProjectUrl":"http://armani.name","License":"Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!","LicenseInformationOrigin":0},{"PackageId":"Direct Research Assistant","PackageVersion":"5.9.7","PackageProjectUrl":"http://danial.org","License":"Try to connect the TCP circuit, maybe it will connect the back-end circuit!","LicenseInformationOrigin":2},{"PackageId":"Legacy Optimization Assistant","PackageVersion":"8.8.2","PackageProjectUrl":"https://scot.info","License":"The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Administrator","PackageVersion":"9.2.8","PackageProjectUrl":"https://brett.biz","License":"The FTP card is down, index the digital card so we can index the FTP card!","LicenseInformationOrigin":1},{"PackageId":"Human Directives Specialist","PackageVersion":"4.3.4","PackageProjectUrl":"http://tabitha.name","License":"I\u0027ll reboot the virtual CSS program, that should program the CSS program!","LicenseInformationOrigin":1},{"PackageId":"Forward Web Assistant","PackageVersion":"3.5.5","PackageProjectUrl":"https://tremayne.org","License":"The COM array is down, calculate the open-source array so we can calculate the COM array!","LicenseInformationOrigin":0},{"PackageId":"Product Operations Liaison","PackageVersion":"1.1.0","PackageProjectUrl":"http://tabitha.com","License":"You can\u0027t generate the array without quantifying the open-source PCI array!","LicenseInformationOrigin":0},{"PackageId":"Legacy Accountability Coordinator","PackageVersion":"5.5.0","PackageProjectUrl":"http://erling.name","License":"Try to back up the COM driver, maybe it will back up the bluetooth driver!","LicenseInformationOrigin":0},{"PackageId":"Product Marketing Strategist","PackageVersion":"0.1.7","PackageProjectUrl":"http://melany.name","License":"I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!","LicenseInformationOrigin":1},{"PackageId":"Corporate Intranet Analyst","PackageVersion":"0.9.0","PackageProjectUrl":"https://creola.info","License":"indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!","LicenseInformationOrigin":0},{"PackageId":"Central Security Representative","PackageVersion":"4.3.4","PackageProjectUrl":"https://velva.name","License":"The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!","LicenseInformationOrigin":0},{"PackageId":"Senior Brand Analyst","PackageVersion":"2.5.0","PackageProjectUrl":"http://danial.name","License":"overriding the interface won\u0027t do anything, we need to override the virtual THX interface!","LicenseInformationOrigin":0},{"PackageId":"Internal Directives Designer","PackageVersion":"0.4.8","PackageProjectUrl":"http://mable.net","License":"Use the virtual AI capacitor, then you can navigate the virtual capacitor!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Division Consultant","PackageVersion":"4.8.7","PackageProjectUrl":"https://jack.net","License":"The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!","LicenseInformationOrigin":0},{"PackageId":"Central Data Consultant","PackageVersion":"6.5.0","PackageProjectUrl":"https://delilah.org","License":"generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!","LicenseInformationOrigin":1},{"PackageId":"Regional Tactics Technician","PackageVersion":"7.6.7","PackageProjectUrl":"http://alvena.net","License":"If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!","LicenseInformationOrigin":0},{"PackageId":"Legacy Implementation Assistant","PackageVersion":"2.1.6","PackageProjectUrl":"https://liana.net","License":"Use the auxiliary RSS sensor, then you can program the auxiliary sensor!","LicenseInformationOrigin":2},{"PackageId":"Customer Functionality Manager","PackageVersion":"5.9.0","PackageProjectUrl":"https://mariane.info","License":"The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!","LicenseInformationOrigin":1},{"PackageId":"Senior Operations Engineer","PackageVersion":"3.1.8","PackageProjectUrl":"http://montana.name","License":"If we program the array, we can get to the JBOD array through the primary JBOD array!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt new file mode 100644 index 00000000..c0ef0595 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt new file mode 100644 index 00000000..3396edaa --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt new file mode 100644 index 00000000..739f3790 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt new file mode 100644 index 00000000..a303267b --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt new file mode 100644 index 00000000..7aac02c2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt new file mode 100644 index 00000000..543830d8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt new file mode 100644 index 00000000..739f3790 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt new file mode 100644 index 00000000..186b6d5e --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt new file mode 100644 index 00000000..fe46fee6 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt new file mode 100644 index 00000000..ac0a067f --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt new file mode 100644 index 00000000..739f3790 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt new file mode 100644 index 00000000..c8d30dac --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt new file mode 100644 index 00000000..43c005f8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt new file mode 100644 index 00000000..bc8e0df6 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt new file mode 100644 index 00000000..739f3790 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt new file mode 100644 index 00000000..261389d3 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt new file mode 100644 index 00000000..43c005f8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt new file mode 100644 index 00000000..dbc6c081 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt new file mode 100644 index 00000000..739f3790 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt new file mode 100644 index 00000000..ee4dc807 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"National Accounts Liaison","PackageVersion":"7.2.6","ValidationErrors":[{"Error":"Cedrick","Context":"https://zachariah.net"},{"Error":"Marcelle","Context":"https://adah.org"},{"Error":"Barney","Context":"http://erica.org"}],"LicenseInformationOrigin":2},{"PackageId":"Global Response Associate","PackageVersion":"1.9.8","ValidationErrors":[{"Error":"Sandra","Context":"http://antonina.com"},{"Error":"Willow","Context":"https://jason.org"},{"Error":"Orland","Context":"http://rigoberto.com"},{"Error":"Laney","Context":"http://eryn.org"},{"Error":"Amari","Context":"http://viviane.net"},{"Error":"Kelley","Context":"http://doris.net"},{"Error":"Kennedy","Context":"https://milo.net"}],"License":"The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Legacy Creative Liaison","PackageVersion":"0.4.6","ValidationErrors":[{"Error":"Mervin","Context":"http://celestine.info"},{"Error":"Amalia","Context":"https://shanelle.info"},{"Error":"Sheila","Context":"http://darrell.info"},{"Error":"Alec","Context":"https://candice.biz"},{"Error":"Linnea","Context":"http://everardo.info"},{"Error":"Daryl","Context":"https://jerrod.com"},{"Error":"Laila","Context":"http://caleigh.net"},{"Error":"Adolfo","Context":"http://daisha.biz"}],"LicenseInformationOrigin":2},{"PackageId":"Lead Intranet Officer","PackageVersion":"6.4.9","ValidationErrors":[{"Error":"Margaret","Context":"https://michaela.name"},{"Error":"Jody","Context":"http://jakob.org"},{"Error":"Anjali","Context":"https://valentin.info"}],"LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"Human Usability Specialist","PackageVersion":"3.2.8","PackageProjectUrl":"http://micah.info","ValidationErrors":[{"Error":"Evalyn","Context":"https://myrtis.name"},{"Error":"Ursula","Context":"https://werner.net"},{"Error":"Linwood","Context":"http://rebekah.org"},{"Error":"Cleve","Context":"https://claudie.net"},{"Error":"Theodora","Context":"http://faye.info"}],"LicenseInformationOrigin":0},{"PackageId":"International Integration Orchestrator","PackageVersion":"5.4.5","ValidationErrors":[{"Error":"Steve","Context":"http://lon.org"},{"Error":"Braeden","Context":"https://sunny.name"},{"Error":"Leslie","Context":"http://bettie.info"},{"Error":"Edmund","Context":"http://sadie.info"},{"Error":"Horacio","Context":"https://loraine.name"}],"LicenseInformationOrigin":0},{"PackageId":"Global Branding Associate","PackageVersion":"0.5.9","PackageProjectUrl":"http://cory.com","ValidationErrors":[{"Error":"Suzanne","Context":"http://ima.name"},{"Error":"Earnestine","Context":"http://nathanial.biz"},{"Error":"Connor","Context":"https://augustus.net"},{"Error":"Araceli","Context":"http://hailey.biz"},{"Error":"Janessa","Context":"https://craig.com"},{"Error":"Erica","Context":"http://kristin.org"},{"Error":"Alek","Context":"http://shany.biz"}],"License":"If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!","LicenseInformationOrigin":0},{"PackageId":"Lead Markets Designer","PackageVersion":"2.8.4","PackageProjectUrl":"https://amara.info","ValidationErrors":[{"Error":"Seamus","Context":"http://maybell.info"},{"Error":"Monserrat","Context":"http://katrine.name"},{"Error":"Abel","Context":"https://geovany.com"},{"Error":"Diana","Context":"http://eula.name"},{"Error":"Raphael","Context":"https://zackery.info"}],"LicenseInformationOrigin":1},{"PackageId":"Corporate Tactics Analyst","PackageVersion":"3.0.8","ValidationErrors":[{"Error":"Bill","Context":"http://jairo.net"},{"Error":"Clemmie","Context":"http://shanny.net"},{"Error":"Hildegard","Context":"http://conner.name"},{"Error":"Isabella","Context":"https://kennith.com"},{"Error":"Johanna","Context":"https://ara.org"},{"Error":"Demarco","Context":"https://rae.biz"},{"Error":"Viviane","Context":"http://christine.info"}],"License":"If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!","LicenseInformationOrigin":1},{"PackageId":"Global Optimization Representative","PackageVersion":"8.2.6","ValidationErrors":[{"Error":"Brandi","Context":"https://aniyah.com"},{"Error":"Tyson","Context":"https://bonita.org"},{"Error":"Jazlyn","Context":"http://madonna.net"},{"Error":"Deangelo","Context":"https://jess.info"},{"Error":"Alvah","Context":"https://hans.net"},{"Error":"Payton","Context":"http://shanna.name"},{"Error":"Providenci","Context":"https://tyra.org"},{"Error":"Flo","Context":"http://isidro.net"},{"Error":"Dawn","Context":"https://anika.org"},{"Error":"Silas","Context":"http://zane.name"}],"LicenseInformationOrigin":1},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Investor Research Facilitator","PackageVersion":"5.7.5","ValidationErrors":[{"Error":"Avery","Context":"http://jarret.biz"},{"Error":"Clarissa","Context":"https://audreanne.name"},{"Error":"Vida","Context":"https://theresia.biz"},{"Error":"Ransom","Context":"http://isom.com"},{"Error":"Anastasia","Context":"http://kamryn.info"},{"Error":"Marlene","Context":"https://cyril.name"},{"Error":"Zetta","Context":"http://pete.org"},{"Error":"Candida","Context":"https://craig.biz"},{"Error":"Timmothy","Context":"https://joanny.biz"},{"Error":"Alfonzo","Context":"http://dorothea.org"}],"LicenseInformationOrigin":0},{"PackageId":"Customer Program Technician","PackageVersion":"1.7.7","ValidationErrors":[{"Error":"Keely","Context":"http://obie.org"},{"Error":"Caleigh","Context":"https://albin.info"},{"Error":"Flavie","Context":"http://lavonne.biz"},{"Error":"Kaitlyn","Context":"http://osborne.org"},{"Error":"Joesph","Context":"https://michael.name"},{"Error":"Kali","Context":"http://shyanne.net"},{"Error":"Austin","Context":"https://marty.net"},{"Error":"Theresia","Context":"http://kristin.net"},{"Error":"Lester","Context":"https://paige.com"}],"LicenseInformationOrigin":0},{"PackageId":"Direct Accounts Associate","PackageVersion":"3.2.6","PackageProjectUrl":"https://vesta.com","ValidationErrors":[{"Error":"Buck","Context":"http://taryn.com"},{"Error":"Hilton","Context":"http://isabel.com"},{"Error":"Rogers","Context":"https://bertrand.biz"},{"Error":"Annetta","Context":"https://remington.org"},{"Error":"Efrain","Context":"http://davion.org"},{"Error":"Merle","Context":"https://abigayle.org"},{"Error":"Jerod","Context":"https://vicenta.info"},{"Error":"Kayli","Context":"https://shaun.net"},{"Error":"Antwan","Context":"https://hazel.net"}],"LicenseInformationOrigin":2},{"PackageId":"Legacy Optimization Orchestrator","PackageVersion":"2.4.2","ValidationErrors":[{"Error":"Damien","Context":"https://edyth.com"},{"Error":"Princess","Context":"http://haylie.biz"},{"Error":"Jordane","Context":"https://gregorio.com"},{"Error":"Opal","Context":"http://abbie.org"},{"Error":"Pablo","Context":"https://maxime.biz"},{"Error":"Shaun","Context":"https://concepcion.net"},{"Error":"Moises","Context":"http://rupert.info"}],"License":"If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Marketing Consultant","PackageVersion":"2.4.9","ValidationErrors":[{"Error":"Angie","Context":"https://ardella.info"},{"Error":"Melissa","Context":"https://sandra.biz"},{"Error":"Pearline","Context":"https://noble.net"},{"Error":"Dusty","Context":"https://verlie.com"}],"LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt new file mode 100644 index 00000000..fe46fee6 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt new file mode 100644 index 00000000..916a014e --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Principal Functionality Agent","PackageVersion":"1.5.3","ValidationErrors":[{"Error":"Judson","Context":"https://wilson.net"},{"Error":"Guadalupe","Context":"http://otho.info"},{"Error":"General","Context":"https://skylar.name"},{"Error":"Haylie","Context":"http://audreanne.info"}],"License":"connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Direct Intranet Facilitator","PackageVersion":"7.1.7","PackageProjectUrl":"https://garnet.net","ValidationErrors":[{"Error":"Alisha","Context":"http://alyson.name"},{"Error":"Carmelo","Context":"http://michele.name"},{"Error":"Miles","Context":"https://freddie.com"},{"Error":"Kade","Context":"https://jaunita.biz"},{"Error":"Marcelina","Context":"http://donna.net"},{"Error":"Darby","Context":"http://joana.org"},{"Error":"Albin","Context":"http://hal.com"},{"Error":"Betsy","Context":"http://quinton.com"},{"Error":"Emmalee","Context":"https://haleigh.name"}],"License":"synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!","LicenseInformationOrigin":1},{"PackageId":"Senior Brand Developer","PackageVersion":"4.4.1","PackageProjectUrl":"http://adelbert.net","ValidationErrors":[{"Error":"Reid","Context":"https://amely.info"},{"Error":"Nikki","Context":"https://mckayla.info"},{"Error":"Kiara","Context":"https://floyd.net"},{"Error":"Libby","Context":"http://wade.biz"},{"Error":"Leola","Context":"https://pietro.info"},{"Error":"Arch","Context":"http://hazle.org"},{"Error":"Eldred","Context":"http://gabriel.net"}],"License":"If we override the system, we can get to the CSS system through the neural CSS system!","LicenseInformationOrigin":1},{"PackageId":"Regional Accounts Technician","PackageVersion":"2.8.7","ValidationErrors":[{"Error":"Dawson","Context":"http://addie.org"},{"Error":"Xander","Context":"https://everette.info"},{"Error":"Otha","Context":"https://cletus.net"},{"Error":"Carlee","Context":"https://jaron.info"},{"Error":"Nannie","Context":"https://isaias.net"}],"LicenseInformationOrigin":0},{"PackageId":"National Solutions Coordinator","PackageVersion":"8.7.3","PackageProjectUrl":"https://adrianna.name","ValidationErrors":[{"Error":"Maximillian","Context":"http://leola.name"},{"Error":"Shaina","Context":"http://dean.name"},{"Error":"Juana","Context":"http://aniya.biz"},{"Error":"Fernando","Context":"http://shanna.com"},{"Error":"Katelyn","Context":"https://judd.com"},{"Error":"Earl","Context":"https://bradford.biz"}],"License":"Use the bluetooth USB panel, then you can calculate the bluetooth panel!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt similarity index 100% rename from tests/NuGetUtility.Test/Output/Json/JsonOutputFormatterPrettyTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt rename to tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt new file mode 100644 index 00000000..8f62d289 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt new file mode 100644 index 00000000..ccc31af3 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1},{"PackageId":"Principal Usability Representative","PackageVersion":"9.1.3","PackageProjectUrl":"https://nelson.com","License":"We need to transmit the bluetooth FTP feed!","LicenseInformationOrigin":0},{"PackageId":"Chief Intranet Strategist","PackageVersion":"9.7.0","PackageProjectUrl":"https://john.name","License":"We need to copy the redundant JSON transmitter!","LicenseInformationOrigin":0},{"PackageId":"Customer Group Manager","PackageVersion":"8.0.4","PackageProjectUrl":"https://luisa.biz","License":"The RAM panel is down, transmit the online panel so we can transmit the RAM panel!","LicenseInformationOrigin":2},{"PackageId":"Customer Accountability Strategist","PackageVersion":"0.5.2","PackageProjectUrl":"https://stuart.com","License":"You can\u0027t parse the firewall without navigating the solid state ADP firewall!","LicenseInformationOrigin":0},{"PackageId":"Chief Directives Executive","PackageVersion":"9.4.9","PackageProjectUrl":"http://jedediah.net","License":"Try to back up the THX interface, maybe it will back up the auxiliary interface!","LicenseInformationOrigin":1},{"PackageId":"District Factors Assistant","PackageVersion":"9.8.2","PackageProjectUrl":"https://ernestine.net","License":"Try to compress the SMS bus, maybe it will compress the bluetooth bus!","LicenseInformationOrigin":2},{"PackageId":"Legacy Interactions Analyst","PackageVersion":"3.0.8","PackageProjectUrl":"http://logan.net","License":"You can\u0027t parse the hard drive without generating the digital AGP hard drive!","LicenseInformationOrigin":2},{"PackageId":"District Metrics Analyst","PackageVersion":"4.6.0","PackageProjectUrl":"http://nathaniel.name","License":"overriding the interface won\u0027t do anything, we need to connect the digital GB interface!","LicenseInformationOrigin":2},{"PackageId":"Senior Accountability Specialist","PackageVersion":"0.8.7","PackageProjectUrl":"http://kristina.info","License":"We need to input the cross-platform RAM system!","LicenseInformationOrigin":0},{"PackageId":"National Usability Manager","PackageVersion":"0.3.8","PackageProjectUrl":"http://myriam.name","License":"quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!","LicenseInformationOrigin":1},{"PackageId":"Lead Tactics Executive","PackageVersion":"6.2.9","PackageProjectUrl":"https://maxwell.name","License":"I\u0027ll transmit the online TCP driver, that should driver the TCP driver!","LicenseInformationOrigin":0},{"PackageId":"Principal Accountability Facilitator","PackageVersion":"2.1.4","PackageProjectUrl":"https://dillan.net","License":"Use the back-end XML protocol, then you can reboot the back-end protocol!","LicenseInformationOrigin":0},{"PackageId":"Internal Quality Director","PackageVersion":"5.3.0","PackageProjectUrl":"http://hyman.com","License":"Use the redundant AI alarm, then you can transmit the redundant alarm!","LicenseInformationOrigin":1},{"PackageId":"Chief Web Specialist","PackageVersion":"7.4.0","PackageProjectUrl":"http://keely.net","License":"navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!","LicenseInformationOrigin":1},{"PackageId":"Lead Accountability Orchestrator","PackageVersion":"2.6.2","PackageProjectUrl":"https://tre.org","License":"You can\u0027t connect the panel without bypassing the bluetooth SSL panel!","LicenseInformationOrigin":0},{"PackageId":"International Metrics Officer","PackageVersion":"3.7.1","PackageProjectUrl":"https://myrl.info","License":"hacking the array won\u0027t do anything, we need to back up the haptic IB array!","LicenseInformationOrigin":0},{"PackageId":"Forward Data Administrator","PackageVersion":"9.0.6","PackageProjectUrl":"https://michelle.org","License":"Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!","LicenseInformationOrigin":1},{"PackageId":"Regional Data Strategist","PackageVersion":"3.5.3","PackageProjectUrl":"https://sedrick.biz","License":"I\u0027ll transmit the optical USB program, that should program the USB program!","LicenseInformationOrigin":1},{"PackageId":"Regional Accountability Assistant","PackageVersion":"2.7.5","PackageProjectUrl":"http://barney.com","License":"You can\u0027t program the alarm without overriding the cross-platform RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Product Integration Officer","PackageVersion":"3.3.6","PackageProjectUrl":"https://howard.org","License":"Use the primary PNG matrix, then you can copy the primary matrix!","LicenseInformationOrigin":1},{"PackageId":"Customer Group Technician","PackageVersion":"9.8.2","PackageProjectUrl":"https://sandrine.name","License":"programming the system won\u0027t do anything, we need to synthesize the primary AGP system!","LicenseInformationOrigin":1},{"PackageId":"Lead Factors Planner","PackageVersion":"1.0.4","PackageProjectUrl":"http://mikayla.com","License":"You can\u0027t compress the driver without calculating the back-end SQL driver!","LicenseInformationOrigin":0},{"PackageId":"Corporate Data Assistant","PackageVersion":"7.9.8","PackageProjectUrl":"http://arlene.biz","License":"Try to generate the SMTP feed, maybe it will generate the online feed!","LicenseInformationOrigin":1},{"PackageId":"Human Functionality Associate","PackageVersion":"9.4.1","PackageProjectUrl":"https://bonita.biz","License":"I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Research Representative","PackageVersion":"1.6.9","PackageProjectUrl":"https://carol.org","License":"You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!","LicenseInformationOrigin":1},{"PackageId":"Internal Accounts Specialist","PackageVersion":"4.9.2","PackageProjectUrl":"https://wilfredo.biz","License":"The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!","LicenseInformationOrigin":1},{"PackageId":"Corporate Program Facilitator","PackageVersion":"2.7.4","PackageProjectUrl":"https://vida.net","License":"I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!","LicenseInformationOrigin":1},{"PackageId":"Investor Division Planner","PackageVersion":"1.4.6","PackageProjectUrl":"https://evelyn.info","License":"I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!","LicenseInformationOrigin":1},{"PackageId":"National Response Planner","PackageVersion":"7.8.0","PackageProjectUrl":"https://hertha.org","License":"Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!","LicenseInformationOrigin":1},{"PackageId":"National Accountability Administrator","PackageVersion":"5.9.9","PackageProjectUrl":"http://julio.info","License":"Use the neural IB matrix, then you can generate the neural matrix!","LicenseInformationOrigin":0},{"PackageId":"Legacy Branding Orchestrator","PackageVersion":"0.2.6","PackageProjectUrl":"https://keeley.net","License":"We need to bypass the back-end FTP alarm!","LicenseInformationOrigin":2},{"PackageId":"Product Infrastructure Orchestrator","PackageVersion":"5.0.6","PackageProjectUrl":"http://forrest.com","License":"If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!","LicenseInformationOrigin":2},{"PackageId":"Forward Infrastructure Specialist","PackageVersion":"6.1.6","PackageProjectUrl":"http://melisa.com","License":"quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!","LicenseInformationOrigin":2},{"PackageId":"District Directives Analyst","PackageVersion":"9.3.0","PackageProjectUrl":"http://bridie.biz","License":"Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!","LicenseInformationOrigin":2},{"PackageId":"Future Group Director","PackageVersion":"2.3.4","PackageProjectUrl":"https://luna.info","License":"I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!","LicenseInformationOrigin":0},{"PackageId":"Regional Branding Facilitator","PackageVersion":"0.3.9","PackageProjectUrl":"https://otilia.info","License":"We need to connect the optical SQL capacitor!","LicenseInformationOrigin":1},{"PackageId":"Global Configuration Planner","PackageVersion":"2.6.3","PackageProjectUrl":"http://willis.name","License":"connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Assurance Consultant","PackageVersion":"5.6.2","PackageProjectUrl":"https://eryn.org","License":"Use the digital IB alarm, then you can program the digital alarm!","LicenseInformationOrigin":1},{"PackageId":"District Interactions Developer","PackageVersion":"9.9.4","PackageProjectUrl":"http://adrien.biz","License":"I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!","LicenseInformationOrigin":1},{"PackageId":"Human Optimization Director","PackageVersion":"0.1.8","PackageProjectUrl":"https://crystal.info","License":"We need to transmit the back-end PCI panel!","LicenseInformationOrigin":2},{"PackageId":"Principal Solutions Supervisor","PackageVersion":"6.1.2","PackageProjectUrl":"https://ari.biz","License":"programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!","LicenseInformationOrigin":2},{"PackageId":"Product Paradigm Director","PackageVersion":"6.3.8","PackageProjectUrl":"http://kiera.org","License":"Use the wireless THX array, then you can connect the wireless array!","LicenseInformationOrigin":0},{"PackageId":"Senior Group Designer","PackageVersion":"3.0.6","PackageProjectUrl":"http://keyshawn.net","License":"We need to copy the cross-platform SAS panel!","LicenseInformationOrigin":1},{"PackageId":"Product Intranet Assistant","PackageVersion":"2.8.1","PackageProjectUrl":"https://chance.name","License":"You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Product Security Developer","PackageVersion":"4.4.5","PackageProjectUrl":"https://maida.org","License":"parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!","LicenseInformationOrigin":2},{"PackageId":"Corporate Paradigm Administrator","PackageVersion":"5.5.2","PackageProjectUrl":"http://trace.net","License":"Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!","LicenseInformationOrigin":1},{"PackageId":"Product Interactions Executive","PackageVersion":"5.4.8","PackageProjectUrl":"https://maye.org","License":"We need to override the auxiliary AGP firewall!","LicenseInformationOrigin":1},{"PackageId":"Central Creative Analyst","PackageVersion":"3.6.4","PackageProjectUrl":"http://abigayle.net","License":"programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!","LicenseInformationOrigin":0},{"PackageId":"Internal Division Assistant","PackageVersion":"0.9.4","PackageProjectUrl":"http://emerson.info","License":"The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Brand Officer","PackageVersion":"1.1.5","PackageProjectUrl":"https://shayne.name","License":"If we transmit the application, we can get to the SAS application through the wireless SAS application!","LicenseInformationOrigin":2},{"PackageId":"Global Usability Manager","PackageVersion":"6.7.0","PackageProjectUrl":"https://alexandra.info","License":"We need to parse the mobile SCSI protocol!","LicenseInformationOrigin":1},{"PackageId":"Chief Markets Agent","PackageVersion":"8.8.4","PackageProjectUrl":"http://dayana.name","License":"I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!","LicenseInformationOrigin":2},{"PackageId":"Human Configuration Assistant","PackageVersion":"0.1.1","PackageProjectUrl":"https://aurelia.info","License":"We need to hack the mobile SMS circuit!","LicenseInformationOrigin":1},{"PackageId":"Direct Group Consultant","PackageVersion":"8.8.0","PackageProjectUrl":"https://alana.org","License":"I\u0027ll index the neural SDD bus, that should bus the SDD bus!","LicenseInformationOrigin":2},{"PackageId":"Senior Implementation Associate","PackageVersion":"8.2.9","PackageProjectUrl":"http://roderick.org","License":"synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!","LicenseInformationOrigin":2},{"PackageId":"Legacy Research Producer","PackageVersion":"2.8.3","PackageProjectUrl":"https://sonia.org","License":"backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!","LicenseInformationOrigin":1},{"PackageId":"Legacy Accountability Agent","PackageVersion":"5.8.2","PackageProjectUrl":"http://chelsea.com","License":"I\u0027ll compress the auxiliary XSS port, that should port the XSS port!","LicenseInformationOrigin":2},{"PackageId":"District Group Associate","PackageVersion":"4.0.1","PackageProjectUrl":"https://noemi.info","License":"We need to transmit the redundant TCP panel!","LicenseInformationOrigin":0},{"PackageId":"Future Factors Representative","PackageVersion":"9.2.0","PackageProjectUrl":"https://jazmin.org","License":"Use the solid state SDD application, then you can navigate the solid state application!","LicenseInformationOrigin":1},{"PackageId":"Customer Applications Developer","PackageVersion":"5.6.1","PackageProjectUrl":"http://kiley.org","License":"We need to connect the bluetooth RAM application!","LicenseInformationOrigin":2},{"PackageId":"Direct Data Consultant","PackageVersion":"6.3.3","PackageProjectUrl":"https://heath.name","License":"Use the haptic XML driver, then you can index the haptic driver!","LicenseInformationOrigin":1},{"PackageId":"Internal Division Agent","PackageVersion":"2.4.2","PackageProjectUrl":"http://armani.name","License":"Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!","LicenseInformationOrigin":0},{"PackageId":"Direct Research Assistant","PackageVersion":"5.9.7","PackageProjectUrl":"http://danial.org","License":"Try to connect the TCP circuit, maybe it will connect the back-end circuit!","LicenseInformationOrigin":2},{"PackageId":"Legacy Optimization Assistant","PackageVersion":"8.8.2","PackageProjectUrl":"https://scot.info","License":"The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Administrator","PackageVersion":"9.2.8","PackageProjectUrl":"https://brett.biz","License":"The FTP card is down, index the digital card so we can index the FTP card!","LicenseInformationOrigin":1},{"PackageId":"Human Directives Specialist","PackageVersion":"4.3.4","PackageProjectUrl":"http://tabitha.name","License":"I\u0027ll reboot the virtual CSS program, that should program the CSS program!","LicenseInformationOrigin":1},{"PackageId":"Forward Web Assistant","PackageVersion":"3.5.5","PackageProjectUrl":"https://tremayne.org","License":"The COM array is down, calculate the open-source array so we can calculate the COM array!","LicenseInformationOrigin":0},{"PackageId":"Product Operations Liaison","PackageVersion":"1.1.0","PackageProjectUrl":"http://tabitha.com","License":"You can\u0027t generate the array without quantifying the open-source PCI array!","LicenseInformationOrigin":0},{"PackageId":"Legacy Accountability Coordinator","PackageVersion":"5.5.0","PackageProjectUrl":"http://erling.name","License":"Try to back up the COM driver, maybe it will back up the bluetooth driver!","LicenseInformationOrigin":0},{"PackageId":"Product Marketing Strategist","PackageVersion":"0.1.7","PackageProjectUrl":"http://melany.name","License":"I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!","LicenseInformationOrigin":1},{"PackageId":"Corporate Intranet Analyst","PackageVersion":"0.9.0","PackageProjectUrl":"https://creola.info","License":"indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!","LicenseInformationOrigin":0},{"PackageId":"Central Security Representative","PackageVersion":"4.3.4","PackageProjectUrl":"https://velva.name","License":"The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!","LicenseInformationOrigin":0},{"PackageId":"Senior Brand Analyst","PackageVersion":"2.5.0","PackageProjectUrl":"http://danial.name","License":"overriding the interface won\u0027t do anything, we need to override the virtual THX interface!","LicenseInformationOrigin":0},{"PackageId":"Internal Directives Designer","PackageVersion":"0.4.8","PackageProjectUrl":"http://mable.net","License":"Use the virtual AI capacitor, then you can navigate the virtual capacitor!","LicenseInformationOrigin":0},{"PackageId":"Dynamic Division Consultant","PackageVersion":"4.8.7","PackageProjectUrl":"https://jack.net","License":"The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!","LicenseInformationOrigin":0},{"PackageId":"Central Data Consultant","PackageVersion":"6.5.0","PackageProjectUrl":"https://delilah.org","License":"generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!","LicenseInformationOrigin":1},{"PackageId":"Regional Tactics Technician","PackageVersion":"7.6.7","PackageProjectUrl":"http://alvena.net","License":"If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!","LicenseInformationOrigin":0},{"PackageId":"Legacy Implementation Assistant","PackageVersion":"2.1.6","PackageProjectUrl":"https://liana.net","License":"Use the auxiliary RSS sensor, then you can program the auxiliary sensor!","LicenseInformationOrigin":2},{"PackageId":"Customer Functionality Manager","PackageVersion":"5.9.0","PackageProjectUrl":"https://mariane.info","License":"The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!","LicenseInformationOrigin":1},{"PackageId":"Senior Operations Engineer","PackageVersion":"3.1.8","PackageProjectUrl":"http://montana.name","License":"If we program the array, we can get to the JBOD array through the primary JBOD array!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt new file mode 100644 index 00000000..c0ef0595 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0},{"PackageId":"National Assurance Representative","PackageVersion":"2.0.7","PackageProjectUrl":"http://kelley.com","License":"transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!","LicenseInformationOrigin":0},{"PackageId":"National Tactics Liaison","PackageVersion":"6.8.9","PackageProjectUrl":"http://jillian.net","License":"hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!","LicenseInformationOrigin":1},{"PackageId":"Global Implementation Engineer","PackageVersion":"6.0.7","PackageProjectUrl":"http://antonette.org","License":"I\u0027ll calculate the 1080p HDD system, that should system the HDD system!","LicenseInformationOrigin":0},{"PackageId":"Forward Integration Executive","PackageVersion":"6.6.8","PackageProjectUrl":"http://grayce.info","License":"You can\u0027t index the protocol without indexing the open-source XML protocol!","LicenseInformationOrigin":0},{"PackageId":"Customer Infrastructure Planner","PackageVersion":"6.6.0","PackageProjectUrl":"https://laurie.biz","License":"If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!","LicenseInformationOrigin":1},{"PackageId":"Dynamic Program Administrator","PackageVersion":"9.8.6","PackageProjectUrl":"https://malcolm.net","License":"I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!","LicenseInformationOrigin":2},{"PackageId":"Customer Infrastructure Liaison","PackageVersion":"0.8.0","PackageProjectUrl":"https://otho.biz","License":"Use the haptic RSS hard drive, then you can back up the haptic hard drive!","LicenseInformationOrigin":2},{"PackageId":"Customer Research Associate","PackageVersion":"4.6.5","PackageProjectUrl":"http://wilmer.name","License":"I\u0027ll navigate the neural SAS card, that should card the SAS card!","LicenseInformationOrigin":0},{"PackageId":"Central Creative Manager","PackageVersion":"8.4.8","PackageProjectUrl":"https://carleton.info","License":"Use the cross-platform THX system, then you can generate the cross-platform system!","LicenseInformationOrigin":0},{"PackageId":"Internal Operations Executive","PackageVersion":"1.8.1","PackageProjectUrl":"http://angel.info","License":"We need to back up the solid state XML application!","LicenseInformationOrigin":2},{"PackageId":"Corporate Marketing Associate","PackageVersion":"3.3.2","PackageProjectUrl":"http://nash.name","License":"I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!","LicenseInformationOrigin":0},{"PackageId":"District Intranet Strategist","PackageVersion":"2.2.2","PackageProjectUrl":"http://everett.name","License":"We need to reboot the virtual RSS alarm!","LicenseInformationOrigin":2},{"PackageId":"Customer Assurance Officer","PackageVersion":"0.3.1","PackageProjectUrl":"https://kyla.biz","License":"Try to override the EXE program, maybe it will override the mobile program!","LicenseInformationOrigin":1},{"PackageId":"National Tactics Architect","PackageVersion":"6.7.8","PackageProjectUrl":"https://valentina.net","License":"The PNG protocol is down, index the digital protocol so we can index the PNG protocol!","LicenseInformationOrigin":2},{"PackageId":"Chief Integration Architect","PackageVersion":"1.6.8","PackageProjectUrl":"https://davion.net","License":"Try to override the TCP firewall, maybe it will override the solid state firewall!","LicenseInformationOrigin":1}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt new file mode 100644 index 00000000..3396edaa --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(False,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt @@ -0,0 +1 @@ +[{"PackageId":"Legacy Metrics Planner","PackageVersion":"9.5.0","PackageProjectUrl":"http://madisyn.name","License":"I\u0027ll override the haptic AGP feed, that should feed the AGP feed!","LicenseInformationOrigin":2},{"PackageId":"International Mobility Technician","PackageVersion":"3.7.5","PackageProjectUrl":"https://jayne.name","License":"I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!","LicenseInformationOrigin":0},{"PackageId":"Principal Markets Executive","PackageVersion":"4.2.2","PackageProjectUrl":"https://bettie.com","License":"Try to generate the EXE array, maybe it will generate the mobile array!","LicenseInformationOrigin":2},{"PackageId":"Future Identity Specialist","PackageVersion":"4.7.4","PackageProjectUrl":"http://della.biz","License":"If we back up the driver, we can get to the AI driver through the bluetooth AI driver!","LicenseInformationOrigin":0},{"PackageId":"Forward Functionality Designer","PackageVersion":"5.5.7","PackageProjectUrl":"https://jasen.biz","License":"Use the redundant AGP monitor, then you can generate the redundant monitor!","LicenseInformationOrigin":0}] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt new file mode 100644 index 00000000..9b372a83 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt @@ -0,0 +1,26 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt new file mode 100644 index 00000000..ab7b48bb --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt @@ -0,0 +1,677 @@ +[ + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt new file mode 100644 index 00000000..897f720f --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt @@ -0,0 +1,98 @@ +[ + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt new file mode 100644 index 00000000..90e9bfeb --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt @@ -0,0 +1,168 @@ +[ + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt new file mode 100644 index 00000000..699d703e --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt @@ -0,0 +1,726 @@ +[ + { + "PackageId": "Central Data Consultant", + "PackageVersion": "6.5.0", + "PackageProjectUrl": "https://delilah.org", + "License": "generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Creative Analyst", + "PackageVersion": "3.6.4", + "PackageProjectUrl": "http://abigayle.net", + "License": "programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Optimization Director", + "PackageVersion": "0.1.8", + "PackageProjectUrl": "https://crystal.info", + "License": "We need to transmit the back-end PCI panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Infrastructure Specialist", + "PackageVersion": "6.1.6", + "PackageProjectUrl": "http://melisa.com", + "License": "quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Research Assistant", + "PackageVersion": "5.9.7", + "PackageProjectUrl": "http://danial.org", + "License": "Try to connect the TCP circuit, maybe it will connect the back-end circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Division Agent", + "PackageVersion": "2.4.2", + "PackageProjectUrl": "http://armani.name", + "License": "Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Data Assistant", + "PackageVersion": "7.9.8", + "PackageProjectUrl": "http://arlene.biz", + "License": "Try to generate the SMTP feed, maybe it will generate the online feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Directives Specialist", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "http://tabitha.name", + "License": "I\u0027ll reboot the virtual CSS program, that should program the CSS program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Accountability Coordinator", + "PackageVersion": "5.5.0", + "PackageProjectUrl": "http://erling.name", + "License": "Try to back up the COM driver, maybe it will back up the bluetooth driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Marketing Strategist", + "PackageVersion": "0.1.7", + "PackageProjectUrl": "http://melany.name", + "License": "I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Directives Analyst", + "PackageVersion": "9.3.0", + "PackageProjectUrl": "http://bridie.biz", + "License": "Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Tactics Technician", + "PackageVersion": "7.6.7", + "PackageProjectUrl": "http://alvena.net", + "License": "If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Intranet Analyst", + "PackageVersion": "0.9.0", + "PackageProjectUrl": "https://creola.info", + "License": "indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Infrastructure Orchestrator", + "PackageVersion": "5.0.6", + "PackageProjectUrl": "http://forrest.com", + "License": "If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Program Facilitator", + "PackageVersion": "2.7.4", + "PackageProjectUrl": "https://vida.net", + "License": "I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Metrics Officer", + "PackageVersion": "3.7.1", + "PackageProjectUrl": "https://myrl.info", + "License": "hacking the array won\u0027t do anything, we need to back up the haptic IB array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Markets Agent", + "PackageVersion": "8.8.4", + "PackageProjectUrl": "http://dayana.name", + "License": "I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Data Administrator", + "PackageVersion": "9.0.6", + "PackageProjectUrl": "https://michelle.org", + "License": "Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Applications Developer", + "PackageVersion": "5.6.1", + "PackageProjectUrl": "http://kiley.org", + "License": "We need to connect the bluetooth RAM application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Analyst", + "PackageVersion": "2.5.0", + "PackageProjectUrl": "http://danial.name", + "License": "overriding the interface won\u0027t do anything, we need to override the virtual THX interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Interactions Analyst", + "PackageVersion": "3.0.8", + "PackageProjectUrl": "http://logan.net", + "License": "You can\u0027t parse the hard drive without generating the digital AGP hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Operations Engineer", + "PackageVersion": "3.1.8", + "PackageProjectUrl": "http://montana.name", + "License": "If we program the array, we can get to the JBOD array through the primary JBOD array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Factors Representative", + "PackageVersion": "9.2.0", + "PackageProjectUrl": "https://jazmin.org", + "License": "Use the solid state SDD application, then you can navigate the solid state application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Group Technician", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://sandrine.name", + "License": "programming the system won\u0027t do anything, we need to synthesize the primary AGP system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accountability Assistant", + "PackageVersion": "2.7.5", + "PackageProjectUrl": "http://barney.com", + "License": "You can\u0027t program the alarm without overriding the cross-platform RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Optimization Assistant", + "PackageVersion": "8.8.2", + "PackageProjectUrl": "https://scot.info", + "License": "The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Paradigm Director", + "PackageVersion": "6.3.8", + "PackageProjectUrl": "http://kiera.org", + "License": "Use the wireless THX array, then you can connect the wireless array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Web Assistant", + "PackageVersion": "3.5.5", + "PackageProjectUrl": "https://tremayne.org", + "License": "The COM array is down, calculate the open-source array so we can calculate the COM array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Factors Planner", + "PackageVersion": "1.0.4", + "PackageProjectUrl": "http://mikayla.com", + "License": "You can\u0027t compress the driver without calculating the back-end SQL driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Data Strategist", + "PackageVersion": "3.5.3", + "PackageProjectUrl": "https://sedrick.biz", + "License": "I\u0027ll transmit the optical USB program, that should program the USB program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Accountability Administrator", + "PackageVersion": "5.9.9", + "PackageProjectUrl": "http://julio.info", + "License": "Use the neural IB matrix, then you can generate the neural matrix!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Tactics Executive", + "PackageVersion": "6.2.9", + "PackageProjectUrl": "https://maxwell.name", + "License": "I\u0027ll transmit the online TCP driver, that should driver the TCP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Research Producer", + "PackageVersion": "2.8.3", + "PackageProjectUrl": "https://sonia.org", + "License": "backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Division Consultant", + "PackageVersion": "4.8.7", + "PackageProjectUrl": "https://jack.net", + "License": "The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Data Consultant", + "PackageVersion": "6.3.3", + "PackageProjectUrl": "https://heath.name", + "License": "Use the haptic XML driver, then you can index the haptic driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Metrics Analyst", + "PackageVersion": "4.6.0", + "PackageProjectUrl": "http://nathaniel.name", + "License": "overriding the interface won\u0027t do anything, we need to connect the digital GB interface!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Interactions Executive", + "PackageVersion": "5.4.8", + "PackageProjectUrl": "https://maye.org", + "License": "We need to override the auxiliary AGP firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Assurance Consultant", + "PackageVersion": "5.6.2", + "PackageProjectUrl": "https://eryn.org", + "License": "Use the digital IB alarm, then you can program the digital alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Factors Assistant", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://ernestine.net", + "License": "Try to compress the SMS bus, maybe it will compress the bluetooth bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Tactics Administrator", + "PackageVersion": "9.2.8", + "PackageProjectUrl": "https://brett.biz", + "License": "The FTP card is down, index the digital card so we can index the FTP card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Accountability Specialist", + "PackageVersion": "0.8.7", + "PackageProjectUrl": "http://kristina.info", + "License": "We need to input the cross-platform RAM system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Directives Executive", + "PackageVersion": "9.4.9", + "PackageProjectUrl": "http://jedediah.net", + "License": "Try to back up the THX interface, maybe it will back up the auxiliary interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Operations Liaison", + "PackageVersion": "1.1.0", + "PackageProjectUrl": "http://tabitha.com", + "License": "You can\u0027t generate the array without quantifying the open-source PCI array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Functionality Associate", + "PackageVersion": "9.4.1", + "PackageProjectUrl": "https://bonita.biz", + "License": "I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Group Designer", + "PackageVersion": "3.0.6", + "PackageProjectUrl": "http://keyshawn.net", + "License": "We need to copy the cross-platform SAS panel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Branding Facilitator", + "PackageVersion": "0.3.9", + "PackageProjectUrl": "https://otilia.info", + "License": "We need to connect the optical SQL capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Response Planner", + "PackageVersion": "7.8.0", + "PackageProjectUrl": "https://hertha.org", + "License": "Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Research Representative", + "PackageVersion": "1.6.9", + "PackageProjectUrl": "https://carol.org", + "License": "You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Implementation Associate", + "PackageVersion": "8.2.9", + "PackageProjectUrl": "http://roderick.org", + "License": "synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Central Security Representative", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "https://velva.name", + "License": "The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Accountability Agent", + "PackageVersion": "5.8.2", + "PackageProjectUrl": "http://chelsea.com", + "License": "I\u0027ll compress the auxiliary XSS port, that should port the XSS port!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Accountability Orchestrator", + "PackageVersion": "2.6.2", + "PackageProjectUrl": "https://tre.org", + "License": "You can\u0027t connect the panel without bypassing the bluetooth SSL panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Group Director", + "PackageVersion": "2.3.4", + "PackageProjectUrl": "https://luna.info", + "License": "I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Brand Officer", + "PackageVersion": "1.1.5", + "PackageProjectUrl": "https://shayne.name", + "License": "If we transmit the application, we can get to the SAS application through the wireless SAS application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Quality Director", + "PackageVersion": "5.3.0", + "PackageProjectUrl": "http://hyman.com", + "License": "Use the redundant AI alarm, then you can transmit the redundant alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Division Planner", + "PackageVersion": "1.4.6", + "PackageProjectUrl": "https://evelyn.info", + "License": "I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Implementation Assistant", + "PackageVersion": "2.1.6", + "PackageProjectUrl": "https://liana.net", + "License": "Use the auxiliary RSS sensor, then you can program the auxiliary sensor!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Interactions Developer", + "PackageVersion": "9.9.4", + "PackageProjectUrl": "http://adrien.biz", + "License": "I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Accounts Specialist", + "PackageVersion": "4.9.2", + "PackageProjectUrl": "https://wilfredo.biz", + "License": "The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Functionality Manager", + "PackageVersion": "5.9.0", + "PackageProjectUrl": "https://mariane.info", + "License": "The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Accountability Strategist", + "PackageVersion": "0.5.2", + "PackageProjectUrl": "https://stuart.com", + "License": "You can\u0027t parse the firewall without navigating the solid state ADP firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Directives Designer", + "PackageVersion": "0.4.8", + "PackageProjectUrl": "http://mable.net", + "License": "Use the virtual AI capacitor, then you can navigate the virtual capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Group Consultant", + "PackageVersion": "8.8.0", + "PackageProjectUrl": "https://alana.org", + "License": "I\u0027ll index the neural SDD bus, that should bus the SDD bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Paradigm Administrator", + "PackageVersion": "5.5.2", + "PackageProjectUrl": "http://trace.net", + "License": "Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Accountability Facilitator", + "PackageVersion": "2.1.4", + "PackageProjectUrl": "https://dillan.net", + "License": "Use the back-end XML protocol, then you can reboot the back-end protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Intranet Assistant", + "PackageVersion": "2.8.1", + "PackageProjectUrl": "https://chance.name", + "License": "You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Division Assistant", + "PackageVersion": "0.9.4", + "PackageProjectUrl": "http://emerson.info", + "License": "The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Usability Manager", + "PackageVersion": "0.3.8", + "PackageProjectUrl": "http://myriam.name", + "License": "quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Security Developer", + "PackageVersion": "4.4.5", + "PackageProjectUrl": "https://maida.org", + "License": "parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Solutions Supervisor", + "PackageVersion": "6.1.2", + "PackageProjectUrl": "https://ari.biz", + "License": "programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Group Associate", + "PackageVersion": "4.0.1", + "PackageProjectUrl": "https://noemi.info", + "License": "We need to transmit the redundant TCP panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Intranet Strategist", + "PackageVersion": "9.7.0", + "PackageProjectUrl": "https://john.name", + "License": "We need to copy the redundant JSON transmitter!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Branding Orchestrator", + "PackageVersion": "0.2.6", + "PackageProjectUrl": "https://keeley.net", + "License": "We need to bypass the back-end FTP alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Usability Representative", + "PackageVersion": "9.1.3", + "PackageProjectUrl": "https://nelson.com", + "License": "We need to transmit the bluetooth FTP feed!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Integration Officer", + "PackageVersion": "3.3.6", + "PackageProjectUrl": "https://howard.org", + "License": "Use the primary PNG matrix, then you can copy the primary matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Web Specialist", + "PackageVersion": "7.4.0", + "PackageProjectUrl": "http://keely.net", + "License": "navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Configuration Assistant", + "PackageVersion": "0.1.1", + "PackageProjectUrl": "https://aurelia.info", + "License": "We need to hack the mobile SMS circuit!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Group Manager", + "PackageVersion": "8.0.4", + "PackageProjectUrl": "https://luisa.biz", + "License": "The RAM panel is down, transmit the online panel so we can transmit the RAM panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Configuration Planner", + "PackageVersion": "2.6.3", + "PackageProjectUrl": "http://willis.name", + "License": "connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Usability Manager", + "PackageVersion": "6.7.0", + "PackageProjectUrl": "https://alexandra.info", + "License": "We need to parse the mobile SCSI protocol!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt new file mode 100644 index 00000000..e1adaed4 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt @@ -0,0 +1,1377 @@ +[ + { + "PackageId": "Dynamic Division Consultant", + "PackageVersion": "4.8.7", + "PackageProjectUrl": "https://jack.net", + "License": "The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Paradigm Director", + "PackageVersion": "6.3.8", + "PackageProjectUrl": "http://kiera.org", + "License": "Use the wireless THX array, then you can connect the wireless array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Infrastructure Orchestrator", + "PackageVersion": "5.0.6", + "PackageProjectUrl": "http://forrest.com", + "License": "If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Data Assistant", + "PackageVersion": "7.9.8", + "PackageProjectUrl": "http://arlene.biz", + "License": "Try to generate the SMTP feed, maybe it will generate the online feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Applications Developer", + "PackageVersion": "5.6.1", + "PackageProjectUrl": "http://kiley.org", + "License": "We need to connect the bluetooth RAM application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Group Associate", + "PackageVersion": "4.0.1", + "PackageProjectUrl": "https://noemi.info", + "License": "We need to transmit the redundant TCP panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Accountability Facilitator", + "PackageVersion": "2.1.4", + "PackageProjectUrl": "https://dillan.net", + "License": "Use the back-end XML protocol, then you can reboot the back-end protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Research Assistant", + "PackageVersion": "5.9.7", + "PackageProjectUrl": "http://danial.org", + "License": "Try to connect the TCP circuit, maybe it will connect the back-end circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Web Assistant", + "PackageVersion": "3.5.5", + "PackageProjectUrl": "https://tremayne.org", + "License": "The COM array is down, calculate the open-source array so we can calculate the COM array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Operations Liaison", + "PackageVersion": "1.1.0", + "PackageProjectUrl": "http://tabitha.com", + "License": "You can\u0027t generate the array without quantifying the open-source PCI array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Functionality Associate", + "PackageVersion": "9.4.1", + "PackageProjectUrl": "https://bonita.biz", + "License": "I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Data Consultant", + "PackageVersion": "6.5.0", + "PackageProjectUrl": "https://delilah.org", + "License": "generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Group Technician", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://sandrine.name", + "License": "programming the system won\u0027t do anything, we need to synthesize the primary AGP system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Accountability Orchestrator", + "PackageVersion": "2.6.2", + "PackageProjectUrl": "https://tre.org", + "License": "You can\u0027t connect the panel without bypassing the bluetooth SSL panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Directives Specialist", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "http://tabitha.name", + "License": "I\u0027ll reboot the virtual CSS program, that should program the CSS program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Usability Representative", + "PackageVersion": "9.1.3", + "PackageProjectUrl": "https://nelson.com", + "License": "We need to transmit the bluetooth FTP feed!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Factors Planner", + "PackageVersion": "1.0.4", + "PackageProjectUrl": "http://mikayla.com", + "License": "You can\u0027t compress the driver without calculating the back-end SQL driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Intranet Assistant", + "PackageVersion": "2.8.1", + "PackageProjectUrl": "https://chance.name", + "License": "You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Intranet Strategist", + "PackageVersion": "9.7.0", + "PackageProjectUrl": "https://john.name", + "License": "We need to copy the redundant JSON transmitter!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Implementation Associate", + "PackageVersion": "8.2.9", + "PackageProjectUrl": "http://roderick.org", + "License": "synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Intranet Analyst", + "PackageVersion": "0.9.0", + "PackageProjectUrl": "https://creola.info", + "License": "indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Operations Engineer", + "PackageVersion": "3.1.8", + "PackageProjectUrl": "http://montana.name", + "License": "If we program the array, we can get to the JBOD array through the primary JBOD array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Configuration Assistant", + "PackageVersion": "0.1.1", + "PackageProjectUrl": "https://aurelia.info", + "License": "We need to hack the mobile SMS circuit!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Directives Executive", + "PackageVersion": "9.4.9", + "PackageProjectUrl": "http://jedediah.net", + "License": "Try to back up the THX interface, maybe it will back up the auxiliary interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Branding Orchestrator", + "PackageVersion": "0.2.6", + "PackageProjectUrl": "https://keeley.net", + "License": "We need to bypass the back-end FTP alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Factors Assistant", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://ernestine.net", + "License": "Try to compress the SMS bus, maybe it will compress the bluetooth bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Web Specialist", + "PackageVersion": "7.4.0", + "PackageProjectUrl": "http://keely.net", + "License": "navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Division Assistant", + "PackageVersion": "0.9.4", + "PackageProjectUrl": "http://emerson.info", + "License": "The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Brand Analyst", + "PackageVersion": "2.5.0", + "PackageProjectUrl": "http://danial.name", + "License": "overriding the interface won\u0027t do anything, we need to override the virtual THX interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Configuration Planner", + "PackageVersion": "2.6.3", + "PackageProjectUrl": "http://willis.name", + "License": "connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Branding Facilitator", + "PackageVersion": "0.3.9", + "PackageProjectUrl": "https://otilia.info", + "License": "We need to connect the optical SQL capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Marketing Strategist", + "PackageVersion": "0.1.7", + "PackageProjectUrl": "http://melany.name", + "License": "I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Future Factors Representative", + "PackageVersion": "9.2.0", + "PackageProjectUrl": "https://jazmin.org", + "License": "Use the solid state SDD application, then you can navigate the solid state application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Markets Agent", + "PackageVersion": "8.8.4", + "PackageProjectUrl": "http://dayana.name", + "License": "I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Optimization Assistant", + "PackageVersion": "8.8.2", + "PackageProjectUrl": "https://scot.info", + "License": "The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Directives Analyst", + "PackageVersion": "9.3.0", + "PackageProjectUrl": "http://bridie.biz", + "License": "Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Response Planner", + "PackageVersion": "7.8.0", + "PackageProjectUrl": "https://hertha.org", + "License": "Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Accountability Strategist", + "PackageVersion": "0.5.2", + "PackageProjectUrl": "https://stuart.com", + "License": "You can\u0027t parse the firewall without navigating the solid state ADP firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Data Strategist", + "PackageVersion": "3.5.3", + "PackageProjectUrl": "https://sedrick.biz", + "License": "I\u0027ll transmit the optical USB program, that should program the USB program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Administrator", + "PackageVersion": "9.2.8", + "PackageProjectUrl": "https://brett.biz", + "License": "The FTP card is down, index the digital card so we can index the FTP card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Accountability Specialist", + "PackageVersion": "0.8.7", + "PackageProjectUrl": "http://kristina.info", + "License": "We need to input the cross-platform RAM system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Integration Officer", + "PackageVersion": "3.3.6", + "PackageProjectUrl": "https://howard.org", + "License": "Use the primary PNG matrix, then you can copy the primary matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Accountability Coordinator", + "PackageVersion": "5.5.0", + "PackageProjectUrl": "http://erling.name", + "License": "Try to back up the COM driver, maybe it will back up the bluetooth driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Security Developer", + "PackageVersion": "4.4.5", + "PackageProjectUrl": "https://maida.org", + "License": "parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "International Metrics Officer", + "PackageVersion": "3.7.1", + "PackageProjectUrl": "https://myrl.info", + "License": "hacking the array won\u0027t do anything, we need to back up the haptic IB array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Infrastructure Specialist", + "PackageVersion": "6.1.6", + "PackageProjectUrl": "http://melisa.com", + "License": "quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Accountability Administrator", + "PackageVersion": "5.9.9", + "PackageProjectUrl": "http://julio.info", + "License": "Use the neural IB matrix, then you can generate the neural matrix!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Group Designer", + "PackageVersion": "3.0.6", + "PackageProjectUrl": "http://keyshawn.net", + "License": "We need to copy the cross-platform SAS panel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Interactions Executive", + "PackageVersion": "5.4.8", + "PackageProjectUrl": "https://maye.org", + "License": "We need to override the auxiliary AGP firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Accounts Specialist", + "PackageVersion": "4.9.2", + "PackageProjectUrl": "https://wilfredo.biz", + "License": "The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Research Representative", + "PackageVersion": "1.6.9", + "PackageProjectUrl": "https://carol.org", + "License": "You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Data Administrator", + "PackageVersion": "9.0.6", + "PackageProjectUrl": "https://michelle.org", + "License": "Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Implementation Assistant", + "PackageVersion": "2.1.6", + "PackageProjectUrl": "https://liana.net", + "License": "Use the auxiliary RSS sensor, then you can program the auxiliary sensor!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Metrics Analyst", + "PackageVersion": "4.6.0", + "PackageProjectUrl": "http://nathaniel.name", + "License": "overriding the interface won\u0027t do anything, we need to connect the digital GB interface!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Investor Division Planner", + "PackageVersion": "1.4.6", + "PackageProjectUrl": "https://evelyn.info", + "License": "I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Future Group Director", + "PackageVersion": "2.3.4", + "PackageProjectUrl": "https://luna.info", + "License": "I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Quality Director", + "PackageVersion": "5.3.0", + "PackageProjectUrl": "http://hyman.com", + "License": "Use the redundant AI alarm, then you can transmit the redundant alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Optimization Director", + "PackageVersion": "0.1.8", + "PackageProjectUrl": "https://crystal.info", + "License": "We need to transmit the back-end PCI panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Solutions Supervisor", + "PackageVersion": "6.1.2", + "PackageProjectUrl": "https://ari.biz", + "License": "programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Data Consultant", + "PackageVersion": "6.3.3", + "PackageProjectUrl": "https://heath.name", + "License": "Use the haptic XML driver, then you can index the haptic driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Brand Officer", + "PackageVersion": "1.1.5", + "PackageProjectUrl": "https://shayne.name", + "License": "If we transmit the application, we can get to the SAS application through the wireless SAS application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Paradigm Administrator", + "PackageVersion": "5.5.2", + "PackageProjectUrl": "http://trace.net", + "License": "Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Security Representative", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "https://velva.name", + "License": "The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accountability Assistant", + "PackageVersion": "2.7.5", + "PackageProjectUrl": "http://barney.com", + "License": "You can\u0027t program the alarm without overriding the cross-platform RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Tactics Executive", + "PackageVersion": "6.2.9", + "PackageProjectUrl": "https://maxwell.name", + "License": "I\u0027ll transmit the online TCP driver, that should driver the TCP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Interactions Analyst", + "PackageVersion": "3.0.8", + "PackageProjectUrl": "http://logan.net", + "License": "You can\u0027t parse the hard drive without generating the digital AGP hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Accountability Agent", + "PackageVersion": "5.8.2", + "PackageProjectUrl": "http://chelsea.com", + "License": "I\u0027ll compress the auxiliary XSS port, that should port the XSS port!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Tactics Technician", + "PackageVersion": "7.6.7", + "PackageProjectUrl": "http://alvena.net", + "License": "If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Group Consultant", + "PackageVersion": "8.8.0", + "PackageProjectUrl": "https://alana.org", + "License": "I\u0027ll index the neural SDD bus, that should bus the SDD bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Usability Manager", + "PackageVersion": "6.7.0", + "PackageProjectUrl": "https://alexandra.info", + "License": "We need to parse the mobile SCSI protocol!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Interactions Developer", + "PackageVersion": "9.9.4", + "PackageProjectUrl": "http://adrien.biz", + "License": "I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Functionality Manager", + "PackageVersion": "5.9.0", + "PackageProjectUrl": "https://mariane.info", + "License": "The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Directives Designer", + "PackageVersion": "0.4.8", + "PackageProjectUrl": "http://mable.net", + "License": "Use the virtual AI capacitor, then you can navigate the virtual capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Group Manager", + "PackageVersion": "8.0.4", + "PackageProjectUrl": "https://luisa.biz", + "License": "The RAM panel is down, transmit the online panel so we can transmit the RAM panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Usability Manager", + "PackageVersion": "0.3.8", + "PackageProjectUrl": "http://myriam.name", + "License": "quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Central Creative Analyst", + "PackageVersion": "3.6.4", + "PackageProjectUrl": "http://abigayle.net", + "License": "programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Division Agent", + "PackageVersion": "2.4.2", + "PackageProjectUrl": "http://armani.name", + "License": "Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Program Facilitator", + "PackageVersion": "2.7.4", + "PackageProjectUrl": "https://vida.net", + "License": "I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Assurance Consultant", + "PackageVersion": "5.6.2", + "PackageProjectUrl": "https://eryn.org", + "License": "Use the digital IB alarm, then you can program the digital alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Research Producer", + "PackageVersion": "2.8.3", + "PackageProjectUrl": "https://sonia.org", + "License": "backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt new file mode 100644 index 00000000..1418943f --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt @@ -0,0 +1,798 @@ +[ + { + "PackageId": "Central Data Consultant", + "PackageVersion": "6.5.0", + "PackageProjectUrl": "https://delilah.org", + "License": "generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Interactions Executive", + "PackageVersion": "5.4.8", + "PackageProjectUrl": "https://maye.org", + "License": "We need to override the auxiliary AGP firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Interactions Developer", + "PackageVersion": "9.9.4", + "PackageProjectUrl": "http://adrien.biz", + "License": "I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Infrastructure Orchestrator", + "PackageVersion": "5.0.6", + "PackageProjectUrl": "http://forrest.com", + "License": "If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Research Assistant", + "PackageVersion": "5.9.7", + "PackageProjectUrl": "http://danial.org", + "License": "Try to connect the TCP circuit, maybe it will connect the back-end circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Division Agent", + "PackageVersion": "2.4.2", + "PackageProjectUrl": "http://armani.name", + "License": "Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Factors Planner", + "PackageVersion": "1.0.4", + "PackageProjectUrl": "http://mikayla.com", + "License": "You can\u0027t compress the driver without calculating the back-end SQL driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Directives Specialist", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "http://tabitha.name", + "License": "I\u0027ll reboot the virtual CSS program, that should program the CSS program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Accountability Coordinator", + "PackageVersion": "5.5.0", + "PackageProjectUrl": "http://erling.name", + "License": "Try to back up the COM driver, maybe it will back up the bluetooth driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Marketing Strategist", + "PackageVersion": "0.1.7", + "PackageProjectUrl": "http://melany.name", + "License": "I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Infrastructure Specialist", + "PackageVersion": "6.1.6", + "PackageProjectUrl": "http://melisa.com", + "License": "quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Tactics Technician", + "PackageVersion": "7.6.7", + "PackageProjectUrl": "http://alvena.net", + "License": "If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Branding Orchestrator", + "PackageVersion": "0.2.6", + "PackageProjectUrl": "https://keeley.net", + "License": "We need to bypass the back-end FTP alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Accounts Specialist", + "PackageVersion": "4.9.2", + "PackageProjectUrl": "https://wilfredo.biz", + "License": "The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Web Specialist", + "PackageVersion": "7.4.0", + "PackageProjectUrl": "http://keely.net", + "License": "navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Usability Manager", + "PackageVersion": "6.7.0", + "PackageProjectUrl": "https://alexandra.info", + "License": "We need to parse the mobile SCSI protocol!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "International Metrics Officer", + "PackageVersion": "3.7.1", + "PackageProjectUrl": "https://myrl.info", + "License": "hacking the array won\u0027t do anything, we need to back up the haptic IB array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Applications Developer", + "PackageVersion": "5.6.1", + "PackageProjectUrl": "http://kiley.org", + "License": "We need to connect the bluetooth RAM application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Analyst", + "PackageVersion": "2.5.0", + "PackageProjectUrl": "http://danial.name", + "License": "overriding the interface won\u0027t do anything, we need to override the virtual THX interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Directives Executive", + "PackageVersion": "9.4.9", + "PackageProjectUrl": "http://jedediah.net", + "License": "Try to back up the THX interface, maybe it will back up the auxiliary interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Operations Engineer", + "PackageVersion": "3.1.8", + "PackageProjectUrl": "http://montana.name", + "License": "If we program the array, we can get to the JBOD array through the primary JBOD array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Group Associate", + "PackageVersion": "4.0.1", + "PackageProjectUrl": "https://noemi.info", + "License": "We need to transmit the redundant TCP panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accountability Assistant", + "PackageVersion": "2.7.5", + "PackageProjectUrl": "http://barney.com", + "License": "You can\u0027t program the alarm without overriding the cross-platform RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Data Administrator", + "PackageVersion": "9.0.6", + "PackageProjectUrl": "https://michelle.org", + "License": "Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Optimization Assistant", + "PackageVersion": "8.8.2", + "PackageProjectUrl": "https://scot.info", + "License": "The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Solutions Supervisor", + "PackageVersion": "6.1.2", + "PackageProjectUrl": "https://ari.biz", + "License": "programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Group Technician", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://sandrine.name", + "License": "programming the system won\u0027t do anything, we need to synthesize the primary AGP system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Intranet Strategist", + "PackageVersion": "9.7.0", + "PackageProjectUrl": "https://john.name", + "License": "We need to copy the redundant JSON transmitter!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Investor Division Planner", + "PackageVersion": "1.4.6", + "PackageProjectUrl": "https://evelyn.info", + "License": "I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Accountability Specialist", + "PackageVersion": "0.8.7", + "PackageProjectUrl": "http://kristina.info", + "License": "We need to input the cross-platform RAM system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Research Producer", + "PackageVersion": "2.8.3", + "PackageProjectUrl": "https://sonia.org", + "License": "backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Division Consultant", + "PackageVersion": "4.8.7", + "PackageProjectUrl": "https://jack.net", + "License": "The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Group Manager", + "PackageVersion": "8.0.4", + "PackageProjectUrl": "https://luisa.biz", + "License": "The RAM panel is down, transmit the online panel so we can transmit the RAM panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Factors Assistant", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://ernestine.net", + "License": "Try to compress the SMS bus, maybe it will compress the bluetooth bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Paradigm Administrator", + "PackageVersion": "5.5.2", + "PackageProjectUrl": "http://trace.net", + "License": "Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Configuration Planner", + "PackageVersion": "2.6.3", + "PackageProjectUrl": "http://willis.name", + "License": "connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Accountability Strategist", + "PackageVersion": "0.5.2", + "PackageProjectUrl": "https://stuart.com", + "License": "You can\u0027t parse the firewall without navigating the solid state ADP firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Usability Manager", + "PackageVersion": "0.3.8", + "PackageProjectUrl": "http://myriam.name", + "License": "quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Interactions Analyst", + "PackageVersion": "3.0.8", + "PackageProjectUrl": "http://logan.net", + "License": "You can\u0027t parse the hard drive without generating the digital AGP hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Factors Representative", + "PackageVersion": "9.2.0", + "PackageProjectUrl": "https://jazmin.org", + "License": "Use the solid state SDD application, then you can navigate the solid state application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Operations Liaison", + "PackageVersion": "1.1.0", + "PackageProjectUrl": "http://tabitha.com", + "License": "You can\u0027t generate the array without quantifying the open-source PCI array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Security Developer", + "PackageVersion": "4.4.5", + "PackageProjectUrl": "https://maida.org", + "License": "parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Paradigm Director", + "PackageVersion": "6.3.8", + "PackageProjectUrl": "http://kiera.org", + "License": "Use the wireless THX array, then you can connect the wireless array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Quality Director", + "PackageVersion": "5.3.0", + "PackageProjectUrl": "http://hyman.com", + "License": "Use the redundant AI alarm, then you can transmit the redundant alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Directives Analyst", + "PackageVersion": "9.3.0", + "PackageProjectUrl": "http://bridie.biz", + "License": "Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Program Facilitator", + "PackageVersion": "2.7.4", + "PackageProjectUrl": "https://vida.net", + "License": "I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Branding Facilitator", + "PackageVersion": "0.3.9", + "PackageProjectUrl": "https://otilia.info", + "License": "We need to connect the optical SQL capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Group Consultant", + "PackageVersion": "8.8.0", + "PackageProjectUrl": "https://alana.org", + "License": "I\u0027ll index the neural SDD bus, that should bus the SDD bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Intranet Analyst", + "PackageVersion": "0.9.0", + "PackageProjectUrl": "https://creola.info", + "License": "indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Security Representative", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "https://velva.name", + "License": "The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Assurance Consultant", + "PackageVersion": "5.6.2", + "PackageProjectUrl": "https://eryn.org", + "License": "Use the digital IB alarm, then you can program the digital alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Central Creative Analyst", + "PackageVersion": "3.6.4", + "PackageProjectUrl": "http://abigayle.net", + "License": "programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Tactics Executive", + "PackageVersion": "6.2.9", + "PackageProjectUrl": "https://maxwell.name", + "License": "I\u0027ll transmit the online TCP driver, that should driver the TCP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Implementation Associate", + "PackageVersion": "8.2.9", + "PackageProjectUrl": "http://roderick.org", + "License": "synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Implementation Assistant", + "PackageVersion": "2.1.6", + "PackageProjectUrl": "https://liana.net", + "License": "Use the auxiliary RSS sensor, then you can program the auxiliary sensor!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Functionality Associate", + "PackageVersion": "9.4.1", + "PackageProjectUrl": "https://bonita.biz", + "License": "I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Functionality Manager", + "PackageVersion": "5.9.0", + "PackageProjectUrl": "https://mariane.info", + "License": "The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Web Assistant", + "PackageVersion": "3.5.5", + "PackageProjectUrl": "https://tremayne.org", + "License": "The COM array is down, calculate the open-source array so we can calculate the COM array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Directives Designer", + "PackageVersion": "0.4.8", + "PackageProjectUrl": "http://mable.net", + "License": "Use the virtual AI capacitor, then you can navigate the virtual capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Administrator", + "PackageVersion": "9.2.8", + "PackageProjectUrl": "https://brett.biz", + "License": "The FTP card is down, index the digital card so we can index the FTP card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Data Consultant", + "PackageVersion": "6.3.3", + "PackageProjectUrl": "https://heath.name", + "License": "Use the haptic XML driver, then you can index the haptic driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Markets Agent", + "PackageVersion": "8.8.4", + "PackageProjectUrl": "http://dayana.name", + "License": "I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Intranet Assistant", + "PackageVersion": "2.8.1", + "PackageProjectUrl": "https://chance.name", + "License": "You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Accountability Orchestrator", + "PackageVersion": "2.6.2", + "PackageProjectUrl": "https://tre.org", + "License": "You can\u0027t connect the panel without bypassing the bluetooth SSL panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Metrics Analyst", + "PackageVersion": "4.6.0", + "PackageProjectUrl": "http://nathaniel.name", + "License": "overriding the interface won\u0027t do anything, we need to connect the digital GB interface!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Accountability Agent", + "PackageVersion": "5.8.2", + "PackageProjectUrl": "http://chelsea.com", + "License": "I\u0027ll compress the auxiliary XSS port, that should port the XSS port!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Integration Officer", + "PackageVersion": "3.3.6", + "PackageProjectUrl": "https://howard.org", + "License": "Use the primary PNG matrix, then you can copy the primary matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Group Designer", + "PackageVersion": "3.0.6", + "PackageProjectUrl": "http://keyshawn.net", + "License": "We need to copy the cross-platform SAS panel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Data Assistant", + "PackageVersion": "7.9.8", + "PackageProjectUrl": "http://arlene.biz", + "License": "Try to generate the SMTP feed, maybe it will generate the online feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Configuration Assistant", + "PackageVersion": "0.1.1", + "PackageProjectUrl": "https://aurelia.info", + "License": "We need to hack the mobile SMS circuit!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Data Strategist", + "PackageVersion": "3.5.3", + "PackageProjectUrl": "https://sedrick.biz", + "License": "I\u0027ll transmit the optical USB program, that should program the USB program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Research Representative", + "PackageVersion": "1.6.9", + "PackageProjectUrl": "https://carol.org", + "License": "You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Usability Representative", + "PackageVersion": "9.1.3", + "PackageProjectUrl": "https://nelson.com", + "License": "We need to transmit the bluetooth FTP feed!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Division Assistant", + "PackageVersion": "0.9.4", + "PackageProjectUrl": "http://emerson.info", + "License": "The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Accountability Facilitator", + "PackageVersion": "2.1.4", + "PackageProjectUrl": "https://dillan.net", + "License": "Use the back-end XML protocol, then you can reboot the back-end protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Optimization Director", + "PackageVersion": "0.1.8", + "PackageProjectUrl": "https://crystal.info", + "License": "We need to transmit the back-end PCI panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Response Planner", + "PackageVersion": "7.8.0", + "PackageProjectUrl": "https://hertha.org", + "License": "Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Group Director", + "PackageVersion": "2.3.4", + "PackageProjectUrl": "https://luna.info", + "License": "I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accountability Administrator", + "PackageVersion": "5.9.9", + "PackageProjectUrl": "http://julio.info", + "License": "Use the neural IB matrix, then you can generate the neural matrix!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Brand Officer", + "PackageVersion": "1.1.5", + "PackageProjectUrl": "https://shayne.name", + "License": "If we transmit the application, we can get to the SAS application through the wireless SAS application!", + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt new file mode 100644 index 00000000..23e74578 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt @@ -0,0 +1,868 @@ +[ + { + "PackageId": "Central Data Consultant", + "PackageVersion": "6.5.0", + "PackageProjectUrl": "https://delilah.org", + "License": "generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Interactions Executive", + "PackageVersion": "5.4.8", + "PackageProjectUrl": "https://maye.org", + "License": "We need to override the auxiliary AGP firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Interactions Developer", + "PackageVersion": "9.9.4", + "PackageProjectUrl": "http://adrien.biz", + "License": "I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Branding Orchestrator", + "PackageVersion": "0.2.6", + "PackageProjectUrl": "https://keeley.net", + "License": "We need to bypass the back-end FTP alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Research Assistant", + "PackageVersion": "5.9.7", + "PackageProjectUrl": "http://danial.org", + "License": "Try to connect the TCP circuit, maybe it will connect the back-end circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Data Consultant", + "PackageVersion": "6.3.3", + "PackageProjectUrl": "https://heath.name", + "License": "Use the haptic XML driver, then you can index the haptic driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Group Technician", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://sandrine.name", + "License": "programming the system won\u0027t do anything, we need to synthesize the primary AGP system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Administrator", + "PackageVersion": "9.2.8", + "PackageProjectUrl": "https://brett.biz", + "License": "The FTP card is down, index the digital card so we can index the FTP card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Accountability Coordinator", + "PackageVersion": "5.5.0", + "PackageProjectUrl": "http://erling.name", + "License": "Try to back up the COM driver, maybe it will back up the bluetooth driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Infrastructure Orchestrator", + "PackageVersion": "5.0.6", + "PackageProjectUrl": "http://forrest.com", + "License": "If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Tactics Technician", + "PackageVersion": "7.6.7", + "PackageProjectUrl": "http://alvena.net", + "License": "If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Marketing Strategist", + "PackageVersion": "0.1.7", + "PackageProjectUrl": "http://melany.name", + "License": "I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Accountability Administrator", + "PackageVersion": "5.9.9", + "PackageProjectUrl": "http://julio.info", + "License": "Use the neural IB matrix, then you can generate the neural matrix!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Research Representative", + "PackageVersion": "1.6.9", + "PackageProjectUrl": "https://carol.org", + "License": "You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Quality Director", + "PackageVersion": "5.3.0", + "PackageProjectUrl": "http://hyman.com", + "License": "Use the redundant AI alarm, then you can transmit the redundant alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Accountability Facilitator", + "PackageVersion": "2.1.4", + "PackageProjectUrl": "https://dillan.net", + "License": "Use the back-end XML protocol, then you can reboot the back-end protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Brand Officer", + "PackageVersion": "1.1.5", + "PackageProjectUrl": "https://shayne.name", + "License": "If we transmit the application, we can get to the SAS application through the wireless SAS application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Web Specialist", + "PackageVersion": "7.4.0", + "PackageProjectUrl": "http://keely.net", + "License": "navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Future Factors Representative", + "PackageVersion": "9.2.0", + "PackageProjectUrl": "https://jazmin.org", + "License": "Use the solid state SDD application, then you can navigate the solid state application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Analyst", + "PackageVersion": "2.5.0", + "PackageProjectUrl": "http://danial.name", + "License": "overriding the interface won\u0027t do anything, we need to override the virtual THX interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Group Manager", + "PackageVersion": "8.0.4", + "PackageProjectUrl": "https://luisa.biz", + "License": "The RAM panel is down, transmit the online panel so we can transmit the RAM panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Operations Engineer", + "PackageVersion": "3.1.8", + "PackageProjectUrl": "http://montana.name", + "License": "If we program the array, we can get to the JBOD array through the primary JBOD array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Group Associate", + "PackageVersion": "4.0.1", + "PackageProjectUrl": "https://noemi.info", + "License": "We need to transmit the redundant TCP panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Data Strategist", + "PackageVersion": "3.5.3", + "PackageProjectUrl": "https://sedrick.biz", + "License": "I\u0027ll transmit the optical USB program, that should program the USB program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Accountability Orchestrator", + "PackageVersion": "2.6.2", + "PackageProjectUrl": "https://tre.org", + "License": "You can\u0027t connect the panel without bypassing the bluetooth SSL panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Directives Specialist", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "http://tabitha.name", + "License": "I\u0027ll reboot the virtual CSS program, that should program the CSS program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accountability Assistant", + "PackageVersion": "2.7.5", + "PackageProjectUrl": "http://barney.com", + "License": "You can\u0027t program the alarm without overriding the cross-platform RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Accounts Specialist", + "PackageVersion": "4.9.2", + "PackageProjectUrl": "https://wilfredo.biz", + "License": "The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Interactions Analyst", + "PackageVersion": "3.0.8", + "PackageProjectUrl": "http://logan.net", + "License": "You can\u0027t parse the hard drive without generating the digital AGP hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Implementation Associate", + "PackageVersion": "8.2.9", + "PackageProjectUrl": "http://roderick.org", + "License": "synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Division Consultant", + "PackageVersion": "4.8.7", + "PackageProjectUrl": "https://jack.net", + "License": "The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Applications Developer", + "PackageVersion": "5.6.1", + "PackageProjectUrl": "http://kiley.org", + "License": "We need to connect the bluetooth RAM application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Paradigm Administrator", + "PackageVersion": "5.5.2", + "PackageProjectUrl": "http://trace.net", + "License": "Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Accountability Strategist", + "PackageVersion": "0.5.2", + "PackageProjectUrl": "https://stuart.com", + "License": "You can\u0027t parse the firewall without navigating the solid state ADP firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Security Developer", + "PackageVersion": "4.4.5", + "PackageProjectUrl": "https://maida.org", + "License": "parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Group Director", + "PackageVersion": "2.3.4", + "PackageProjectUrl": "https://luna.info", + "License": "I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Intranet Strategist", + "PackageVersion": "9.7.0", + "PackageProjectUrl": "https://john.name", + "License": "We need to copy the redundant JSON transmitter!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Optimization Assistant", + "PackageVersion": "8.8.2", + "PackageProjectUrl": "https://scot.info", + "License": "The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Directives Executive", + "PackageVersion": "9.4.9", + "PackageProjectUrl": "http://jedediah.net", + "License": "Try to back up the THX interface, maybe it will back up the auxiliary interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Usability Representative", + "PackageVersion": "9.1.3", + "PackageProjectUrl": "https://nelson.com", + "License": "We need to transmit the bluetooth FTP feed!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Web Assistant", + "PackageVersion": "3.5.5", + "PackageProjectUrl": "https://tremayne.org", + "License": "The COM array is down, calculate the open-source array so we can calculate the COM array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Intranet Assistant", + "PackageVersion": "2.8.1", + "PackageProjectUrl": "https://chance.name", + "License": "You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Optimization Director", + "PackageVersion": "0.1.8", + "PackageProjectUrl": "https://crystal.info", + "License": "We need to transmit the back-end PCI panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Tactics Executive", + "PackageVersion": "6.2.9", + "PackageProjectUrl": "https://maxwell.name", + "License": "I\u0027ll transmit the online TCP driver, that should driver the TCP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Functionality Associate", + "PackageVersion": "9.4.1", + "PackageProjectUrl": "https://bonita.biz", + "License": "I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Directives Analyst", + "PackageVersion": "9.3.0", + "PackageProjectUrl": "http://bridie.biz", + "License": "Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Configuration Assistant", + "PackageVersion": "0.1.1", + "PackageProjectUrl": "https://aurelia.info", + "License": "We need to hack the mobile SMS circuit!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Central Security Representative", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "https://velva.name", + "License": "The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Group Consultant", + "PackageVersion": "8.8.0", + "PackageProjectUrl": "https://alana.org", + "License": "I\u0027ll index the neural SDD bus, that should bus the SDD bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Integration Officer", + "PackageVersion": "3.3.6", + "PackageProjectUrl": "https://howard.org", + "License": "Use the primary PNG matrix, then you can copy the primary matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Branding Facilitator", + "PackageVersion": "0.3.9", + "PackageProjectUrl": "https://otilia.info", + "License": "We need to connect the optical SQL capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Factors Assistant", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://ernestine.net", + "License": "Try to compress the SMS bus, maybe it will compress the bluetooth bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Program Facilitator", + "PackageVersion": "2.7.4", + "PackageProjectUrl": "https://vida.net", + "License": "I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Assurance Consultant", + "PackageVersion": "5.6.2", + "PackageProjectUrl": "https://eryn.org", + "License": "Use the digital IB alarm, then you can program the digital alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Accountability Agent", + "PackageVersion": "5.8.2", + "PackageProjectUrl": "http://chelsea.com", + "License": "I\u0027ll compress the auxiliary XSS port, that should port the XSS port!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Implementation Assistant", + "PackageVersion": "2.1.6", + "PackageProjectUrl": "https://liana.net", + "License": "Use the auxiliary RSS sensor, then you can program the auxiliary sensor!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Configuration Planner", + "PackageVersion": "2.6.3", + "PackageProjectUrl": "http://willis.name", + "License": "connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Functionality Manager", + "PackageVersion": "5.9.0", + "PackageProjectUrl": "https://mariane.info", + "License": "The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Usability Manager", + "PackageVersion": "0.3.8", + "PackageProjectUrl": "http://myriam.name", + "License": "quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Factors Planner", + "PackageVersion": "1.0.4", + "PackageProjectUrl": "http://mikayla.com", + "License": "You can\u0027t compress the driver without calculating the back-end SQL driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Data Assistant", + "PackageVersion": "7.9.8", + "PackageProjectUrl": "http://arlene.biz", + "License": "Try to generate the SMTP feed, maybe it will generate the online feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Solutions Supervisor", + "PackageVersion": "6.1.2", + "PackageProjectUrl": "https://ari.biz", + "License": "programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Central Creative Analyst", + "PackageVersion": "3.6.4", + "PackageProjectUrl": "http://abigayle.net", + "License": "programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Research Producer", + "PackageVersion": "2.8.3", + "PackageProjectUrl": "https://sonia.org", + "License": "backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Paradigm Director", + "PackageVersion": "6.3.8", + "PackageProjectUrl": "http://kiera.org", + "License": "Use the wireless THX array, then you can connect the wireless array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Directives Designer", + "PackageVersion": "0.4.8", + "PackageProjectUrl": "http://mable.net", + "License": "Use the virtual AI capacitor, then you can navigate the virtual capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Response Planner", + "PackageVersion": "7.8.0", + "PackageProjectUrl": "https://hertha.org", + "License": "Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Division Agent", + "PackageVersion": "2.4.2", + "PackageProjectUrl": "http://armani.name", + "License": "Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Intranet Analyst", + "PackageVersion": "0.9.0", + "PackageProjectUrl": "https://creola.info", + "License": "indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Accountability Specialist", + "PackageVersion": "0.8.7", + "PackageProjectUrl": "http://kristina.info", + "License": "We need to input the cross-platform RAM system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Division Assistant", + "PackageVersion": "0.9.4", + "PackageProjectUrl": "http://emerson.info", + "License": "The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Usability Manager", + "PackageVersion": "6.7.0", + "PackageProjectUrl": "https://alexandra.info", + "License": "We need to parse the mobile SCSI protocol!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "International Metrics Officer", + "PackageVersion": "3.7.1", + "PackageProjectUrl": "https://myrl.info", + "License": "hacking the array won\u0027t do anything, we need to back up the haptic IB array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Markets Agent", + "PackageVersion": "8.8.4", + "PackageProjectUrl": "http://dayana.name", + "License": "I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Infrastructure Specialist", + "PackageVersion": "6.1.6", + "PackageProjectUrl": "http://melisa.com", + "License": "quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Metrics Analyst", + "PackageVersion": "4.6.0", + "PackageProjectUrl": "http://nathaniel.name", + "License": "overriding the interface won\u0027t do anything, we need to connect the digital GB interface!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Group Designer", + "PackageVersion": "3.0.6", + "PackageProjectUrl": "http://keyshawn.net", + "License": "We need to copy the cross-platform SAS panel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Data Administrator", + "PackageVersion": "9.0.6", + "PackageProjectUrl": "https://michelle.org", + "License": "Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Operations Liaison", + "PackageVersion": "1.1.0", + "PackageProjectUrl": "http://tabitha.com", + "License": "You can\u0027t generate the array without quantifying the open-source PCI array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Investor Division Planner", + "PackageVersion": "1.4.6", + "PackageProjectUrl": "https://evelyn.info", + "License": "I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt new file mode 100644 index 00000000..4d7e7327 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt @@ -0,0 +1,33 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt new file mode 100644 index 00000000..e9e26499 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt @@ -0,0 +1,684 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt new file mode 100644 index 00000000..98453bfe --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt @@ -0,0 +1,105 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt new file mode 100644 index 00000000..5078ba24 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt @@ -0,0 +1,175 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt new file mode 100644 index 00000000..3e0e0924 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt @@ -0,0 +1,166 @@ +[ + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt new file mode 100644 index 00000000..bc3bd3a7 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt @@ -0,0 +1,817 @@ +[ + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt new file mode 100644 index 00000000..0c8ca0ff --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt @@ -0,0 +1,238 @@ +[ + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt new file mode 100644 index 00000000..365cd21a --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt @@ -0,0 +1,308 @@ +[ + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt new file mode 100644 index 00000000..6874202f --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt @@ -0,0 +1,61 @@ +[ + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt new file mode 100644 index 00000000..2dba1403 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt @@ -0,0 +1,712 @@ +[ + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt new file mode 100644 index 00000000..4426f31c --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt @@ -0,0 +1,133 @@ +[ + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt new file mode 100644 index 00000000..8e331ac1 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt @@ -0,0 +1,203 @@ +[ + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt new file mode 100644 index 00000000..ad47dbb9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt new file mode 100644 index 00000000..de1932f2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt @@ -0,0 +1,9 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt new file mode 100644 index 00000000..112eccbc --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt @@ -0,0 +1,702 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Usability Representative", + "PackageVersion": "9.1.3", + "PackageProjectUrl": "https://nelson.com", + "License": "We need to transmit the bluetooth FTP feed!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Intranet Strategist", + "PackageVersion": "9.7.0", + "PackageProjectUrl": "https://john.name", + "License": "We need to copy the redundant JSON transmitter!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Group Manager", + "PackageVersion": "8.0.4", + "PackageProjectUrl": "https://luisa.biz", + "License": "The RAM panel is down, transmit the online panel so we can transmit the RAM panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Accountability Strategist", + "PackageVersion": "0.5.2", + "PackageProjectUrl": "https://stuart.com", + "License": "You can\u0027t parse the firewall without navigating the solid state ADP firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Directives Executive", + "PackageVersion": "9.4.9", + "PackageProjectUrl": "http://jedediah.net", + "License": "Try to back up the THX interface, maybe it will back up the auxiliary interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Factors Assistant", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://ernestine.net", + "License": "Try to compress the SMS bus, maybe it will compress the bluetooth bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Interactions Analyst", + "PackageVersion": "3.0.8", + "PackageProjectUrl": "http://logan.net", + "License": "You can\u0027t parse the hard drive without generating the digital AGP hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Metrics Analyst", + "PackageVersion": "4.6.0", + "PackageProjectUrl": "http://nathaniel.name", + "License": "overriding the interface won\u0027t do anything, we need to connect the digital GB interface!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Accountability Specialist", + "PackageVersion": "0.8.7", + "PackageProjectUrl": "http://kristina.info", + "License": "We need to input the cross-platform RAM system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Usability Manager", + "PackageVersion": "0.3.8", + "PackageProjectUrl": "http://myriam.name", + "License": "quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Tactics Executive", + "PackageVersion": "6.2.9", + "PackageProjectUrl": "https://maxwell.name", + "License": "I\u0027ll transmit the online TCP driver, that should driver the TCP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Accountability Facilitator", + "PackageVersion": "2.1.4", + "PackageProjectUrl": "https://dillan.net", + "License": "Use the back-end XML protocol, then you can reboot the back-end protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Quality Director", + "PackageVersion": "5.3.0", + "PackageProjectUrl": "http://hyman.com", + "License": "Use the redundant AI alarm, then you can transmit the redundant alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Web Specialist", + "PackageVersion": "7.4.0", + "PackageProjectUrl": "http://keely.net", + "License": "navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Accountability Orchestrator", + "PackageVersion": "2.6.2", + "PackageProjectUrl": "https://tre.org", + "License": "You can\u0027t connect the panel without bypassing the bluetooth SSL panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Metrics Officer", + "PackageVersion": "3.7.1", + "PackageProjectUrl": "https://myrl.info", + "License": "hacking the array won\u0027t do anything, we need to back up the haptic IB array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Data Administrator", + "PackageVersion": "9.0.6", + "PackageProjectUrl": "https://michelle.org", + "License": "Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Data Strategist", + "PackageVersion": "3.5.3", + "PackageProjectUrl": "https://sedrick.biz", + "License": "I\u0027ll transmit the optical USB program, that should program the USB program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accountability Assistant", + "PackageVersion": "2.7.5", + "PackageProjectUrl": "http://barney.com", + "License": "You can\u0027t program the alarm without overriding the cross-platform RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Integration Officer", + "PackageVersion": "3.3.6", + "PackageProjectUrl": "https://howard.org", + "License": "Use the primary PNG matrix, then you can copy the primary matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Group Technician", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://sandrine.name", + "License": "programming the system won\u0027t do anything, we need to synthesize the primary AGP system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Factors Planner", + "PackageVersion": "1.0.4", + "PackageProjectUrl": "http://mikayla.com", + "License": "You can\u0027t compress the driver without calculating the back-end SQL driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Data Assistant", + "PackageVersion": "7.9.8", + "PackageProjectUrl": "http://arlene.biz", + "License": "Try to generate the SMTP feed, maybe it will generate the online feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Functionality Associate", + "PackageVersion": "9.4.1", + "PackageProjectUrl": "https://bonita.biz", + "License": "I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Research Representative", + "PackageVersion": "1.6.9", + "PackageProjectUrl": "https://carol.org", + "License": "You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Accounts Specialist", + "PackageVersion": "4.9.2", + "PackageProjectUrl": "https://wilfredo.biz", + "License": "The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Program Facilitator", + "PackageVersion": "2.7.4", + "PackageProjectUrl": "https://vida.net", + "License": "I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Division Planner", + "PackageVersion": "1.4.6", + "PackageProjectUrl": "https://evelyn.info", + "License": "I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Response Planner", + "PackageVersion": "7.8.0", + "PackageProjectUrl": "https://hertha.org", + "License": "Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Accountability Administrator", + "PackageVersion": "5.9.9", + "PackageProjectUrl": "http://julio.info", + "License": "Use the neural IB matrix, then you can generate the neural matrix!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Branding Orchestrator", + "PackageVersion": "0.2.6", + "PackageProjectUrl": "https://keeley.net", + "License": "We need to bypass the back-end FTP alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Infrastructure Orchestrator", + "PackageVersion": "5.0.6", + "PackageProjectUrl": "http://forrest.com", + "License": "If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Infrastructure Specialist", + "PackageVersion": "6.1.6", + "PackageProjectUrl": "http://melisa.com", + "License": "quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Directives Analyst", + "PackageVersion": "9.3.0", + "PackageProjectUrl": "http://bridie.biz", + "License": "Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Group Director", + "PackageVersion": "2.3.4", + "PackageProjectUrl": "https://luna.info", + "License": "I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Branding Facilitator", + "PackageVersion": "0.3.9", + "PackageProjectUrl": "https://otilia.info", + "License": "We need to connect the optical SQL capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Configuration Planner", + "PackageVersion": "2.6.3", + "PackageProjectUrl": "http://willis.name", + "License": "connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Assurance Consultant", + "PackageVersion": "5.6.2", + "PackageProjectUrl": "https://eryn.org", + "License": "Use the digital IB alarm, then you can program the digital alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Interactions Developer", + "PackageVersion": "9.9.4", + "PackageProjectUrl": "http://adrien.biz", + "License": "I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Optimization Director", + "PackageVersion": "0.1.8", + "PackageProjectUrl": "https://crystal.info", + "License": "We need to transmit the back-end PCI panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Solutions Supervisor", + "PackageVersion": "6.1.2", + "PackageProjectUrl": "https://ari.biz", + "License": "programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Paradigm Director", + "PackageVersion": "6.3.8", + "PackageProjectUrl": "http://kiera.org", + "License": "Use the wireless THX array, then you can connect the wireless array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Group Designer", + "PackageVersion": "3.0.6", + "PackageProjectUrl": "http://keyshawn.net", + "License": "We need to copy the cross-platform SAS panel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Intranet Assistant", + "PackageVersion": "2.8.1", + "PackageProjectUrl": "https://chance.name", + "License": "You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Security Developer", + "PackageVersion": "4.4.5", + "PackageProjectUrl": "https://maida.org", + "License": "parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Paradigm Administrator", + "PackageVersion": "5.5.2", + "PackageProjectUrl": "http://trace.net", + "License": "Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Interactions Executive", + "PackageVersion": "5.4.8", + "PackageProjectUrl": "https://maye.org", + "License": "We need to override the auxiliary AGP firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Central Creative Analyst", + "PackageVersion": "3.6.4", + "PackageProjectUrl": "http://abigayle.net", + "License": "programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Division Assistant", + "PackageVersion": "0.9.4", + "PackageProjectUrl": "http://emerson.info", + "License": "The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Brand Officer", + "PackageVersion": "1.1.5", + "PackageProjectUrl": "https://shayne.name", + "License": "If we transmit the application, we can get to the SAS application through the wireless SAS application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Usability Manager", + "PackageVersion": "6.7.0", + "PackageProjectUrl": "https://alexandra.info", + "License": "We need to parse the mobile SCSI protocol!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Markets Agent", + "PackageVersion": "8.8.4", + "PackageProjectUrl": "http://dayana.name", + "License": "I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Configuration Assistant", + "PackageVersion": "0.1.1", + "PackageProjectUrl": "https://aurelia.info", + "License": "We need to hack the mobile SMS circuit!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Group Consultant", + "PackageVersion": "8.8.0", + "PackageProjectUrl": "https://alana.org", + "License": "I\u0027ll index the neural SDD bus, that should bus the SDD bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Implementation Associate", + "PackageVersion": "8.2.9", + "PackageProjectUrl": "http://roderick.org", + "License": "synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Research Producer", + "PackageVersion": "2.8.3", + "PackageProjectUrl": "https://sonia.org", + "License": "backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Accountability Agent", + "PackageVersion": "5.8.2", + "PackageProjectUrl": "http://chelsea.com", + "License": "I\u0027ll compress the auxiliary XSS port, that should port the XSS port!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Group Associate", + "PackageVersion": "4.0.1", + "PackageProjectUrl": "https://noemi.info", + "License": "We need to transmit the redundant TCP panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Factors Representative", + "PackageVersion": "9.2.0", + "PackageProjectUrl": "https://jazmin.org", + "License": "Use the solid state SDD application, then you can navigate the solid state application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Applications Developer", + "PackageVersion": "5.6.1", + "PackageProjectUrl": "http://kiley.org", + "License": "We need to connect the bluetooth RAM application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Data Consultant", + "PackageVersion": "6.3.3", + "PackageProjectUrl": "https://heath.name", + "License": "Use the haptic XML driver, then you can index the haptic driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Division Agent", + "PackageVersion": "2.4.2", + "PackageProjectUrl": "http://armani.name", + "License": "Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Research Assistant", + "PackageVersion": "5.9.7", + "PackageProjectUrl": "http://danial.org", + "License": "Try to connect the TCP circuit, maybe it will connect the back-end circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Optimization Assistant", + "PackageVersion": "8.8.2", + "PackageProjectUrl": "https://scot.info", + "License": "The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Administrator", + "PackageVersion": "9.2.8", + "PackageProjectUrl": "https://brett.biz", + "License": "The FTP card is down, index the digital card so we can index the FTP card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Directives Specialist", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "http://tabitha.name", + "License": "I\u0027ll reboot the virtual CSS program, that should program the CSS program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Web Assistant", + "PackageVersion": "3.5.5", + "PackageProjectUrl": "https://tremayne.org", + "License": "The COM array is down, calculate the open-source array so we can calculate the COM array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Operations Liaison", + "PackageVersion": "1.1.0", + "PackageProjectUrl": "http://tabitha.com", + "License": "You can\u0027t generate the array without quantifying the open-source PCI array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Accountability Coordinator", + "PackageVersion": "5.5.0", + "PackageProjectUrl": "http://erling.name", + "License": "Try to back up the COM driver, maybe it will back up the bluetooth driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Marketing Strategist", + "PackageVersion": "0.1.7", + "PackageProjectUrl": "http://melany.name", + "License": "I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Intranet Analyst", + "PackageVersion": "0.9.0", + "PackageProjectUrl": "https://creola.info", + "License": "indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Security Representative", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "https://velva.name", + "License": "The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Brand Analyst", + "PackageVersion": "2.5.0", + "PackageProjectUrl": "http://danial.name", + "License": "overriding the interface won\u0027t do anything, we need to override the virtual THX interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Directives Designer", + "PackageVersion": "0.4.8", + "PackageProjectUrl": "http://mable.net", + "License": "Use the virtual AI capacitor, then you can navigate the virtual capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Division Consultant", + "PackageVersion": "4.8.7", + "PackageProjectUrl": "https://jack.net", + "License": "The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Data Consultant", + "PackageVersion": "6.5.0", + "PackageProjectUrl": "https://delilah.org", + "License": "generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Tactics Technician", + "PackageVersion": "7.6.7", + "PackageProjectUrl": "http://alvena.net", + "License": "If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Implementation Assistant", + "PackageVersion": "2.1.6", + "PackageProjectUrl": "https://liana.net", + "License": "Use the auxiliary RSS sensor, then you can program the auxiliary sensor!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Functionality Manager", + "PackageVersion": "5.9.0", + "PackageProjectUrl": "https://mariane.info", + "License": "The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Operations Engineer", + "PackageVersion": "3.1.8", + "PackageProjectUrl": "http://montana.name", + "License": "If we program the array, we can get to the JBOD array through the primary JBOD array!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt new file mode 100644 index 00000000..097a2b67 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt @@ -0,0 +1,142 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt new file mode 100644 index 00000000..2b3e0544 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt @@ -0,0 +1,37 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt new file mode 100644 index 00000000..9b372a83 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt @@ -0,0 +1,26 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt new file mode 100644 index 00000000..ab7b48bb --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt @@ -0,0 +1,677 @@ +[ + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt new file mode 100644 index 00000000..897f720f --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt @@ -0,0 +1,98 @@ +[ + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt new file mode 100644 index 00000000..90e9bfeb --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt @@ -0,0 +1,168 @@ +[ + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt new file mode 100644 index 00000000..9b372a83 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt @@ -0,0 +1,26 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt new file mode 100644 index 00000000..d31bd3e2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt @@ -0,0 +1,677 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt new file mode 100644 index 00000000..0f8902a7 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt @@ -0,0 +1,98 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt new file mode 100644 index 00000000..cf5b7456 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt @@ -0,0 +1,168 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt new file mode 100644 index 00000000..9b372a83 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt @@ -0,0 +1,26 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt new file mode 100644 index 00000000..53b2df30 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt @@ -0,0 +1,677 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt new file mode 100644 index 00000000..bfa85ac8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt @@ -0,0 +1,98 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt new file mode 100644 index 00000000..47e2545c --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt @@ -0,0 +1,168 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt new file mode 100644 index 00000000..9b372a83 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt @@ -0,0 +1,26 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt new file mode 100644 index 00000000..c9af89d4 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt @@ -0,0 +1,677 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt new file mode 100644 index 00000000..bfa85ac8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt @@ -0,0 +1,98 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt new file mode 100644 index 00000000..02dfcc7b --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt @@ -0,0 +1,168 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt new file mode 100644 index 00000000..9b372a83 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt @@ -0,0 +1,26 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt new file mode 100644 index 00000000..17e52e8b --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt @@ -0,0 +1,677 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Accounts Liaison", + "PackageVersion": "7.2.6", + "ValidationErrors": [ + { + "Error": "Cedrick", + "Context": "https://zachariah.net" + }, + { + "Error": "Marcelle", + "Context": "https://adah.org" + }, + { + "Error": "Barney", + "Context": "http://erica.org" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Response Associate", + "PackageVersion": "1.9.8", + "ValidationErrors": [ + { + "Error": "Sandra", + "Context": "http://antonina.com" + }, + { + "Error": "Willow", + "Context": "https://jason.org" + }, + { + "Error": "Orland", + "Context": "http://rigoberto.com" + }, + { + "Error": "Laney", + "Context": "http://eryn.org" + }, + { + "Error": "Amari", + "Context": "http://viviane.net" + }, + { + "Error": "Kelley", + "Context": "http://doris.net" + }, + { + "Error": "Kennedy", + "Context": "https://milo.net" + } + ], + "License": "The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Creative Liaison", + "PackageVersion": "0.4.6", + "ValidationErrors": [ + { + "Error": "Mervin", + "Context": "http://celestine.info" + }, + { + "Error": "Amalia", + "Context": "https://shanelle.info" + }, + { + "Error": "Sheila", + "Context": "http://darrell.info" + }, + { + "Error": "Alec", + "Context": "https://candice.biz" + }, + { + "Error": "Linnea", + "Context": "http://everardo.info" + }, + { + "Error": "Daryl", + "Context": "https://jerrod.com" + }, + { + "Error": "Laila", + "Context": "http://caleigh.net" + }, + { + "Error": "Adolfo", + "Context": "http://daisha.biz" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Lead Intranet Officer", + "PackageVersion": "6.4.9", + "ValidationErrors": [ + { + "Error": "Margaret", + "Context": "https://michaela.name" + }, + { + "Error": "Jody", + "Context": "http://jakob.org" + }, + { + "Error": "Anjali", + "Context": "https://valentin.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Human Usability Specialist", + "PackageVersion": "3.2.8", + "PackageProjectUrl": "http://micah.info", + "ValidationErrors": [ + { + "Error": "Evalyn", + "Context": "https://myrtis.name" + }, + { + "Error": "Ursula", + "Context": "https://werner.net" + }, + { + "Error": "Linwood", + "Context": "http://rebekah.org" + }, + { + "Error": "Cleve", + "Context": "https://claudie.net" + }, + { + "Error": "Theodora", + "Context": "http://faye.info" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Integration Orchestrator", + "PackageVersion": "5.4.5", + "ValidationErrors": [ + { + "Error": "Steve", + "Context": "http://lon.org" + }, + { + "Error": "Braeden", + "Context": "https://sunny.name" + }, + { + "Error": "Leslie", + "Context": "http://bettie.info" + }, + { + "Error": "Edmund", + "Context": "http://sadie.info" + }, + { + "Error": "Horacio", + "Context": "https://loraine.name" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Global Branding Associate", + "PackageVersion": "0.5.9", + "PackageProjectUrl": "http://cory.com", + "ValidationErrors": [ + { + "Error": "Suzanne", + "Context": "http://ima.name" + }, + { + "Error": "Earnestine", + "Context": "http://nathanial.biz" + }, + { + "Error": "Connor", + "Context": "https://augustus.net" + }, + { + "Error": "Araceli", + "Context": "http://hailey.biz" + }, + { + "Error": "Janessa", + "Context": "https://craig.com" + }, + { + "Error": "Erica", + "Context": "http://kristin.org" + }, + { + "Error": "Alek", + "Context": "http://shany.biz" + } + ], + "License": "If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Lead Markets Designer", + "PackageVersion": "2.8.4", + "PackageProjectUrl": "https://amara.info", + "ValidationErrors": [ + { + "Error": "Seamus", + "Context": "http://maybell.info" + }, + { + "Error": "Monserrat", + "Context": "http://katrine.name" + }, + { + "Error": "Abel", + "Context": "https://geovany.com" + }, + { + "Error": "Diana", + "Context": "http://eula.name" + }, + { + "Error": "Raphael", + "Context": "https://zackery.info" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Tactics Analyst", + "PackageVersion": "3.0.8", + "ValidationErrors": [ + { + "Error": "Bill", + "Context": "http://jairo.net" + }, + { + "Error": "Clemmie", + "Context": "http://shanny.net" + }, + { + "Error": "Hildegard", + "Context": "http://conner.name" + }, + { + "Error": "Isabella", + "Context": "https://kennith.com" + }, + { + "Error": "Johanna", + "Context": "https://ara.org" + }, + { + "Error": "Demarco", + "Context": "https://rae.biz" + }, + { + "Error": "Viviane", + "Context": "http://christine.info" + } + ], + "License": "If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Optimization Representative", + "PackageVersion": "8.2.6", + "ValidationErrors": [ + { + "Error": "Brandi", + "Context": "https://aniyah.com" + }, + { + "Error": "Tyson", + "Context": "https://bonita.org" + }, + { + "Error": "Jazlyn", + "Context": "http://madonna.net" + }, + { + "Error": "Deangelo", + "Context": "https://jess.info" + }, + { + "Error": "Alvah", + "Context": "https://hans.net" + }, + { + "Error": "Payton", + "Context": "http://shanna.name" + }, + { + "Error": "Providenci", + "Context": "https://tyra.org" + }, + { + "Error": "Flo", + "Context": "http://isidro.net" + }, + { + "Error": "Dawn", + "Context": "https://anika.org" + }, + { + "Error": "Silas", + "Context": "http://zane.name" + } + ], + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Research Facilitator", + "PackageVersion": "5.7.5", + "ValidationErrors": [ + { + "Error": "Avery", + "Context": "http://jarret.biz" + }, + { + "Error": "Clarissa", + "Context": "https://audreanne.name" + }, + { + "Error": "Vida", + "Context": "https://theresia.biz" + }, + { + "Error": "Ransom", + "Context": "http://isom.com" + }, + { + "Error": "Anastasia", + "Context": "http://kamryn.info" + }, + { + "Error": "Marlene", + "Context": "https://cyril.name" + }, + { + "Error": "Zetta", + "Context": "http://pete.org" + }, + { + "Error": "Candida", + "Context": "https://craig.biz" + }, + { + "Error": "Timmothy", + "Context": "https://joanny.biz" + }, + { + "Error": "Alfonzo", + "Context": "http://dorothea.org" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Program Technician", + "PackageVersion": "1.7.7", + "ValidationErrors": [ + { + "Error": "Keely", + "Context": "http://obie.org" + }, + { + "Error": "Caleigh", + "Context": "https://albin.info" + }, + { + "Error": "Flavie", + "Context": "http://lavonne.biz" + }, + { + "Error": "Kaitlyn", + "Context": "http://osborne.org" + }, + { + "Error": "Joesph", + "Context": "https://michael.name" + }, + { + "Error": "Kali", + "Context": "http://shyanne.net" + }, + { + "Error": "Austin", + "Context": "https://marty.net" + }, + { + "Error": "Theresia", + "Context": "http://kristin.net" + }, + { + "Error": "Lester", + "Context": "https://paige.com" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Accounts Associate", + "PackageVersion": "3.2.6", + "PackageProjectUrl": "https://vesta.com", + "ValidationErrors": [ + { + "Error": "Buck", + "Context": "http://taryn.com" + }, + { + "Error": "Hilton", + "Context": "http://isabel.com" + }, + { + "Error": "Rogers", + "Context": "https://bertrand.biz" + }, + { + "Error": "Annetta", + "Context": "https://remington.org" + }, + { + "Error": "Efrain", + "Context": "http://davion.org" + }, + { + "Error": "Merle", + "Context": "https://abigayle.org" + }, + { + "Error": "Jerod", + "Context": "https://vicenta.info" + }, + { + "Error": "Kayli", + "Context": "https://shaun.net" + }, + { + "Error": "Antwan", + "Context": "https://hazel.net" + } + ], + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Optimization Orchestrator", + "PackageVersion": "2.4.2", + "ValidationErrors": [ + { + "Error": "Damien", + "Context": "https://edyth.com" + }, + { + "Error": "Princess", + "Context": "http://haylie.biz" + }, + { + "Error": "Jordane", + "Context": "https://gregorio.com" + }, + { + "Error": "Opal", + "Context": "http://abbie.org" + }, + { + "Error": "Pablo", + "Context": "https://maxime.biz" + }, + { + "Error": "Shaun", + "Context": "https://concepcion.net" + }, + { + "Error": "Moises", + "Context": "http://rupert.info" + } + ], + "License": "If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Marketing Consultant", + "PackageVersion": "2.4.9", + "ValidationErrors": [ + { + "Error": "Angie", + "Context": "https://ardella.info" + }, + { + "Error": "Melissa", + "Context": "https://sandra.biz" + }, + { + "Error": "Pearline", + "Context": "https://noble.net" + }, + { + "Error": "Dusty", + "Context": "https://verlie.com" + } + ], + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt new file mode 100644 index 00000000..0f8902a7 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt @@ -0,0 +1,98 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt new file mode 100644 index 00000000..426deeec --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt @@ -0,0 +1,168 @@ +[ + { + "PackageId": "Principal Functionality Agent", + "PackageVersion": "1.5.3", + "ValidationErrors": [ + { + "Error": "Judson", + "Context": "https://wilson.net" + }, + { + "Error": "Guadalupe", + "Context": "http://otho.info" + }, + { + "Error": "General", + "Context": "https://skylar.name" + }, + { + "Error": "Haylie", + "Context": "http://audreanne.info" + } + ], + "License": "connecting the firewall won\u0027t do anything, we need to copy the digital XSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Intranet Facilitator", + "PackageVersion": "7.1.7", + "PackageProjectUrl": "https://garnet.net", + "ValidationErrors": [ + { + "Error": "Alisha", + "Context": "http://alyson.name" + }, + { + "Error": "Carmelo", + "Context": "http://michele.name" + }, + { + "Error": "Miles", + "Context": "https://freddie.com" + }, + { + "Error": "Kade", + "Context": "https://jaunita.biz" + }, + { + "Error": "Marcelina", + "Context": "http://donna.net" + }, + { + "Error": "Darby", + "Context": "http://joana.org" + }, + { + "Error": "Albin", + "Context": "http://hal.com" + }, + { + "Error": "Betsy", + "Context": "http://quinton.com" + }, + { + "Error": "Emmalee", + "Context": "https://haleigh.name" + } + ], + "License": "synthesizing the feed won\u0027t do anything, we need to index the auxiliary SMTP feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Brand Developer", + "PackageVersion": "4.4.1", + "PackageProjectUrl": "http://adelbert.net", + "ValidationErrors": [ + { + "Error": "Reid", + "Context": "https://amely.info" + }, + { + "Error": "Nikki", + "Context": "https://mckayla.info" + }, + { + "Error": "Kiara", + "Context": "https://floyd.net" + }, + { + "Error": "Libby", + "Context": "http://wade.biz" + }, + { + "Error": "Leola", + "Context": "https://pietro.info" + }, + { + "Error": "Arch", + "Context": "http://hazle.org" + }, + { + "Error": "Eldred", + "Context": "http://gabriel.net" + } + ], + "License": "If we override the system, we can get to the CSS system through the neural CSS system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accounts Technician", + "PackageVersion": "2.8.7", + "ValidationErrors": [ + { + "Error": "Dawson", + "Context": "http://addie.org" + }, + { + "Error": "Xander", + "Context": "https://everette.info" + }, + { + "Error": "Otha", + "Context": "https://cletus.net" + }, + { + "Error": "Carlee", + "Context": "https://jaron.info" + }, + { + "Error": "Nannie", + "Context": "https://isaias.net" + } + ], + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Solutions Coordinator", + "PackageVersion": "8.7.3", + "PackageProjectUrl": "https://adrianna.name", + "ValidationErrors": [ + { + "Error": "Maximillian", + "Context": "http://leola.name" + }, + { + "Error": "Shaina", + "Context": "http://dean.name" + }, + { + "Error": "Juana", + "Context": "http://aniya.biz" + }, + { + "Error": "Fernando", + "Context": "http://shanna.com" + }, + { + "Error": "Katelyn", + "Context": "https://judd.com" + }, + { + "Error": "Earl", + "Context": "https://bradford.biz" + } + ], + "License": "Use the bluetooth USB panel, then you can calculate the bluetooth panel!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt new file mode 100644 index 00000000..ad47dbb9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt new file mode 100644 index 00000000..de1932f2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt @@ -0,0 +1,9 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt new file mode 100644 index 00000000..112eccbc --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt @@ -0,0 +1,702 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Principal Usability Representative", + "PackageVersion": "9.1.3", + "PackageProjectUrl": "https://nelson.com", + "License": "We need to transmit the bluetooth FTP feed!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Intranet Strategist", + "PackageVersion": "9.7.0", + "PackageProjectUrl": "https://john.name", + "License": "We need to copy the redundant JSON transmitter!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Group Manager", + "PackageVersion": "8.0.4", + "PackageProjectUrl": "https://luisa.biz", + "License": "The RAM panel is down, transmit the online panel so we can transmit the RAM panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Accountability Strategist", + "PackageVersion": "0.5.2", + "PackageProjectUrl": "https://stuart.com", + "License": "You can\u0027t parse the firewall without navigating the solid state ADP firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Chief Directives Executive", + "PackageVersion": "9.4.9", + "PackageProjectUrl": "http://jedediah.net", + "License": "Try to back up the THX interface, maybe it will back up the auxiliary interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Factors Assistant", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://ernestine.net", + "License": "Try to compress the SMS bus, maybe it will compress the bluetooth bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Interactions Analyst", + "PackageVersion": "3.0.8", + "PackageProjectUrl": "http://logan.net", + "License": "You can\u0027t parse the hard drive without generating the digital AGP hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Metrics Analyst", + "PackageVersion": "4.6.0", + "PackageProjectUrl": "http://nathaniel.name", + "License": "overriding the interface won\u0027t do anything, we need to connect the digital GB interface!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Accountability Specialist", + "PackageVersion": "0.8.7", + "PackageProjectUrl": "http://kristina.info", + "License": "We need to input the cross-platform RAM system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Usability Manager", + "PackageVersion": "0.3.8", + "PackageProjectUrl": "http://myriam.name", + "License": "quantifying the card won\u0027t do anything, we need to navigate the virtual USB card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Tactics Executive", + "PackageVersion": "6.2.9", + "PackageProjectUrl": "https://maxwell.name", + "License": "I\u0027ll transmit the online TCP driver, that should driver the TCP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Accountability Facilitator", + "PackageVersion": "2.1.4", + "PackageProjectUrl": "https://dillan.net", + "License": "Use the back-end XML protocol, then you can reboot the back-end protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Quality Director", + "PackageVersion": "5.3.0", + "PackageProjectUrl": "http://hyman.com", + "License": "Use the redundant AI alarm, then you can transmit the redundant alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Web Specialist", + "PackageVersion": "7.4.0", + "PackageProjectUrl": "http://keely.net", + "License": "navigating the monitor won\u0027t do anything, we need to input the wireless JSON monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Accountability Orchestrator", + "PackageVersion": "2.6.2", + "PackageProjectUrl": "https://tre.org", + "License": "You can\u0027t connect the panel without bypassing the bluetooth SSL panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "International Metrics Officer", + "PackageVersion": "3.7.1", + "PackageProjectUrl": "https://myrl.info", + "License": "hacking the array won\u0027t do anything, we need to back up the haptic IB array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Data Administrator", + "PackageVersion": "9.0.6", + "PackageProjectUrl": "https://michelle.org", + "License": "Try to connect the XSS alarm, maybe it will connect the auxiliary alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Data Strategist", + "PackageVersion": "3.5.3", + "PackageProjectUrl": "https://sedrick.biz", + "License": "I\u0027ll transmit the optical USB program, that should program the USB program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Accountability Assistant", + "PackageVersion": "2.7.5", + "PackageProjectUrl": "http://barney.com", + "License": "You can\u0027t program the alarm without overriding the cross-platform RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Integration Officer", + "PackageVersion": "3.3.6", + "PackageProjectUrl": "https://howard.org", + "License": "Use the primary PNG matrix, then you can copy the primary matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Group Technician", + "PackageVersion": "9.8.2", + "PackageProjectUrl": "https://sandrine.name", + "License": "programming the system won\u0027t do anything, we need to synthesize the primary AGP system!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Lead Factors Planner", + "PackageVersion": "1.0.4", + "PackageProjectUrl": "http://mikayla.com", + "License": "You can\u0027t compress the driver without calculating the back-end SQL driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Corporate Data Assistant", + "PackageVersion": "7.9.8", + "PackageProjectUrl": "http://arlene.biz", + "License": "Try to generate the SMTP feed, maybe it will generate the online feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Functionality Associate", + "PackageVersion": "9.4.1", + "PackageProjectUrl": "https://bonita.biz", + "License": "I\u0027ll hack the redundant SCSI monitor, that should monitor the SCSI monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Research Representative", + "PackageVersion": "1.6.9", + "PackageProjectUrl": "https://carol.org", + "License": "You can\u0027t copy the alarm without synthesizing the 1080p IB alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Accounts Specialist", + "PackageVersion": "4.9.2", + "PackageProjectUrl": "https://wilfredo.biz", + "License": "The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Program Facilitator", + "PackageVersion": "2.7.4", + "PackageProjectUrl": "https://vida.net", + "License": "I\u0027ll navigate the mobile TCP bus, that should bus the TCP bus!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Investor Division Planner", + "PackageVersion": "1.4.6", + "PackageProjectUrl": "https://evelyn.info", + "License": "I\u0027ll hack the solid state JSON sensor, that should sensor the JSON sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Response Planner", + "PackageVersion": "7.8.0", + "PackageProjectUrl": "https://hertha.org", + "License": "Try to synthesize the PNG application, maybe it will synthesize the auxiliary application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Accountability Administrator", + "PackageVersion": "5.9.9", + "PackageProjectUrl": "http://julio.info", + "License": "Use the neural IB matrix, then you can generate the neural matrix!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Branding Orchestrator", + "PackageVersion": "0.2.6", + "PackageProjectUrl": "https://keeley.net", + "License": "We need to bypass the back-end FTP alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Infrastructure Orchestrator", + "PackageVersion": "5.0.6", + "PackageProjectUrl": "http://forrest.com", + "License": "If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Forward Infrastructure Specialist", + "PackageVersion": "6.1.6", + "PackageProjectUrl": "http://melisa.com", + "License": "quantifying the driver won\u0027t do anything, we need to synthesize the neural PNG driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Directives Analyst", + "PackageVersion": "9.3.0", + "PackageProjectUrl": "http://bridie.biz", + "License": "Try to navigate the SCSI firewall, maybe it will navigate the digital firewall!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Group Director", + "PackageVersion": "2.3.4", + "PackageProjectUrl": "https://luna.info", + "License": "I\u0027ll synthesize the open-source RSS firewall, that should firewall the RSS firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Regional Branding Facilitator", + "PackageVersion": "0.3.9", + "PackageProjectUrl": "https://otilia.info", + "License": "We need to connect the optical SQL capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Configuration Planner", + "PackageVersion": "2.6.3", + "PackageProjectUrl": "http://willis.name", + "License": "connecting the circuit won\u0027t do anything, we need to copy the online EXE circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Assurance Consultant", + "PackageVersion": "5.6.2", + "PackageProjectUrl": "https://eryn.org", + "License": "Use the digital IB alarm, then you can program the digital alarm!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "District Interactions Developer", + "PackageVersion": "9.9.4", + "PackageProjectUrl": "http://adrien.biz", + "License": "I\u0027ll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Optimization Director", + "PackageVersion": "0.1.8", + "PackageProjectUrl": "https://crystal.info", + "License": "We need to transmit the back-end PCI panel!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Principal Solutions Supervisor", + "PackageVersion": "6.1.2", + "PackageProjectUrl": "https://ari.biz", + "License": "programming the driver won\u0027t do anything, we need to parse the 1080p AGP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Paradigm Director", + "PackageVersion": "6.3.8", + "PackageProjectUrl": "http://kiera.org", + "License": "Use the wireless THX array, then you can connect the wireless array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Group Designer", + "PackageVersion": "3.0.6", + "PackageProjectUrl": "http://keyshawn.net", + "License": "We need to copy the cross-platform SAS panel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Intranet Assistant", + "PackageVersion": "2.8.1", + "PackageProjectUrl": "https://chance.name", + "License": "You can\u0027t parse the bandwidth without quantifying the wireless THX bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Product Security Developer", + "PackageVersion": "4.4.5", + "PackageProjectUrl": "https://maida.org", + "License": "parsing the driver won\u0027t do anything, we need to parse the primary TCP driver!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Paradigm Administrator", + "PackageVersion": "5.5.2", + "PackageProjectUrl": "http://trace.net", + "License": "Try to reboot the SMS feed, maybe it will reboot the bluetooth feed!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Product Interactions Executive", + "PackageVersion": "5.4.8", + "PackageProjectUrl": "https://maye.org", + "License": "We need to override the auxiliary AGP firewall!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Central Creative Analyst", + "PackageVersion": "3.6.4", + "PackageProjectUrl": "http://abigayle.net", + "License": "programming the driver won\u0027t do anything, we need to calculate the primary SMTP driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Division Assistant", + "PackageVersion": "0.9.4", + "PackageProjectUrl": "http://emerson.info", + "License": "The SMTP card is down, transmit the virtual card so we can transmit the SMTP card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Brand Officer", + "PackageVersion": "1.1.5", + "PackageProjectUrl": "https://shayne.name", + "License": "If we transmit the application, we can get to the SAS application through the wireless SAS application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Global Usability Manager", + "PackageVersion": "6.7.0", + "PackageProjectUrl": "https://alexandra.info", + "License": "We need to parse the mobile SCSI protocol!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Chief Markets Agent", + "PackageVersion": "8.8.4", + "PackageProjectUrl": "http://dayana.name", + "License": "I\u0027ll hack the optical COM alarm, that should alarm the COM alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Human Configuration Assistant", + "PackageVersion": "0.1.1", + "PackageProjectUrl": "https://aurelia.info", + "License": "We need to hack the mobile SMS circuit!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Direct Group Consultant", + "PackageVersion": "8.8.0", + "PackageProjectUrl": "https://alana.org", + "License": "I\u0027ll index the neural SDD bus, that should bus the SDD bus!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Senior Implementation Associate", + "PackageVersion": "8.2.9", + "PackageProjectUrl": "http://roderick.org", + "License": "synthesizing the bandwidth won\u0027t do anything, we need to generate the wireless ADP bandwidth!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Research Producer", + "PackageVersion": "2.8.3", + "PackageProjectUrl": "https://sonia.org", + "License": "backing up the monitor won\u0027t do anything, we need to quantify the back-end CSS monitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Legacy Accountability Agent", + "PackageVersion": "5.8.2", + "PackageProjectUrl": "http://chelsea.com", + "License": "I\u0027ll compress the auxiliary XSS port, that should port the XSS port!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "District Group Associate", + "PackageVersion": "4.0.1", + "PackageProjectUrl": "https://noemi.info", + "License": "We need to transmit the redundant TCP panel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Future Factors Representative", + "PackageVersion": "9.2.0", + "PackageProjectUrl": "https://jazmin.org", + "License": "Use the solid state SDD application, then you can navigate the solid state application!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Customer Applications Developer", + "PackageVersion": "5.6.1", + "PackageProjectUrl": "http://kiley.org", + "License": "We need to connect the bluetooth RAM application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Direct Data Consultant", + "PackageVersion": "6.3.3", + "PackageProjectUrl": "https://heath.name", + "License": "Use the haptic XML driver, then you can index the haptic driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Internal Division Agent", + "PackageVersion": "2.4.2", + "PackageProjectUrl": "http://armani.name", + "License": "Try to compress the TCP microchip, maybe it will compress the auxiliary microchip!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Direct Research Assistant", + "PackageVersion": "5.9.7", + "PackageProjectUrl": "http://danial.org", + "License": "Try to connect the TCP circuit, maybe it will connect the back-end circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Legacy Optimization Assistant", + "PackageVersion": "8.8.2", + "PackageProjectUrl": "https://scot.info", + "License": "The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Administrator", + "PackageVersion": "9.2.8", + "PackageProjectUrl": "https://brett.biz", + "License": "The FTP card is down, index the digital card so we can index the FTP card!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Human Directives Specialist", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "http://tabitha.name", + "License": "I\u0027ll reboot the virtual CSS program, that should program the CSS program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Forward Web Assistant", + "PackageVersion": "3.5.5", + "PackageProjectUrl": "https://tremayne.org", + "License": "The COM array is down, calculate the open-source array so we can calculate the COM array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Operations Liaison", + "PackageVersion": "1.1.0", + "PackageProjectUrl": "http://tabitha.com", + "License": "You can\u0027t generate the array without quantifying the open-source PCI array!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Accountability Coordinator", + "PackageVersion": "5.5.0", + "PackageProjectUrl": "http://erling.name", + "License": "Try to back up the COM driver, maybe it will back up the bluetooth driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Product Marketing Strategist", + "PackageVersion": "0.1.7", + "PackageProjectUrl": "http://melany.name", + "License": "I\u0027ll copy the auxiliary SSL interface, that should interface the SSL interface!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Corporate Intranet Analyst", + "PackageVersion": "0.9.0", + "PackageProjectUrl": "https://creola.info", + "License": "indexing the interface won\u0027t do anything, we need to bypass the optical HDD interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Security Representative", + "PackageVersion": "4.3.4", + "PackageProjectUrl": "https://velva.name", + "License": "The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Senior Brand Analyst", + "PackageVersion": "2.5.0", + "PackageProjectUrl": "http://danial.name", + "License": "overriding the interface won\u0027t do anything, we need to override the virtual THX interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Directives Designer", + "PackageVersion": "0.4.8", + "PackageProjectUrl": "http://mable.net", + "License": "Use the virtual AI capacitor, then you can navigate the virtual capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Dynamic Division Consultant", + "PackageVersion": "4.8.7", + "PackageProjectUrl": "https://jack.net", + "License": "The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Data Consultant", + "PackageVersion": "6.5.0", + "PackageProjectUrl": "https://delilah.org", + "License": "generating the driver won\u0027t do anything, we need to hack the auxiliary HDD driver!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Regional Tactics Technician", + "PackageVersion": "7.6.7", + "PackageProjectUrl": "http://alvena.net", + "License": "If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Legacy Implementation Assistant", + "PackageVersion": "2.1.6", + "PackageProjectUrl": "https://liana.net", + "License": "Use the auxiliary RSS sensor, then you can program the auxiliary sensor!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Functionality Manager", + "PackageVersion": "5.9.0", + "PackageProjectUrl": "https://mariane.info", + "License": "The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Senior Operations Engineer", + "PackageVersion": "3.1.8", + "PackageProjectUrl": "http://montana.name", + "License": "If we program the array, we can get to the JBOD array through the primary JBOD array!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt new file mode 100644 index 00000000..097a2b67 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt @@ -0,0 +1,142 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Assurance Representative", + "PackageVersion": "2.0.7", + "PackageProjectUrl": "http://kelley.com", + "License": "transmitting the capacitor won\u0027t do anything, we need to synthesize the back-end RAM capacitor!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "National Tactics Liaison", + "PackageVersion": "6.8.9", + "PackageProjectUrl": "http://jillian.net", + "License": "hacking the capacitor won\u0027t do anything, we need to compress the digital AGP capacitor!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Global Implementation Engineer", + "PackageVersion": "6.0.7", + "PackageProjectUrl": "http://antonette.org", + "License": "I\u0027ll calculate the 1080p HDD system, that should system the HDD system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Integration Executive", + "PackageVersion": "6.6.8", + "PackageProjectUrl": "http://grayce.info", + "License": "You can\u0027t index the protocol without indexing the open-source XML protocol!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Customer Infrastructure Planner", + "PackageVersion": "6.6.0", + "PackageProjectUrl": "https://laurie.biz", + "License": "If we program the pixel, we can get to the SMS pixel through the neural SMS pixel!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "Dynamic Program Administrator", + "PackageVersion": "9.8.6", + "PackageProjectUrl": "https://malcolm.net", + "License": "I\u0027ll quantify the bluetooth SQL circuit, that should circuit the SQL circuit!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Infrastructure Liaison", + "PackageVersion": "0.8.0", + "PackageProjectUrl": "https://otho.biz", + "License": "Use the haptic RSS hard drive, then you can back up the haptic hard drive!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Research Associate", + "PackageVersion": "4.6.5", + "PackageProjectUrl": "http://wilmer.name", + "License": "I\u0027ll navigate the neural SAS card, that should card the SAS card!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Central Creative Manager", + "PackageVersion": "8.4.8", + "PackageProjectUrl": "https://carleton.info", + "License": "Use the cross-platform THX system, then you can generate the cross-platform system!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Internal Operations Executive", + "PackageVersion": "1.8.1", + "PackageProjectUrl": "http://angel.info", + "License": "We need to back up the solid state XML application!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Corporate Marketing Associate", + "PackageVersion": "3.3.2", + "PackageProjectUrl": "http://nash.name", + "License": "I\u0027ll program the auxiliary XSS bus, that should bus the XSS bus!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "District Intranet Strategist", + "PackageVersion": "2.2.2", + "PackageProjectUrl": "http://everett.name", + "License": "We need to reboot the virtual RSS alarm!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Customer Assurance Officer", + "PackageVersion": "0.3.1", + "PackageProjectUrl": "https://kyla.biz", + "License": "Try to override the EXE program, maybe it will override the mobile program!", + "LicenseInformationOrigin": 1 + }, + { + "PackageId": "National Tactics Architect", + "PackageVersion": "6.7.8", + "PackageProjectUrl": "https://valentina.net", + "License": "The PNG protocol is down, index the digital protocol so we can index the PNG protocol!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Chief Integration Architect", + "PackageVersion": "1.6.8", + "PackageProjectUrl": "https://davion.net", + "License": "Try to override the TCP firewall, maybe it will override the solid state firewall!", + "LicenseInformationOrigin": 1 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt new file mode 100644 index 00000000..2b3e0544 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/JsonOutputFormatterTest(True,True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt @@ -0,0 +1,37 @@ +[ + { + "PackageId": "Legacy Metrics Planner", + "PackageVersion": "9.5.0", + "PackageProjectUrl": "http://madisyn.name", + "License": "I\u0027ll override the haptic AGP feed, that should feed the AGP feed!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "International Mobility Technician", + "PackageVersion": "3.7.5", + "PackageProjectUrl": "https://jayne.name", + "License": "I\u0027ll override the digital SMTP interface, that should interface the SMTP interface!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Principal Markets Executive", + "PackageVersion": "4.2.2", + "PackageProjectUrl": "https://bettie.com", + "License": "Try to generate the EXE array, maybe it will generate the mobile array!", + "LicenseInformationOrigin": 2 + }, + { + "PackageId": "Future Identity Specialist", + "PackageVersion": "4.7.4", + "PackageProjectUrl": "http://della.biz", + "License": "If we back up the driver, we can get to the AI driver through the bluetooth AI driver!", + "LicenseInformationOrigin": 0 + }, + { + "PackageId": "Forward Functionality Designer", + "PackageVersion": "5.5.7", + "PackageProjectUrl": "https://jasen.biz", + "License": "Use the redundant AGP monitor, then you can generate the redundant monitor!", + "LicenseInformationOrigin": 0 + } +] \ No newline at end of file diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt deleted file mode 100644 index d97a4970..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=0.verified.txt +++ /dev/null @@ -1,4 +0,0 @@ -+---------+---------+---------+--------------+ -| Context | Package | Version | LicenseError | -+---------+---------+---------+--------------+ -+---------+---------+---------+--------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt deleted file mode 100644 index 29511a90..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=1.verified.txt +++ /dev/null @@ -1,5 +0,0 @@ -+----------------------------+----------------+---------+--------------------------+ -| Context | Package | Version | LicenseError | -+----------------------------+----------------+---------+--------------------------+ -| /var/spool/direct.unityweb | Evelyn Dibbert | 5.8.9 | Unde sint nostrum quasi. | -+----------------------------+----------------+---------+--------------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt deleted file mode 100644 index b55a9849..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=20.verified.txt +++ /dev/null @@ -1,24 +0,0 @@ -+-----------------------------------------------------+---------------------+---------+------------------------------------------------------------------------------+ -| Context | Package | Version | LicenseError | -+-----------------------------------------------------+---------------------+---------+------------------------------------------------------------------------------+ -| /var/spool/direct.unityweb | Evelyn Dibbert | 5.8.9 | Unde sint nostrum quasi. | -| /home/mobile_navigating.ipfix | Otho Kirlin | 3.7.8 | Quam exercitationem sunt praesentium qui possimus et. | -| /home/user/dir/compress_purple_enhance.rdf | Addie Will | 9.8.3 | Dolor recusandae adipisci soluta sequi. | -| /var/mail/run_system.sv4crc | Beth Marquardt | 8.7.1 | Quidem voluptas autem possimus provident repellendus libero ipsa temporibus. | -| /usr/networks_rustic_steel_hat.xdp | Dianna Rau | 6.7.7 | Accusantium provident placeat deleniti dolore. | -| /usr/scalable.ez2 | Cynthia Labadie | 9.0.4 | Perferendis fugit ratione aut consequatur voluptatem. | -| /var/bahrain_handmade_granite_table.air | Tessie Bogan | 0.7.9 | Consectetur autem quia. | -| /opt/sbin/home_loan_account.sid | Makenzie Bechtelar | 4.7.8 | Corrupti sunt hic ea impedit dolorum laboriosam ut. | -| /etc/ppp/south_carolina_optimize.qbo | Hazle Yost | 2.4.3 | Quia accusantium eum quo nihil laboriosam officia nulla perferendis. | -| /selinux/credit_card_account_withdrawal_metal.gml | Gene Price | 2.6.5 | Quis et et cupiditate et et adipisci aliquid atque aut. | -| /etc/periodic/nebraska_shoes.rtf | Catherine Bashirian | 5.1.6 | Hic veniam laboriosam enim accusantium tempore. | -| /sys/liechtenstein_berkshire_bypassing.ttf | Valentin Hodkiewicz | 5.1.8 | Quibusdam sunt consequuntur voluptatem aspernatur hic aspernatur. | -| /opt/share/collaboration_common.pgn | Vida Reinger | 9.3.8 | Qui eaque inventore inventore ut. | -| /opt/share/cuba_invoice_licensed_fresh_keyboard.xop | Craig Fritsch | 9.7.5 | Aperiam modi ad et maxime. | -| /private/var/multi_channelled_eco_centric.vcd | Amely Rowe | 5.0.4 | Voluptatem sunt modi illum quis qui et amet. | -| /opt/sbin/pakistan.n_gage | Astrid Ryan | 1.0.8 | Cum optio consectetur aut asperiores sed qui est tempora. | -| /usr/sbin/purple_compress.rmvb | Tomasa Bechtelar | 2.9.1 | Natus architecto iure. | -| /usr/bin/ssl_optical_synthesize.hps | Prudence Will | 0.6.2 | Natus esse in sit accusantium illo consequatur. | -| /var/auto_loan_account.scq | Otis Turner | 6.6.1 | Dolores quis nihil. | -| /usr/sbin/wall_home_loan_account.jsx | Vivian Halvorson | 3.2.8 | Quis quo corrupti incidunt ab suscipit laboriosam. | -+-----------------------------------------------------+---------------------+---------+------------------------------------------------------------------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt deleted file mode 100644 index 8575ed90..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.Errors_Should_PrintCorrectTable_errorCount=5.verified.txt +++ /dev/null @@ -1,9 +0,0 @@ -+--------------------------------------------+----------------+---------+------------------------------------------------------------------------------+ -| Context | Package | Version | LicenseError | -+--------------------------------------------+----------------+---------+------------------------------------------------------------------------------+ -| /var/spool/direct.unityweb | Evelyn Dibbert | 5.8.9 | Unde sint nostrum quasi. | -| /home/mobile_navigating.ipfix | Otho Kirlin | 3.7.8 | Quam exercitationem sunt praesentium qui possimus et. | -| /home/user/dir/compress_purple_enhance.rdf | Addie Will | 9.8.3 | Dolor recusandae adipisci soluta sequi. | -| /var/mail/run_system.sv4crc | Beth Marquardt | 8.7.1 | Quidem voluptas autem possimus provident repellendus libero ipsa temporibus. | -| /usr/networks_rustic_steel_hat.xdp | Dianna Rau | 6.7.7 | Accusantium provident placeat deleniti dolore. | -+--------------------------------------------+----------------+---------+------------------------------------------------------------------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt deleted file mode 100644 index 7883c51d..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt +++ /dev/null @@ -1,4 +0,0 @@ -+---------+---------+----------------------------+--------------------+ -| Package | Version | License Information Origin | License Expression | -+---------+---------+----------------------------+--------------------+ -+---------+---------+----------------------------+--------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt deleted file mode 100644 index 3eff3ca4..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt +++ /dev/null @@ -1,5 +0,0 @@ -+------------------------+---------+----------------------------+-----------------------------------------------+ -| Package | Version | License Information Origin | License Expression | -+------------------------+---------+----------------------------+-----------------------------------------------+ -| Legacy Metrics Planner | 9.5.0 | Url | We need to generate the multi-byte SMTP port! | -+------------------------+---------+----------------------------+-----------------------------------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt deleted file mode 100644 index b58192e0..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt +++ /dev/null @@ -1,104 +0,0 @@ -+-----------------------------------------+---------+----------------------------+------------------------------------------------------------------------------------------------------------+ -| Package | Version | License Information Origin | License Expression | -+-----------------------------------------+---------+----------------------------+------------------------------------------------------------------------------------------------------------+ -| Legacy Metrics Planner | 9.5.0 | Url | We need to generate the multi-byte SMTP port! | -| International Implementation Consultant | 6.7.6 | Url | Try to generate the PNG sensor, maybe it will generate the haptic sensor! | -| Dynamic Implementation Orchestrator | 3.1.0 | Url | I'll override the primary AI program, that should program the AI program! | -| Direct Program Director | 5.9.9 | Expression | Try to copy the EXE array, maybe it will copy the solid state array! | -| Legacy Markets Coordinator | 2.3.0 | Url | You can't override the driver without backing up the redundant THX driver! | -| Future Infrastructure Planner | 5.7.5 | Url | You can't parse the system without compressing the haptic GB system! | -| Customer Directives Director | 7.9.2 | Expression | If we program the driver, we can get to the USB driver through the virtual USB driver! | -| Direct Creative Representative | 7.0.3 | Url | Try to navigate the RAM capacitor, maybe it will navigate the wireless capacitor! | -| Forward Configuration Engineer | 2.1.9 | Expression | Try to synthesize the COM port, maybe it will synthesize the haptic port! | -| Legacy Research Associate | 9.9.5 | Expression | The THX program is down, transmit the redundant program so we can transmit the THX program! | -| Direct Branding Orchestrator | 8.3.3 | Expression | You can't bypass the sensor without overriding the online ADP sensor! | -| Senior Intranet Designer | 5.6.6 | Url | If we synthesize the protocol, we can get to the JBOD protocol through the multi-byte JBOD protocol! | -| National Communications Facilitator | 3.1.0 | Url | You can't calculate the matrix without generating the optical JSON matrix! | -| Human Response Technician | 2.8.5 | Expression | I'll transmit the haptic COM protocol, that should protocol the COM protocol! | -| Customer Accounts Engineer | 5.4.5 | Expression | We need to hack the auxiliary COM hard drive! | -| District Branding Analyst | 1.9.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | -| Central Creative Manager | 8.4.8 | Expression | Use the online GB alarm, then you can navigate the online alarm! | -| District Operations Manager | 8.5.0 | Expression | We need to navigate the back-end IB protocol! | -| Central Interactions Manager | 7.0.9 | Expression | We need to compress the primary GB array! | -| Legacy Intranet Agent | 9.0.8 | Expression | navigating the pixel won't do anything, we need to parse the back-end IB pixel! | -| Future Implementation Architect | 3.5.1 | Url | You can't input the capacitor without quantifying the virtual SQL capacitor! | -| International Directives Supervisor | 3.1.8 | Expression | Use the cross-platform CSS capacitor, then you can override the cross-platform capacitor! | -| Dynamic Optimization Director | 3.4.6 | Url | parsing the feed won't do anything, we need to input the wireless SAS feed! | -| Corporate Data Associate | 4.9.9 | Expression | We need to transmit the back-end RSS transmitter! | -| International Identity Supervisor | 8.6.5 | Expression | We need to parse the mobile PCI capacitor! | -| Product Factors Producer | 0.2.3 | Url | The AI panel is down, reboot the wireless panel so we can reboot the AI panel! | -| Principal Factors Producer | 0.8.5 | Expression | Use the solid state SSL transmitter, then you can transmit the solid state transmitter! | -| Corporate Infrastructure Administrator | 2.8.0 | Expression | You can't hack the feed without compressing the bluetooth PNG feed! | -| Central Marketing Assistant | 9.5.8 | Expression | I'll reboot the haptic SDD pixel, that should pixel the SDD pixel! | -| District Group Representative | 3.5.9 | Url | We need to connect the digital XSS matrix! | -| Senior Optimization Assistant | 3.6.0 | Url | I'll reboot the auxiliary PCI interface, that should interface the PCI interface! | -| Chief Configuration Manager | 6.3.8 | Url | Try to compress the SMS bus, maybe it will compress the bluetooth bus! | -| Legacy Interactions Analyst | 3.0.8 | Url | You can't override the port without indexing the neural THX port! | -| Global Usability Producer | 4.9.5 | Url | You can't quantify the monitor without copying the auxiliary SMTP monitor! | -| Corporate Implementation Engineer | 4.4.9 | Expression | If we synthesize the circuit, we can get to the SCSI circuit through the virtual SCSI circuit! | -| Customer Division Manager | 1.3.9 | Expression | You can't compress the capacitor without copying the virtual USB capacitor! | -| National Creative Executive | 7.5.7 | Expression | The SQL interface is down, index the bluetooth interface so we can index the SQL interface! | -| National Security Developer | 2.9.8 | Expression | The THX sensor is down, reboot the solid state sensor so we can reboot the THX sensor! | -| Forward Research Strategist | 8.8.2 | Url | We need to generate the multi-byte RSS application! | -| Direct Metrics Associate | 9.1.8 | Expression | The PCI protocol is down, back up the multi-byte protocol so we can back up the PCI protocol! | -| Senior Operations Coordinator | 4.8.6 | Expression | quantifying the card won't do anything, we need to transmit the solid state EXE card! | -| Senior Functionality Designer | 7.8.9 | Url | The AI hard drive is down, back up the 1080p hard drive so we can back up the AI hard drive! | -| Investor Implementation Technician | 2.7.9 | Expression | generating the protocol won't do anything, we need to hack the digital AI protocol! | -| Direct Assurance Strategist | 1.3.7 | Url | We need to program the 1080p SMS transmitter! | -| Corporate Tactics Associate | 3.8.8 | Url | You can't synthesize the bus without generating the auxiliary XSS bus! | -| Regional Factors Supervisor | 8.6.4 | Expression | Use the neural PCI interface, then you can quantify the neural interface! | -| Internal Accountability Officer | 8.7.8 | Url | You can't program the array without connecting the neural SSL array! | -| Future Assurance Analyst | 1.1.1 | Url | You can't program the alarm without overriding the cross-platform RSS alarm! | -| Product Integration Officer | 3.3.6 | Url | connecting the application won't do anything, we need to bypass the mobile ADP application! | -| Principal Tactics Technician | 5.4.6 | Url | I'll calculate the open-source SAS bus, that should bus the SAS bus! | -| Future Security Agent | 4.6.5 | Expression | If we connect the protocol, we can get to the JSON protocol through the multi-byte JSON protocol! | -| International Research Coordinator | 2.1.7 | Url | If we transmit the transmitter, we can get to the SSL transmitter through the back-end SSL transmitter! | -| Principal Accountability Supervisor | 0.3.2 | Url | The XML firewall is down, generate the cross-platform firewall so we can generate the XML firewall! | -| Future Brand Representative | 4.1.6 | Url | If we reboot the system, we can get to the SQL system through the mobile SQL system! | -| Direct Web Orchestrator | 1.9.1 | Url | The JSON capacitor is down, connect the haptic capacitor so we can connect the JSON capacitor! | -| Legacy Accounts Technician | 3.4.8 | Url | parsing the card won't do anything, we need to synthesize the online SQL card! | -| Dynamic Quality Analyst | 0.9.5 | Url | We need to compress the back-end COM bus! | -| District Interactions Strategist | 7.9.0 | Expression | I'll calculate the optical SQL pixel, that should pixel the SQL pixel! | -| Customer Directives Architect | 6.6.3 | Expression | You can't connect the interface without parsing the solid state XSS interface! | -| National Tactics Specialist | 5.7.8 | Expression | If we transmit the card, we can get to the SMTP card through the redundant SMTP card! | -| Product Mobility Technician | 3.3.8 | Expression | You can't generate the bandwidth without parsing the mobile EXE bandwidth! | -| Global Configuration Consultant | 5.9.5 | Url | We need to compress the wireless USB driver! | -| Forward Infrastructure Consultant | 1.3.1 | Url | quantifying the port won't do anything, we need to generate the primary THX port! | -| Global Security Orchestrator | 3.3.1 | Url | If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit! | -| Forward Infrastructure Specialist | 6.1.6 | Url | If we transmit the application, we can get to the SMS application through the primary SMS application! | -| Lead Branding Developer | 4.1.5 | Expression | I'll copy the auxiliary PCI panel, that should panel the PCI panel! | -| Human Directives Engineer | 5.3.9 | Url | Try to connect the ADP array, maybe it will connect the virtual array! | -| Dynamic Division Agent | 4.2.8 | Expression | Use the back-end SMS feed, then you can program the back-end feed! | -| Regional Factors Designer | 7.4.1 | Url | Try to quantify the SCSI system, maybe it will quantify the 1080p system! | -| Internal Intranet Manager | 6.3.3 | Url | I'll generate the optical THX system, that should system the THX system! | -| Product Data Designer | 7.7.5 | Url | The SQL circuit is down, generate the haptic circuit so we can generate the SQL circuit! | -| Dynamic Directives Technician | 8.5.4 | Expression | I'll connect the mobile SMS sensor, that should sensor the SMS sensor! | -| National Accountability Administrator | 5.3.0 | Expression | Try to bypass the EXE card, maybe it will bypass the optical card! | -| Human Factors Manager | 3.2.3 | Expression | We need to parse the back-end EXE matrix! | -| Lead Communications Officer | 2.8.0 | Url | We need to back up the open-source PNG circuit! | -| Forward Response Specialist | 3.6.3 | Url | parsing the firewall won't do anything, we need to calculate the multi-byte PCI firewall! | -| Direct Tactics Analyst | 1.0.4 | Url | Use the primary PCI array, then you can quantify the primary array! | -| Future Creative Coordinator | 6.1.3 | Expression | Try to transmit the SQL program, maybe it will transmit the multi-byte program! | -| Investor Directives Technician | 4.6.6 | Url | The RAM port is down, bypass the mobile port so we can bypass the RAM port! | -| Central Applications Planner | 6.6.9 | Url | parsing the driver won't do anything, we need to parse the primary TCP driver! | -| Corporate Paradigm Administrator | 5.5.2 | Url | Try to calculate the XSS feed, maybe it will calculate the neural feed! | -| Dynamic Factors Designer | 2.9.0 | Expression | Use the optical RSS feed, then you can program the optical feed! | -| Future Program Liaison | 5.1.6 | Expression | You can't index the feed without copying the haptic SAS feed! | -| Lead Assurance Producer | 6.1.8 | Expression | If we transmit the system, we can get to the SMTP system through the virtual SMTP system! | -| Chief Division Director | 3.4.7 | Expression | The FTP transmitter is down, compress the auxiliary transmitter so we can compress the FTP transmitter! | -| Senior Directives Officer | 1.5.8 | Url | I'll override the primary XML monitor, that should monitor the XML monitor! | -| Internal Creative Analyst | 9.2.6 | Url | The SDD sensor is down, override the wireless sensor so we can override the SDD sensor! | -| Principal Assurance Associate | 9.3.9 | Expression | You can't bypass the sensor without transmitting the neural JSON sensor! | -| Customer Factors Planner | 8.6.6 | Expression | If we bypass the transmitter, we can get to the SMTP transmitter through the solid state SMTP transmitter! | -| Direct Operations Executive | 3.1.7 | Expression | I'll bypass the solid state SMS system, that should system the SMS system! | -| Legacy Data Facilitator | 0.9.0 | Expression | synthesizing the firewall won't do anything, we need to program the primary JBOD firewall! | -| Internal Brand Manager | 0.8.2 | Url | I'll connect the optical SQL transmitter, that should transmitter the SQL transmitter! | -| Forward Research Designer | 6.7.1 | Url | compressing the transmitter won't do anything, we need to reboot the optical SSL transmitter! | -| Forward Implementation Liaison | 0.7.5 | Expression | Use the optical USB firewall, then you can program the optical firewall! | -| Dynamic Directives Executive | 9.9.0 | Expression | Use the open-source SQL system, then you can index the open-source system! | -| Regional Security Officer | 9.7.3 | Expression | We need to transmit the redundant TCP panel! | -| Future Factors Representative | 9.2.0 | Expression | generating the bandwidth won't do anything, we need to reboot the solid state XML bandwidth! | -| Forward Tactics Planner | 5.4.6 | Expression | Use the digital SMTP hard drive, then you can program the digital hard drive! | -| Direct Branding Engineer | 7.4.9 | Url | If we copy the array, we can get to the SAS array through the neural SAS array! | -| District Intranet Designer | 4.5.0 | Expression | If we program the system, we can get to the AI system through the bluetooth AI system! | -+-----------------------------------------+---------+----------------------------+------------------------------------------------------------------------------------------------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt deleted file mode 100644 index d3607515..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt +++ /dev/null @@ -1,24 +0,0 @@ -+-----------------------------------------+---------+----------------------------+------------------------------------------------------------------------------------------------------+ -| Package | Version | License Information Origin | License Expression | -+-----------------------------------------+---------+----------------------------+------------------------------------------------------------------------------------------------------+ -| Legacy Metrics Planner | 9.5.0 | Url | We need to generate the multi-byte SMTP port! | -| International Implementation Consultant | 6.7.6 | Url | Try to generate the PNG sensor, maybe it will generate the haptic sensor! | -| Dynamic Implementation Orchestrator | 3.1.0 | Url | I'll override the primary AI program, that should program the AI program! | -| Direct Program Director | 5.9.9 | Expression | Try to copy the EXE array, maybe it will copy the solid state array! | -| Legacy Markets Coordinator | 2.3.0 | Url | You can't override the driver without backing up the redundant THX driver! | -| Future Infrastructure Planner | 5.7.5 | Url | You can't parse the system without compressing the haptic GB system! | -| Customer Directives Director | 7.9.2 | Expression | If we program the driver, we can get to the USB driver through the virtual USB driver! | -| Direct Creative Representative | 7.0.3 | Url | Try to navigate the RAM capacitor, maybe it will navigate the wireless capacitor! | -| Forward Configuration Engineer | 2.1.9 | Expression | Try to synthesize the COM port, maybe it will synthesize the haptic port! | -| Legacy Research Associate | 9.9.5 | Expression | The THX program is down, transmit the redundant program so we can transmit the THX program! | -| Direct Branding Orchestrator | 8.3.3 | Expression | You can't bypass the sensor without overriding the online ADP sensor! | -| Senior Intranet Designer | 5.6.6 | Url | If we synthesize the protocol, we can get to the JBOD protocol through the multi-byte JBOD protocol! | -| National Communications Facilitator | 3.1.0 | Url | You can't calculate the matrix without generating the optical JSON matrix! | -| Human Response Technician | 2.8.5 | Expression | I'll transmit the haptic COM protocol, that should protocol the COM protocol! | -| Customer Accounts Engineer | 5.4.5 | Expression | We need to hack the auxiliary COM hard drive! | -| District Branding Analyst | 1.9.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | -| Central Creative Manager | 8.4.8 | Expression | Use the online GB alarm, then you can navigate the online alarm! | -| District Operations Manager | 8.5.0 | Expression | We need to navigate the back-end IB protocol! | -| Central Interactions Manager | 7.0.9 | Expression | We need to compress the primary GB array! | -| Legacy Intranet Agent | 9.0.8 | Expression | navigating the pixel won't do anything, we need to parse the back-end IB pixel! | -+-----------------------------------------+---------+----------------------------+------------------------------------------------------------------------------------------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt deleted file mode 100644 index ab031344..00000000 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt +++ /dev/null @@ -1,9 +0,0 @@ -+-----------------------------------------+---------+----------------------------+----------------------------------------------------------------------------+ -| Package | Version | License Information Origin | License Expression | -+-----------------------------------------+---------+----------------------------+----------------------------------------------------------------------------+ -| Legacy Metrics Planner | 9.5.0 | Url | We need to generate the multi-byte SMTP port! | -| International Implementation Consultant | 6.7.6 | Url | Try to generate the PNG sensor, maybe it will generate the haptic sensor! | -| Dynamic Implementation Orchestrator | 3.1.0 | Url | I'll override the primary AI program, that should program the AI program! | -| Direct Program Director | 5.9.9 | Expression | Try to copy the EXE array, maybe it will copy the solid state array! | -| Legacy Markets Coordinator | 2.3.0 | Url | You can't override the driver without backing up the redundant THX driver! | -+-----------------------------------------+---------+----------------------------+----------------------------------------------------------------------------+ diff --git a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.cs b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.cs index 7adb895f..655302bc 100644 --- a/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.cs +++ b/tests/NuGetUtility.Test/Output/Table/TableOutputFormatterTest.cs @@ -1,55 +1,20 @@ -using Bogus; -using NuGet.Versioning; -using NuGetUtility.LicenseValidator; -using NuGetUtility.Output; +using NuGetUtility.Output; using NuGetUtility.Output.Table; -using NuGetUtility.Test.Extensions; namespace NuGetUtility.Test.Output.Table { - [TestFixture] - public class TableOutputFormatterTest + [TestFixture(false)] + [TestFixture(true)] + public class TableOutputFormatterTest : TestBase { - [SetUp] - public void SetUp() + private readonly bool _omitValidLicensesOnError; + public TableOutputFormatterTest(bool omitValidLicensesOnError) { - _validatedLicenseFaker = new Faker().CustomInstantiator(f => - new ValidatedLicense(f.Name.JobTitle(), - new NuGetVersion(f.System.Semver()), - f.Hacker.Phrase(), - f.Random.Enum())) - .UseSeed(8675309); - _licenseValidationErrorFaker = new Faker().CustomInstantiator(f => - new LicenseValidationError(f.System.FilePath(), - f.Name.FullName(), - new NuGetVersion(f.System.Semver()), - f.Lorem.Sentence())) - .UseSeed(9078345); - _uut = new TableOutputFormatter(); + _omitValidLicensesOnError = omitValidLicensesOnError; } - private IOutputFormatter _uut = null!; - private Faker _validatedLicenseFaker = null!; - private Faker _licenseValidationErrorFaker = null!; - - [Test] - public async Task Errors_Should_PrintCorrectTable([Values(0, 1, 5, 20)] int errorCount) - { - using var stream = new MemoryStream(); - var errors = _licenseValidationErrorFaker.GenerateForever().Take(errorCount); - await _uut.Write(stream, errors); - - await Verify(stream.AsString()); - } - - [Test] - public async Task ValidatedLicenses_Should_PrintCorrectTable( - [Values(0, 1, 5, 20, 100)] int validatedLicenseCount) + protected override IOutputFormatter CreateUut() { - using var stream = new MemoryStream(); - var validated = _validatedLicenseFaker.GenerateForever().Take(validatedLicenseCount); - await _uut.Write(stream, validated); - - await Verify(stream.AsString()); + return new TableOutputFormatter(_omitValidLicensesOnError); } } } diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt new file mode 100644 index 00000000..c5e2cf3c --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt @@ -0,0 +1,8 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | Judson | https://wilson.net | +| | | | | Guadalupe | http://otho.info | +| | | | | General | https://skylar.name | +| | | | | Haylie | http://audreanne.info | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt new file mode 100644 index 00000000..3ec89b6f --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt @@ -0,0 +1,134 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt new file mode 100644 index 00000000..d5ef80c4 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt @@ -0,0 +1,22 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt new file mode 100644 index 00000000..3ea09138 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt @@ -0,0 +1,35 @@ ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt new file mode 100644 index 00000000..4069a7fd --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt @@ -0,0 +1,108 @@ ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-----------+-----------------------+ +| Central Data Consultant | 6.5.0 | Url | generating the driver won't do anything, we need to hack the auxiliary HDD driver! | https://delilah.org | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Central Creative Analyst | 3.6.4 | Expression | programming the driver won't do anything, we need to calculate the primary SMTP driver! | http://abigayle.net | | | +| Human Optimization Director | 0.1.8 | Unknown | We need to transmit the back-end PCI panel! | https://crystal.info | | | +| Forward Infrastructure Specialist | 6.1.6 | Unknown | quantifying the driver won't do anything, we need to synthesize the neural PNG driver! | http://melisa.com | | | +| Direct Research Assistant | 5.9.7 | Unknown | Try to connect the TCP circuit, maybe it will connect the back-end circuit! | http://danial.org | | | +| Internal Division Agent | 2.4.2 | Expression | Try to compress the TCP microchip, maybe it will compress the auxiliary microchip! | http://armani.name | | | +| Corporate Data Assistant | 7.9.8 | Url | Try to generate the SMTP feed, maybe it will generate the online feed! | http://arlene.biz | | | +| Human Directives Specialist | 4.3.4 | Url | I'll reboot the virtual CSS program, that should program the CSS program! | http://tabitha.name | | | +| Legacy Accountability Coordinator | 5.5.0 | Expression | Try to back up the COM driver, maybe it will back up the bluetooth driver! | http://erling.name | | | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Product Marketing Strategist | 0.1.7 | Url | I'll copy the auxiliary SSL interface, that should interface the SSL interface! | http://melany.name | | | +| District Directives Analyst | 9.3.0 | Unknown | Try to navigate the SCSI firewall, maybe it will navigate the digital firewall! | http://bridie.biz | | | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| Regional Tactics Technician | 7.6.7 | Expression | If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall! | http://alvena.net | | | +| Corporate Intranet Analyst | 0.9.0 | Expression | indexing the interface won't do anything, we need to bypass the optical HDD interface! | https://creola.info | | | +| Product Infrastructure Orchestrator | 5.0.6 | Unknown | If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit! | http://forrest.com | | | +| Corporate Program Facilitator | 2.7.4 | Url | I'll navigate the mobile TCP bus, that should bus the TCP bus! | https://vida.net | | | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | +| International Metrics Officer | 3.7.1 | Expression | hacking the array won't do anything, we need to back up the haptic IB array! | https://myrl.info | | | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| Chief Markets Agent | 8.8.4 | Unknown | I'll hack the optical COM alarm, that should alarm the COM alarm! | http://dayana.name | | | +| Forward Data Administrator | 9.0.6 | Url | Try to connect the XSS alarm, maybe it will connect the auxiliary alarm! | https://michelle.org | | | +| Customer Applications Developer | 5.6.1 | Unknown | We need to connect the bluetooth RAM application! | http://kiley.org | | | +| Senior Brand Analyst | 2.5.0 | Expression | overriding the interface won't do anything, we need to override the virtual THX interface! | http://danial.name | | | +| Legacy Interactions Analyst | 3.0.8 | Unknown | You can't parse the hard drive without generating the digital AGP hard drive! | http://logan.net | | | +| Senior Operations Engineer | 3.1.8 | Expression | If we program the array, we can get to the JBOD array through the primary JBOD array! | http://montana.name | | | +| Future Factors Representative | 9.2.0 | Url | Use the solid state SDD application, then you can navigate the solid state application! | https://jazmin.org | | | +| Customer Group Technician | 9.8.2 | Url | programming the system won't do anything, we need to synthesize the primary AGP system! | https://sandrine.name | | | +| Regional Accountability Assistant | 2.7.5 | Unknown | You can't program the alarm without overriding the cross-platform RSS alarm! | http://barney.com | | | +| Legacy Optimization Assistant | 8.8.2 | Url | The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor! | https://scot.info | | | +| Product Paradigm Director | 6.3.8 | Expression | Use the wireless THX array, then you can connect the wireless array! | http://kiera.org | | | +| Forward Web Assistant | 3.5.5 | Expression | The COM array is down, calculate the open-source array so we can calculate the COM array! | https://tremayne.org | | | +| Lead Factors Planner | 1.0.4 | Expression | You can't compress the driver without calculating the back-end SQL driver! | http://mikayla.com | | | +| Regional Data Strategist | 3.5.3 | Url | I'll transmit the optical USB program, that should program the USB program! | https://sedrick.biz | | | +| National Accountability Administrator | 5.9.9 | Expression | Use the neural IB matrix, then you can generate the neural matrix! | http://julio.info | | | +| Lead Tactics Executive | 6.2.9 | Expression | I'll transmit the online TCP driver, that should driver the TCP driver! | https://maxwell.name | | | +| Legacy Research Producer | 2.8.3 | Url | backing up the monitor won't do anything, we need to quantify the back-end CSS monitor! | https://sonia.org | | | +| Dynamic Division Consultant | 4.8.7 | Expression | The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel! | https://jack.net | | | +| Direct Data Consultant | 6.3.3 | Url | Use the haptic XML driver, then you can index the haptic driver! | https://heath.name | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| District Metrics Analyst | 4.6.0 | Unknown | overriding the interface won't do anything, we need to connect the digital GB interface! | http://nathaniel.name | | | +| Product Interactions Executive | 5.4.8 | Url | We need to override the auxiliary AGP firewall! | https://maye.org | | | +| Customer Assurance Consultant | 5.6.2 | Url | Use the digital IB alarm, then you can program the digital alarm! | https://eryn.org | | | +| District Factors Assistant | 9.8.2 | Unknown | Try to compress the SMS bus, maybe it will compress the bluetooth bus! | https://ernestine.net | | | +| National Tactics Administrator | 9.2.8 | Url | The FTP card is down, index the digital card so we can index the FTP card! | https://brett.biz | | | +| Senior Accountability Specialist | 0.8.7 | Expression | We need to input the cross-platform RAM system! | http://kristina.info | | | +| Chief Directives Executive | 9.4.9 | Url | Try to back up the THX interface, maybe it will back up the auxiliary interface! | http://jedediah.net | | | +| Product Operations Liaison | 1.1.0 | Expression | You can't generate the array without quantifying the open-source PCI array! | http://tabitha.com | | | +| Human Functionality Associate | 9.4.1 | Url | I'll hack the redundant SCSI monitor, that should monitor the SCSI monitor! | https://bonita.biz | | | +| Senior Group Designer | 3.0.6 | Url | We need to copy the cross-platform SAS panel! | http://keyshawn.net | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| Regional Branding Facilitator | 0.3.9 | Url | We need to connect the optical SQL capacitor! | https://otilia.info | | | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| National Response Planner | 7.8.0 | Url | Try to synthesize the PNG application, maybe it will synthesize the auxiliary application! | https://hertha.org | | | +| Dynamic Research Representative | 1.6.9 | Url | You can't copy the alarm without synthesizing the 1080p IB alarm! | https://carol.org | | | +| Senior Implementation Associate | 8.2.9 | Unknown | synthesizing the bandwidth won't do anything, we need to generate the wireless ADP bandwidth! | http://roderick.org | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| Central Security Representative | 4.3.4 | Expression | The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth! | https://velva.name | | | +| Legacy Accountability Agent | 5.8.2 | Unknown | I'll compress the auxiliary XSS port, that should port the XSS port! | http://chelsea.com | | | +| Lead Accountability Orchestrator | 2.6.2 | Expression | You can't connect the panel without bypassing the bluetooth SSL panel! | https://tre.org | | | +| Future Group Director | 2.3.4 | Expression | I'll synthesize the open-source RSS firewall, that should firewall the RSS firewall! | https://luna.info | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Dynamic Brand Officer | 1.1.5 | Unknown | If we transmit the application, we can get to the SAS application through the wireless SAS application! | https://shayne.name | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| Internal Quality Director | 5.3.0 | Url | Use the redundant AI alarm, then you can transmit the redundant alarm! | http://hyman.com | | | +| Investor Division Planner | 1.4.6 | Url | I'll hack the solid state JSON sensor, that should sensor the JSON sensor! | https://evelyn.info | | | +| Legacy Implementation Assistant | 2.1.6 | Unknown | Use the auxiliary RSS sensor, then you can program the auxiliary sensor! | https://liana.net | | | +| District Interactions Developer | 9.9.4 | Url | I'll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth! | http://adrien.biz | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Internal Accounts Specialist | 4.9.2 | Url | The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive! | https://wilfredo.biz | | | +| Customer Functionality Manager | 5.9.0 | Url | The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix! | https://mariane.info | | | +| Customer Accountability Strategist | 0.5.2 | Expression | You can't parse the firewall without navigating the solid state ADP firewall! | https://stuart.com | | | +| Internal Directives Designer | 0.4.8 | Expression | Use the virtual AI capacitor, then you can navigate the virtual capacitor! | http://mable.net | | | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| Direct Group Consultant | 8.8.0 | Unknown | I'll index the neural SDD bus, that should bus the SDD bus! | https://alana.org | | | +| Corporate Paradigm Administrator | 5.5.2 | Url | Try to reboot the SMS feed, maybe it will reboot the bluetooth feed! | http://trace.net | | | +| Principal Accountability Facilitator | 2.1.4 | Expression | Use the back-end XML protocol, then you can reboot the back-end protocol! | https://dillan.net | | | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| Product Intranet Assistant | 2.8.1 | Unknown | You can't parse the bandwidth without quantifying the wireless THX bandwidth! | https://chance.name | | | +| Internal Division Assistant | 0.9.4 | Expression | The SMTP card is down, transmit the virtual card so we can transmit the SMTP card! | http://emerson.info | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| National Usability Manager | 0.3.8 | Url | quantifying the card won't do anything, we need to navigate the virtual USB card! | http://myriam.name | | | +| Product Security Developer | 4.4.5 | Unknown | parsing the driver won't do anything, we need to parse the primary TCP driver! | https://maida.org | | | +| Principal Solutions Supervisor | 6.1.2 | Unknown | programming the driver won't do anything, we need to parse the 1080p AGP driver! | https://ari.biz | | | +| District Group Associate | 4.0.1 | Expression | We need to transmit the redundant TCP panel! | https://noemi.info | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Chief Intranet Strategist | 9.7.0 | Expression | We need to copy the redundant JSON transmitter! | https://john.name | | | +| Legacy Branding Orchestrator | 0.2.6 | Unknown | We need to bypass the back-end FTP alarm! | https://keeley.net | | | +| Principal Usability Representative | 9.1.3 | Expression | We need to transmit the bluetooth FTP feed! | https://nelson.com | | | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| Product Integration Officer | 3.3.6 | Url | Use the primary PNG matrix, then you can copy the primary matrix! | https://howard.org | | | +| Chief Web Specialist | 7.4.0 | Url | navigating the monitor won't do anything, we need to input the wireless JSON monitor! | http://keely.net | | | +| Human Configuration Assistant | 0.1.1 | Url | We need to hack the mobile SMS circuit! | https://aurelia.info | | | +| Customer Group Manager | 8.0.4 | Unknown | The RAM panel is down, transmit the online panel so we can transmit the RAM panel! | https://luisa.biz | | | +| Global Configuration Planner | 2.6.3 | Unknown | connecting the circuit won't do anything, we need to copy the online EXE circuit! | http://willis.name | | | +| Global Usability Manager | 6.7.0 | Url | We need to parse the mobile SCSI protocol! | https://alexandra.info | | | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt new file mode 100644 index 00000000..adf32566 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt @@ -0,0 +1,234 @@ ++----------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-------------+------------------------+ +| Dynamic Division Consultant | 4.8.7 | Expression | The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel! | https://jack.net | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Product Paradigm Director | 6.3.8 | Expression | Use the wireless THX array, then you can connect the wireless array! | http://kiera.org | | | +| Product Infrastructure Orchestrator | 5.0.6 | Unknown | If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit! | http://forrest.com | | | +| Corporate Data Assistant | 7.9.8 | Url | Try to generate the SMTP feed, maybe it will generate the online feed! | http://arlene.biz | | | +| Customer Applications Developer | 5.6.1 | Unknown | We need to connect the bluetooth RAM application! | http://kiley.org | | | +| District Group Associate | 4.0.1 | Expression | We need to transmit the redundant TCP panel! | https://noemi.info | | | +| Principal Accountability Facilitator | 2.1.4 | Expression | Use the back-end XML protocol, then you can reboot the back-end protocol! | https://dillan.net | | | +| Direct Research Assistant | 5.9.7 | Unknown | Try to connect the TCP circuit, maybe it will connect the back-end circuit! | http://danial.org | | | +| Forward Web Assistant | 3.5.5 | Expression | The COM array is down, calculate the open-source array so we can calculate the COM array! | https://tremayne.org | | | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Product Operations Liaison | 1.1.0 | Expression | You can't generate the array without quantifying the open-source PCI array! | http://tabitha.com | | | +| Human Functionality Associate | 9.4.1 | Url | I'll hack the redundant SCSI monitor, that should monitor the SCSI monitor! | https://bonita.biz | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Central Data Consultant | 6.5.0 | Url | generating the driver won't do anything, we need to hack the auxiliary HDD driver! | https://delilah.org | | | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Customer Group Technician | 9.8.2 | Url | programming the system won't do anything, we need to synthesize the primary AGP system! | https://sandrine.name | | | +| Lead Accountability Orchestrator | 2.6.2 | Expression | You can't connect the panel without bypassing the bluetooth SSL panel! | https://tre.org | | | +| Human Directives Specialist | 4.3.4 | Url | I'll reboot the virtual CSS program, that should program the CSS program! | http://tabitha.name | | | +| Principal Usability Representative | 9.1.3 | Expression | We need to transmit the bluetooth FTP feed! | https://nelson.com | | | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| Lead Factors Planner | 1.0.4 | Expression | You can't compress the driver without calculating the back-end SQL driver! | http://mikayla.com | | | +| Product Intranet Assistant | 2.8.1 | Unknown | You can't parse the bandwidth without quantifying the wireless THX bandwidth! | https://chance.name | | | +| Chief Intranet Strategist | 9.7.0 | Expression | We need to copy the redundant JSON transmitter! | https://john.name | | | +| Senior Implementation Associate | 8.2.9 | Unknown | synthesizing the bandwidth won't do anything, we need to generate the wireless ADP bandwidth! | http://roderick.org | | | +| Corporate Intranet Analyst | 0.9.0 | Expression | indexing the interface won't do anything, we need to bypass the optical HDD interface! | https://creola.info | | | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| Senior Operations Engineer | 3.1.8 | Expression | If we program the array, we can get to the JBOD array through the primary JBOD array! | http://montana.name | | | +| Human Configuration Assistant | 0.1.1 | Url | We need to hack the mobile SMS circuit! | https://aurelia.info | | | +| Chief Directives Executive | 9.4.9 | Url | Try to back up the THX interface, maybe it will back up the auxiliary interface! | http://jedediah.net | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| Legacy Branding Orchestrator | 0.2.6 | Unknown | We need to bypass the back-end FTP alarm! | https://keeley.net | | | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | +| District Factors Assistant | 9.8.2 | Unknown | Try to compress the SMS bus, maybe it will compress the bluetooth bus! | https://ernestine.net | | | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| Chief Web Specialist | 7.4.0 | Url | navigating the monitor won't do anything, we need to input the wireless JSON monitor! | http://keely.net | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| Internal Division Assistant | 0.9.4 | Expression | The SMTP card is down, transmit the virtual card so we can transmit the SMTP card! | http://emerson.info | | | +| Senior Brand Analyst | 2.5.0 | Expression | overriding the interface won't do anything, we need to override the virtual THX interface! | http://danial.name | | | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| Global Configuration Planner | 2.6.3 | Unknown | connecting the circuit won't do anything, we need to copy the online EXE circuit! | http://willis.name | | | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | +| Regional Branding Facilitator | 0.3.9 | Url | We need to connect the optical SQL capacitor! | https://otilia.info | | | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| Product Marketing Strategist | 0.1.7 | Url | I'll copy the auxiliary SSL interface, that should interface the SSL interface! | http://melany.name | | | +| Future Factors Representative | 9.2.0 | Url | Use the solid state SDD application, then you can navigate the solid state application! | https://jazmin.org | | | +| Chief Markets Agent | 8.8.4 | Unknown | I'll hack the optical COM alarm, that should alarm the COM alarm! | http://dayana.name | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| Legacy Optimization Assistant | 8.8.2 | Url | The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor! | https://scot.info | | | +| District Directives Analyst | 9.3.0 | Unknown | Try to navigate the SCSI firewall, maybe it will navigate the digital firewall! | http://bridie.biz | | | +| National Response Planner | 7.8.0 | Url | Try to synthesize the PNG application, maybe it will synthesize the auxiliary application! | https://hertha.org | | | +| Customer Accountability Strategist | 0.5.2 | Expression | You can't parse the firewall without navigating the solid state ADP firewall! | https://stuart.com | | | +| Regional Data Strategist | 3.5.3 | Url | I'll transmit the optical USB program, that should program the USB program! | https://sedrick.biz | | | +| National Tactics Administrator | 9.2.8 | Url | The FTP card is down, index the digital card so we can index the FTP card! | https://brett.biz | | | +| Senior Accountability Specialist | 0.8.7 | Expression | We need to input the cross-platform RAM system! | http://kristina.info | | | +| Product Integration Officer | 3.3.6 | Url | Use the primary PNG matrix, then you can copy the primary matrix! | https://howard.org | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Legacy Accountability Coordinator | 5.5.0 | Expression | Try to back up the COM driver, maybe it will back up the bluetooth driver! | http://erling.name | | | +| Product Security Developer | 4.4.5 | Unknown | parsing the driver won't do anything, we need to parse the primary TCP driver! | https://maida.org | | | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| International Metrics Officer | 3.7.1 | Expression | hacking the array won't do anything, we need to back up the haptic IB array! | https://myrl.info | | | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Forward Infrastructure Specialist | 6.1.6 | Unknown | quantifying the driver won't do anything, we need to synthesize the neural PNG driver! | http://melisa.com | | | +| National Accountability Administrator | 5.9.9 | Expression | Use the neural IB matrix, then you can generate the neural matrix! | http://julio.info | | | +| Senior Group Designer | 3.0.6 | Url | We need to copy the cross-platform SAS panel! | http://keyshawn.net | | | +| Product Interactions Executive | 5.4.8 | Url | We need to override the auxiliary AGP firewall! | https://maye.org | | | +| Internal Accounts Specialist | 4.9.2 | Url | The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive! | https://wilfredo.biz | | | +| Dynamic Research Representative | 1.6.9 | Url | You can't copy the alarm without synthesizing the 1080p IB alarm! | https://carol.org | | | +| Forward Data Administrator | 9.0.6 | Url | Try to connect the XSS alarm, maybe it will connect the auxiliary alarm! | https://michelle.org | | | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Legacy Implementation Assistant | 2.1.6 | Unknown | Use the auxiliary RSS sensor, then you can program the auxiliary sensor! | https://liana.net | | | +| District Metrics Analyst | 4.6.0 | Unknown | overriding the interface won't do anything, we need to connect the digital GB interface! | http://nathaniel.name | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Investor Division Planner | 1.4.6 | Url | I'll hack the solid state JSON sensor, that should sensor the JSON sensor! | https://evelyn.info | | | +| Future Group Director | 2.3.4 | Expression | I'll synthesize the open-source RSS firewall, that should firewall the RSS firewall! | https://luna.info | | | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Internal Quality Director | 5.3.0 | Url | Use the redundant AI alarm, then you can transmit the redundant alarm! | http://hyman.com | | | +| Human Optimization Director | 0.1.8 | Unknown | We need to transmit the back-end PCI panel! | https://crystal.info | | | +| Principal Solutions Supervisor | 6.1.2 | Unknown | programming the driver won't do anything, we need to parse the 1080p AGP driver! | https://ari.biz | | | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Direct Data Consultant | 6.3.3 | Url | Use the haptic XML driver, then you can index the haptic driver! | https://heath.name | | | +| Dynamic Brand Officer | 1.1.5 | Unknown | If we transmit the application, we can get to the SAS application through the wireless SAS application! | https://shayne.name | | | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| Corporate Paradigm Administrator | 5.5.2 | Url | Try to reboot the SMS feed, maybe it will reboot the bluetooth feed! | http://trace.net | | | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| Central Security Representative | 4.3.4 | Expression | The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth! | https://velva.name | | | +| Regional Accountability Assistant | 2.7.5 | Unknown | You can't program the alarm without overriding the cross-platform RSS alarm! | http://barney.com | | | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| Lead Tactics Executive | 6.2.9 | Expression | I'll transmit the online TCP driver, that should driver the TCP driver! | https://maxwell.name | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Legacy Interactions Analyst | 3.0.8 | Unknown | You can't parse the hard drive without generating the digital AGP hard drive! | http://logan.net | | | +| Legacy Accountability Agent | 5.8.2 | Unknown | I'll compress the auxiliary XSS port, that should port the XSS port! | http://chelsea.com | | | +| Regional Tactics Technician | 7.6.7 | Expression | If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall! | http://alvena.net | | | +| Direct Group Consultant | 8.8.0 | Unknown | I'll index the neural SDD bus, that should bus the SDD bus! | https://alana.org | | | +| Global Usability Manager | 6.7.0 | Url | We need to parse the mobile SCSI protocol! | https://alexandra.info | | | +| District Interactions Developer | 9.9.4 | Url | I'll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth! | http://adrien.biz | | | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Customer Functionality Manager | 5.9.0 | Url | The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix! | https://mariane.info | | | +| Internal Directives Designer | 0.4.8 | Expression | Use the virtual AI capacitor, then you can navigate the virtual capacitor! | http://mable.net | | | +| Customer Group Manager | 8.0.4 | Unknown | The RAM panel is down, transmit the online panel so we can transmit the RAM panel! | https://luisa.biz | | | +| National Usability Manager | 0.3.8 | Url | quantifying the card won't do anything, we need to navigate the virtual USB card! | http://myriam.name | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| Central Creative Analyst | 3.6.4 | Expression | programming the driver won't do anything, we need to calculate the primary SMTP driver! | http://abigayle.net | | | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Internal Division Agent | 2.4.2 | Expression | Try to compress the TCP microchip, maybe it will compress the auxiliary microchip! | http://armani.name | | | +| Corporate Program Facilitator | 2.7.4 | Url | I'll navigate the mobile TCP bus, that should bus the TCP bus! | https://vida.net | | | +| Customer Assurance Consultant | 5.6.2 | Url | Use the digital IB alarm, then you can program the digital alarm! | https://eryn.org | | | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Legacy Research Producer | 2.8.3 | Url | backing up the monitor won't do anything, we need to quantify the back-end CSS monitor! | https://sonia.org | | | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++----------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt new file mode 100644 index 00000000..f31d35ea --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt @@ -0,0 +1,122 @@ ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-----------+-----------------------+ +| Central Data Consultant | 6.5.0 | Url | generating the driver won't do anything, we need to hack the auxiliary HDD driver! | https://delilah.org | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Product Interactions Executive | 5.4.8 | Url | We need to override the auxiliary AGP firewall! | https://maye.org | | | +| District Interactions Developer | 9.9.4 | Url | I'll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth! | http://adrien.biz | | | +| Product Infrastructure Orchestrator | 5.0.6 | Unknown | If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit! | http://forrest.com | | | +| Direct Research Assistant | 5.9.7 | Unknown | Try to connect the TCP circuit, maybe it will connect the back-end circuit! | http://danial.org | | | +| Internal Division Agent | 2.4.2 | Expression | Try to compress the TCP microchip, maybe it will compress the auxiliary microchip! | http://armani.name | | | +| Lead Factors Planner | 1.0.4 | Expression | You can't compress the driver without calculating the back-end SQL driver! | http://mikayla.com | | | +| Human Directives Specialist | 4.3.4 | Url | I'll reboot the virtual CSS program, that should program the CSS program! | http://tabitha.name | | | +| Legacy Accountability Coordinator | 5.5.0 | Expression | Try to back up the COM driver, maybe it will back up the bluetooth driver! | http://erling.name | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| Product Marketing Strategist | 0.1.7 | Url | I'll copy the auxiliary SSL interface, that should interface the SSL interface! | http://melany.name | | | +| Forward Infrastructure Specialist | 6.1.6 | Unknown | quantifying the driver won't do anything, we need to synthesize the neural PNG driver! | http://melisa.com | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| Regional Tactics Technician | 7.6.7 | Expression | If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall! | http://alvena.net | | | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | +| Legacy Branding Orchestrator | 0.2.6 | Unknown | We need to bypass the back-end FTP alarm! | https://keeley.net | | | +| Internal Accounts Specialist | 4.9.2 | Url | The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive! | https://wilfredo.biz | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| Chief Web Specialist | 7.4.0 | Url | navigating the monitor won't do anything, we need to input the wireless JSON monitor! | http://keely.net | | | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Global Usability Manager | 6.7.0 | Url | We need to parse the mobile SCSI protocol! | https://alexandra.info | | | +| International Metrics Officer | 3.7.1 | Expression | hacking the array won't do anything, we need to back up the haptic IB array! | https://myrl.info | | | +| Customer Applications Developer | 5.6.1 | Unknown | We need to connect the bluetooth RAM application! | http://kiley.org | | | +| Senior Brand Analyst | 2.5.0 | Expression | overriding the interface won't do anything, we need to override the virtual THX interface! | http://danial.name | | | +| Chief Directives Executive | 9.4.9 | Url | Try to back up the THX interface, maybe it will back up the auxiliary interface! | http://jedediah.net | | | +| Senior Operations Engineer | 3.1.8 | Expression | If we program the array, we can get to the JBOD array through the primary JBOD array! | http://montana.name | | | +| District Group Associate | 4.0.1 | Expression | We need to transmit the redundant TCP panel! | https://noemi.info | | | +| Regional Accountability Assistant | 2.7.5 | Unknown | You can't program the alarm without overriding the cross-platform RSS alarm! | http://barney.com | | | +| Forward Data Administrator | 9.0.6 | Url | Try to connect the XSS alarm, maybe it will connect the auxiliary alarm! | https://michelle.org | | | +| Legacy Optimization Assistant | 8.8.2 | Url | The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor! | https://scot.info | | | +| Principal Solutions Supervisor | 6.1.2 | Unknown | programming the driver won't do anything, we need to parse the 1080p AGP driver! | https://ari.biz | | | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| Customer Group Technician | 9.8.2 | Url | programming the system won't do anything, we need to synthesize the primary AGP system! | https://sandrine.name | | | +| Chief Intranet Strategist | 9.7.0 | Expression | We need to copy the redundant JSON transmitter! | https://john.name | | | +| Investor Division Planner | 1.4.6 | Url | I'll hack the solid state JSON sensor, that should sensor the JSON sensor! | https://evelyn.info | | | +| Senior Accountability Specialist | 0.8.7 | Expression | We need to input the cross-platform RAM system! | http://kristina.info | | | +| Legacy Research Producer | 2.8.3 | Url | backing up the monitor won't do anything, we need to quantify the back-end CSS monitor! | https://sonia.org | | | +| Dynamic Division Consultant | 4.8.7 | Expression | The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel! | https://jack.net | | | +| Customer Group Manager | 8.0.4 | Unknown | The RAM panel is down, transmit the online panel so we can transmit the RAM panel! | https://luisa.biz | | | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| District Factors Assistant | 9.8.2 | Unknown | Try to compress the SMS bus, maybe it will compress the bluetooth bus! | https://ernestine.net | | | +| Corporate Paradigm Administrator | 5.5.2 | Url | Try to reboot the SMS feed, maybe it will reboot the bluetooth feed! | http://trace.net | | | +| Global Configuration Planner | 2.6.3 | Unknown | connecting the circuit won't do anything, we need to copy the online EXE circuit! | http://willis.name | | | +| Customer Accountability Strategist | 0.5.2 | Expression | You can't parse the firewall without navigating the solid state ADP firewall! | https://stuart.com | | | +| National Usability Manager | 0.3.8 | Url | quantifying the card won't do anything, we need to navigate the virtual USB card! | http://myriam.name | | | +| Legacy Interactions Analyst | 3.0.8 | Unknown | You can't parse the hard drive without generating the digital AGP hard drive! | http://logan.net | | | +| Future Factors Representative | 9.2.0 | Url | Use the solid state SDD application, then you can navigate the solid state application! | https://jazmin.org | | | +| Product Operations Liaison | 1.1.0 | Expression | You can't generate the array without quantifying the open-source PCI array! | http://tabitha.com | | | +| Product Security Developer | 4.4.5 | Unknown | parsing the driver won't do anything, we need to parse the primary TCP driver! | https://maida.org | | | +| Product Paradigm Director | 6.3.8 | Expression | Use the wireless THX array, then you can connect the wireless array! | http://kiera.org | | | +| Internal Quality Director | 5.3.0 | Url | Use the redundant AI alarm, then you can transmit the redundant alarm! | http://hyman.com | | | +| District Directives Analyst | 9.3.0 | Unknown | Try to navigate the SCSI firewall, maybe it will navigate the digital firewall! | http://bridie.biz | | | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| Corporate Program Facilitator | 2.7.4 | Url | I'll navigate the mobile TCP bus, that should bus the TCP bus! | https://vida.net | | | +| Regional Branding Facilitator | 0.3.9 | Url | We need to connect the optical SQL capacitor! | https://otilia.info | | | +| Direct Group Consultant | 8.8.0 | Unknown | I'll index the neural SDD bus, that should bus the SDD bus! | https://alana.org | | | +| Corporate Intranet Analyst | 0.9.0 | Expression | indexing the interface won't do anything, we need to bypass the optical HDD interface! | https://creola.info | | | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| Central Security Representative | 4.3.4 | Expression | The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth! | https://velva.name | | | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| Customer Assurance Consultant | 5.6.2 | Url | Use the digital IB alarm, then you can program the digital alarm! | https://eryn.org | | | +| Central Creative Analyst | 3.6.4 | Expression | programming the driver won't do anything, we need to calculate the primary SMTP driver! | http://abigayle.net | | | +| Lead Tactics Executive | 6.2.9 | Expression | I'll transmit the online TCP driver, that should driver the TCP driver! | https://maxwell.name | | | +| Senior Implementation Associate | 8.2.9 | Unknown | synthesizing the bandwidth won't do anything, we need to generate the wireless ADP bandwidth! | http://roderick.org | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Legacy Implementation Assistant | 2.1.6 | Unknown | Use the auxiliary RSS sensor, then you can program the auxiliary sensor! | https://liana.net | | | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| Human Functionality Associate | 9.4.1 | Url | I'll hack the redundant SCSI monitor, that should monitor the SCSI monitor! | https://bonita.biz | | | +| Customer Functionality Manager | 5.9.0 | Url | The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix! | https://mariane.info | | | +| Forward Web Assistant | 3.5.5 | Expression | The COM array is down, calculate the open-source array so we can calculate the COM array! | https://tremayne.org | | | +| Internal Directives Designer | 0.4.8 | Expression | Use the virtual AI capacitor, then you can navigate the virtual capacitor! | http://mable.net | | | +| National Tactics Administrator | 9.2.8 | Url | The FTP card is down, index the digital card so we can index the FTP card! | https://brett.biz | | | +| Direct Data Consultant | 6.3.3 | Url | Use the haptic XML driver, then you can index the haptic driver! | https://heath.name | | | +| Chief Markets Agent | 8.8.4 | Unknown | I'll hack the optical COM alarm, that should alarm the COM alarm! | http://dayana.name | | | +| Product Intranet Assistant | 2.8.1 | Unknown | You can't parse the bandwidth without quantifying the wireless THX bandwidth! | https://chance.name | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Lead Accountability Orchestrator | 2.6.2 | Expression | You can't connect the panel without bypassing the bluetooth SSL panel! | https://tre.org | | | +| District Metrics Analyst | 4.6.0 | Unknown | overriding the interface won't do anything, we need to connect the digital GB interface! | http://nathaniel.name | | | +| Legacy Accountability Agent | 5.8.2 | Unknown | I'll compress the auxiliary XSS port, that should port the XSS port! | http://chelsea.com | | | +| Product Integration Officer | 3.3.6 | Url | Use the primary PNG matrix, then you can copy the primary matrix! | https://howard.org | | | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| Senior Group Designer | 3.0.6 | Url | We need to copy the cross-platform SAS panel! | http://keyshawn.net | | | +| Corporate Data Assistant | 7.9.8 | Url | Try to generate the SMTP feed, maybe it will generate the online feed! | http://arlene.biz | | | +| Human Configuration Assistant | 0.1.1 | Url | We need to hack the mobile SMS circuit! | https://aurelia.info | | | +| Regional Data Strategist | 3.5.3 | Url | I'll transmit the optical USB program, that should program the USB program! | https://sedrick.biz | | | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| Dynamic Research Representative | 1.6.9 | Url | You can't copy the alarm without synthesizing the 1080p IB alarm! | https://carol.org | | | +| Principal Usability Representative | 9.1.3 | Expression | We need to transmit the bluetooth FTP feed! | https://nelson.com | | | +| Internal Division Assistant | 0.9.4 | Expression | The SMTP card is down, transmit the virtual card so we can transmit the SMTP card! | http://emerson.info | | | +| Principal Accountability Facilitator | 2.1.4 | Expression | Use the back-end XML protocol, then you can reboot the back-end protocol! | https://dillan.net | | | +| Human Optimization Director | 0.1.8 | Unknown | We need to transmit the back-end PCI panel! | https://crystal.info | | | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| National Response Planner | 7.8.0 | Url | Try to synthesize the PNG application, maybe it will synthesize the auxiliary application! | https://hertha.org | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Future Group Director | 2.3.4 | Expression | I'll synthesize the open-source RSS firewall, that should firewall the RSS firewall! | https://luna.info | | | +| National Accountability Administrator | 5.9.9 | Expression | Use the neural IB matrix, then you can generate the neural matrix! | http://julio.info | | | +| Dynamic Brand Officer | 1.1.5 | Unknown | If we transmit the application, we can get to the SAS application through the wireless SAS application! | https://shayne.name | | | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt new file mode 100644 index 00000000..318f9722 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt @@ -0,0 +1,135 @@ ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-------------+-----------------------+ +| Central Data Consultant | 6.5.0 | Url | generating the driver won't do anything, we need to hack the auxiliary HDD driver! | https://delilah.org | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Product Interactions Executive | 5.4.8 | Url | We need to override the auxiliary AGP firewall! | https://maye.org | | | +| District Interactions Developer | 9.9.4 | Url | I'll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth! | http://adrien.biz | | | +| Legacy Branding Orchestrator | 0.2.6 | Unknown | We need to bypass the back-end FTP alarm! | https://keeley.net | | | +| Direct Research Assistant | 5.9.7 | Unknown | Try to connect the TCP circuit, maybe it will connect the back-end circuit! | http://danial.org | | | +| Direct Data Consultant | 6.3.3 | Url | Use the haptic XML driver, then you can index the haptic driver! | https://heath.name | | | +| Customer Group Technician | 9.8.2 | Url | programming the system won't do anything, we need to synthesize the primary AGP system! | https://sandrine.name | | | +| National Tactics Administrator | 9.2.8 | Url | The FTP card is down, index the digital card so we can index the FTP card! | https://brett.biz | | | +| Legacy Accountability Coordinator | 5.5.0 | Expression | Try to back up the COM driver, maybe it will back up the bluetooth driver! | http://erling.name | | | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Product Infrastructure Orchestrator | 5.0.6 | Unknown | If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit! | http://forrest.com | | | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Regional Tactics Technician | 7.6.7 | Expression | If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall! | http://alvena.net | | | +| Product Marketing Strategist | 0.1.7 | Url | I'll copy the auxiliary SSL interface, that should interface the SSL interface! | http://melany.name | | | +| National Accountability Administrator | 5.9.9 | Expression | Use the neural IB matrix, then you can generate the neural matrix! | http://julio.info | | | +| Dynamic Research Representative | 1.6.9 | Url | You can't copy the alarm without synthesizing the 1080p IB alarm! | https://carol.org | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| Internal Quality Director | 5.3.0 | Url | Use the redundant AI alarm, then you can transmit the redundant alarm! | http://hyman.com | | | +| Principal Accountability Facilitator | 2.1.4 | Expression | Use the back-end XML protocol, then you can reboot the back-end protocol! | https://dillan.net | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| Dynamic Brand Officer | 1.1.5 | Unknown | If we transmit the application, we can get to the SAS application through the wireless SAS application! | https://shayne.name | | | +| Chief Web Specialist | 7.4.0 | Url | navigating the monitor won't do anything, we need to input the wireless JSON monitor! | http://keely.net | | | +| Future Factors Representative | 9.2.0 | Url | Use the solid state SDD application, then you can navigate the solid state application! | https://jazmin.org | | | +| Senior Brand Analyst | 2.5.0 | Expression | overriding the interface won't do anything, we need to override the virtual THX interface! | http://danial.name | | | +| Customer Group Manager | 8.0.4 | Unknown | The RAM panel is down, transmit the online panel so we can transmit the RAM panel! | https://luisa.biz | | | +| Senior Operations Engineer | 3.1.8 | Expression | If we program the array, we can get to the JBOD array through the primary JBOD array! | http://montana.name | | | +| District Group Associate | 4.0.1 | Expression | We need to transmit the redundant TCP panel! | https://noemi.info | | | +| Regional Data Strategist | 3.5.3 | Url | I'll transmit the optical USB program, that should program the USB program! | https://sedrick.biz | | | +| Lead Accountability Orchestrator | 2.6.2 | Expression | You can't connect the panel without bypassing the bluetooth SSL panel! | https://tre.org | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Human Directives Specialist | 4.3.4 | Url | I'll reboot the virtual CSS program, that should program the CSS program! | http://tabitha.name | | | +| Regional Accountability Assistant | 2.7.5 | Unknown | You can't program the alarm without overriding the cross-platform RSS alarm! | http://barney.com | | | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| Internal Accounts Specialist | 4.9.2 | Url | The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive! | https://wilfredo.biz | | | +| Legacy Interactions Analyst | 3.0.8 | Unknown | You can't parse the hard drive without generating the digital AGP hard drive! | http://logan.net | | | +| Senior Implementation Associate | 8.2.9 | Unknown | synthesizing the bandwidth won't do anything, we need to generate the wireless ADP bandwidth! | http://roderick.org | | | +| Dynamic Division Consultant | 4.8.7 | Expression | The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel! | https://jack.net | | | +| Customer Applications Developer | 5.6.1 | Unknown | We need to connect the bluetooth RAM application! | http://kiley.org | | | +| Corporate Paradigm Administrator | 5.5.2 | Url | Try to reboot the SMS feed, maybe it will reboot the bluetooth feed! | http://trace.net | | | +| Customer Accountability Strategist | 0.5.2 | Expression | You can't parse the firewall without navigating the solid state ADP firewall! | https://stuart.com | | | +| Product Security Developer | 4.4.5 | Unknown | parsing the driver won't do anything, we need to parse the primary TCP driver! | https://maida.org | | | +| Future Group Director | 2.3.4 | Expression | I'll synthesize the open-source RSS firewall, that should firewall the RSS firewall! | https://luna.info | | | +| Chief Intranet Strategist | 9.7.0 | Expression | We need to copy the redundant JSON transmitter! | https://john.name | | | +| Legacy Optimization Assistant | 8.8.2 | Url | The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor! | https://scot.info | | | +| Chief Directives Executive | 9.4.9 | Url | Try to back up the THX interface, maybe it will back up the auxiliary interface! | http://jedediah.net | | | +| Principal Usability Representative | 9.1.3 | Expression | We need to transmit the bluetooth FTP feed! | https://nelson.com | | | +| Forward Web Assistant | 3.5.5 | Expression | The COM array is down, calculate the open-source array so we can calculate the COM array! | https://tremayne.org | | | +| Product Intranet Assistant | 2.8.1 | Unknown | You can't parse the bandwidth without quantifying the wireless THX bandwidth! | https://chance.name | | | +| Human Optimization Director | 0.1.8 | Unknown | We need to transmit the back-end PCI panel! | https://crystal.info | | | +| Lead Tactics Executive | 6.2.9 | Expression | I'll transmit the online TCP driver, that should driver the TCP driver! | https://maxwell.name | | | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | +| Human Functionality Associate | 9.4.1 | Url | I'll hack the redundant SCSI monitor, that should monitor the SCSI monitor! | https://bonita.biz | | | +| District Directives Analyst | 9.3.0 | Unknown | Try to navigate the SCSI firewall, maybe it will navigate the digital firewall! | http://bridie.biz | | | +| Human Configuration Assistant | 0.1.1 | Url | We need to hack the mobile SMS circuit! | https://aurelia.info | | | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| Central Security Representative | 4.3.4 | Expression | The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth! | https://velva.name | | | +| Direct Group Consultant | 8.8.0 | Unknown | I'll index the neural SDD bus, that should bus the SDD bus! | https://alana.org | | | +| Product Integration Officer | 3.3.6 | Url | Use the primary PNG matrix, then you can copy the primary matrix! | https://howard.org | | | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| Regional Branding Facilitator | 0.3.9 | Url | We need to connect the optical SQL capacitor! | https://otilia.info | | | +| District Factors Assistant | 9.8.2 | Unknown | Try to compress the SMS bus, maybe it will compress the bluetooth bus! | https://ernestine.net | | | +| Corporate Program Facilitator | 2.7.4 | Url | I'll navigate the mobile TCP bus, that should bus the TCP bus! | https://vida.net | | | +| Customer Assurance Consultant | 5.6.2 | Url | Use the digital IB alarm, then you can program the digital alarm! | https://eryn.org | | | +| Legacy Accountability Agent | 5.8.2 | Unknown | I'll compress the auxiliary XSS port, that should port the XSS port! | http://chelsea.com | | | +| Legacy Implementation Assistant | 2.1.6 | Unknown | Use the auxiliary RSS sensor, then you can program the auxiliary sensor! | https://liana.net | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| Global Configuration Planner | 2.6.3 | Unknown | connecting the circuit won't do anything, we need to copy the online EXE circuit! | http://willis.name | | | +| Customer Functionality Manager | 5.9.0 | Url | The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix! | https://mariane.info | | | +| National Usability Manager | 0.3.8 | Url | quantifying the card won't do anything, we need to navigate the virtual USB card! | http://myriam.name | | | +| Lead Factors Planner | 1.0.4 | Expression | You can't compress the driver without calculating the back-end SQL driver! | http://mikayla.com | | | +| Corporate Data Assistant | 7.9.8 | Url | Try to generate the SMTP feed, maybe it will generate the online feed! | http://arlene.biz | | | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Principal Solutions Supervisor | 6.1.2 | Unknown | programming the driver won't do anything, we need to parse the 1080p AGP driver! | https://ari.biz | | | +| Central Creative Analyst | 3.6.4 | Expression | programming the driver won't do anything, we need to calculate the primary SMTP driver! | http://abigayle.net | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| Legacy Research Producer | 2.8.3 | Url | backing up the monitor won't do anything, we need to quantify the back-end CSS monitor! | https://sonia.org | | | +| Product Paradigm Director | 6.3.8 | Expression | Use the wireless THX array, then you can connect the wireless array! | http://kiera.org | | | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| Internal Directives Designer | 0.4.8 | Expression | Use the virtual AI capacitor, then you can navigate the virtual capacitor! | http://mable.net | | | +| National Response Planner | 7.8.0 | Url | Try to synthesize the PNG application, maybe it will synthesize the auxiliary application! | https://hertha.org | | | +| Internal Division Agent | 2.4.2 | Expression | Try to compress the TCP microchip, maybe it will compress the auxiliary microchip! | http://armani.name | | | +| Corporate Intranet Analyst | 0.9.0 | Expression | indexing the interface won't do anything, we need to bypass the optical HDD interface! | https://creola.info | | | +| Senior Accountability Specialist | 0.8.7 | Expression | We need to input the cross-platform RAM system! | http://kristina.info | | | +| Internal Division Assistant | 0.9.4 | Expression | The SMTP card is down, transmit the virtual card so we can transmit the SMTP card! | http://emerson.info | | | +| Global Usability Manager | 6.7.0 | Url | We need to parse the mobile SCSI protocol! | https://alexandra.info | | | +| International Metrics Officer | 3.7.1 | Expression | hacking the array won't do anything, we need to back up the haptic IB array! | https://myrl.info | | | +| Chief Markets Agent | 8.8.4 | Unknown | I'll hack the optical COM alarm, that should alarm the COM alarm! | http://dayana.name | | | +| Forward Infrastructure Specialist | 6.1.6 | Unknown | quantifying the driver won't do anything, we need to synthesize the neural PNG driver! | http://melisa.com | | | +| District Metrics Analyst | 4.6.0 | Unknown | overriding the interface won't do anything, we need to connect the digital GB interface! | http://nathaniel.name | | | +| Senior Group Designer | 3.0.6 | Url | We need to copy the cross-platform SAS panel! | http://keyshawn.net | | | +| Forward Data Administrator | 9.0.6 | Url | Try to connect the XSS alarm, maybe it will connect the auxiliary alarm! | https://michelle.org | | | +| Product Operations Liaison | 1.1.0 | Expression | You can't generate the array without quantifying the open-source PCI array! | http://tabitha.com | | | +| Investor Division Planner | 1.4.6 | Url | I'll hack the solid state JSON sensor, that should sensor the JSON sensor! | https://evelyn.info | | | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt new file mode 100644 index 00000000..94f662a9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt @@ -0,0 +1,9 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt new file mode 100644 index 00000000..81fe31ee --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt @@ -0,0 +1,135 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt new file mode 100644 index 00000000..cf052450 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt @@ -0,0 +1,23 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt new file mode 100644 index 00000000..5783f9e4 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt @@ -0,0 +1,36 @@ ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt new file mode 100644 index 00000000..f8fd5804 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt @@ -0,0 +1,28 @@ ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-----------+-----------------------+ +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt new file mode 100644 index 00000000..23a1ae4a --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt @@ -0,0 +1,154 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt new file mode 100644 index 00000000..e47c2085 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt @@ -0,0 +1,42 @@ ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-----------+-----------------------+ +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt new file mode 100644 index 00000000..472ebbd3 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt @@ -0,0 +1,55 @@ ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | | | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | | | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | | | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | | | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | | | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | | | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | | | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | | | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | | | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | | | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | | | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | | | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt new file mode 100644 index 00000000..b1880544 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt @@ -0,0 +1,13 @@ ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt new file mode 100644 index 00000000..1e2dc32e --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt @@ -0,0 +1,139 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt new file mode 100644 index 00000000..cc77c9c5 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt @@ -0,0 +1,27 @@ ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt new file mode 100644 index 00000000..b4a184d2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt @@ -0,0 +1,40 @@ ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | | | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | | | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | | | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | | | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | | | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt new file mode 100644 index 00000000..3a8346ee --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt @@ -0,0 +1,4 @@ ++---------+---------+----------------------------+ +| Package | Version | License Information Origin | ++---------+---------+----------------------------+ ++---------+---------+----------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt new file mode 100644 index 00000000..e376d42b --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt @@ -0,0 +1,5 @@ ++------------------------+---------+----------------------------+-------------------------------------------------------------------+---------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++------------------------+---------+----------------------------+-------------------------------------------------------------------+---------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | ++------------------------+---------+----------------------------+-------------------------------------------------------------------+---------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt new file mode 100644 index 00000000..264a96a8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt @@ -0,0 +1,104 @@ ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | +| Principal Usability Representative | 9.1.3 | Expression | We need to transmit the bluetooth FTP feed! | https://nelson.com | +| Chief Intranet Strategist | 9.7.0 | Expression | We need to copy the redundant JSON transmitter! | https://john.name | +| Customer Group Manager | 8.0.4 | Unknown | The RAM panel is down, transmit the online panel so we can transmit the RAM panel! | https://luisa.biz | +| Customer Accountability Strategist | 0.5.2 | Expression | You can't parse the firewall without navigating the solid state ADP firewall! | https://stuart.com | +| Chief Directives Executive | 9.4.9 | Url | Try to back up the THX interface, maybe it will back up the auxiliary interface! | http://jedediah.net | +| District Factors Assistant | 9.8.2 | Unknown | Try to compress the SMS bus, maybe it will compress the bluetooth bus! | https://ernestine.net | +| Legacy Interactions Analyst | 3.0.8 | Unknown | You can't parse the hard drive without generating the digital AGP hard drive! | http://logan.net | +| District Metrics Analyst | 4.6.0 | Unknown | overriding the interface won't do anything, we need to connect the digital GB interface! | http://nathaniel.name | +| Senior Accountability Specialist | 0.8.7 | Expression | We need to input the cross-platform RAM system! | http://kristina.info | +| National Usability Manager | 0.3.8 | Url | quantifying the card won't do anything, we need to navigate the virtual USB card! | http://myriam.name | +| Lead Tactics Executive | 6.2.9 | Expression | I'll transmit the online TCP driver, that should driver the TCP driver! | https://maxwell.name | +| Principal Accountability Facilitator | 2.1.4 | Expression | Use the back-end XML protocol, then you can reboot the back-end protocol! | https://dillan.net | +| Internal Quality Director | 5.3.0 | Url | Use the redundant AI alarm, then you can transmit the redundant alarm! | http://hyman.com | +| Chief Web Specialist | 7.4.0 | Url | navigating the monitor won't do anything, we need to input the wireless JSON monitor! | http://keely.net | +| Lead Accountability Orchestrator | 2.6.2 | Expression | You can't connect the panel without bypassing the bluetooth SSL panel! | https://tre.org | +| International Metrics Officer | 3.7.1 | Expression | hacking the array won't do anything, we need to back up the haptic IB array! | https://myrl.info | +| Forward Data Administrator | 9.0.6 | Url | Try to connect the XSS alarm, maybe it will connect the auxiliary alarm! | https://michelle.org | +| Regional Data Strategist | 3.5.3 | Url | I'll transmit the optical USB program, that should program the USB program! | https://sedrick.biz | +| Regional Accountability Assistant | 2.7.5 | Unknown | You can't program the alarm without overriding the cross-platform RSS alarm! | http://barney.com | +| Product Integration Officer | 3.3.6 | Url | Use the primary PNG matrix, then you can copy the primary matrix! | https://howard.org | +| Customer Group Technician | 9.8.2 | Url | programming the system won't do anything, we need to synthesize the primary AGP system! | https://sandrine.name | +| Lead Factors Planner | 1.0.4 | Expression | You can't compress the driver without calculating the back-end SQL driver! | http://mikayla.com | +| Corporate Data Assistant | 7.9.8 | Url | Try to generate the SMTP feed, maybe it will generate the online feed! | http://arlene.biz | +| Human Functionality Associate | 9.4.1 | Url | I'll hack the redundant SCSI monitor, that should monitor the SCSI monitor! | https://bonita.biz | +| Dynamic Research Representative | 1.6.9 | Url | You can't copy the alarm without synthesizing the 1080p IB alarm! | https://carol.org | +| Internal Accounts Specialist | 4.9.2 | Url | The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive! | https://wilfredo.biz | +| Corporate Program Facilitator | 2.7.4 | Url | I'll navigate the mobile TCP bus, that should bus the TCP bus! | https://vida.net | +| Investor Division Planner | 1.4.6 | Url | I'll hack the solid state JSON sensor, that should sensor the JSON sensor! | https://evelyn.info | +| National Response Planner | 7.8.0 | Url | Try to synthesize the PNG application, maybe it will synthesize the auxiliary application! | https://hertha.org | +| National Accountability Administrator | 5.9.9 | Expression | Use the neural IB matrix, then you can generate the neural matrix! | http://julio.info | +| Legacy Branding Orchestrator | 0.2.6 | Unknown | We need to bypass the back-end FTP alarm! | https://keeley.net | +| Product Infrastructure Orchestrator | 5.0.6 | Unknown | If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit! | http://forrest.com | +| Forward Infrastructure Specialist | 6.1.6 | Unknown | quantifying the driver won't do anything, we need to synthesize the neural PNG driver! | http://melisa.com | +| District Directives Analyst | 9.3.0 | Unknown | Try to navigate the SCSI firewall, maybe it will navigate the digital firewall! | http://bridie.biz | +| Future Group Director | 2.3.4 | Expression | I'll synthesize the open-source RSS firewall, that should firewall the RSS firewall! | https://luna.info | +| Regional Branding Facilitator | 0.3.9 | Url | We need to connect the optical SQL capacitor! | https://otilia.info | +| Global Configuration Planner | 2.6.3 | Unknown | connecting the circuit won't do anything, we need to copy the online EXE circuit! | http://willis.name | +| Customer Assurance Consultant | 5.6.2 | Url | Use the digital IB alarm, then you can program the digital alarm! | https://eryn.org | +| District Interactions Developer | 9.9.4 | Url | I'll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth! | http://adrien.biz | +| Human Optimization Director | 0.1.8 | Unknown | We need to transmit the back-end PCI panel! | https://crystal.info | +| Principal Solutions Supervisor | 6.1.2 | Unknown | programming the driver won't do anything, we need to parse the 1080p AGP driver! | https://ari.biz | +| Product Paradigm Director | 6.3.8 | Expression | Use the wireless THX array, then you can connect the wireless array! | http://kiera.org | +| Senior Group Designer | 3.0.6 | Url | We need to copy the cross-platform SAS panel! | http://keyshawn.net | +| Product Intranet Assistant | 2.8.1 | Unknown | You can't parse the bandwidth without quantifying the wireless THX bandwidth! | https://chance.name | +| Product Security Developer | 4.4.5 | Unknown | parsing the driver won't do anything, we need to parse the primary TCP driver! | https://maida.org | +| Corporate Paradigm Administrator | 5.5.2 | Url | Try to reboot the SMS feed, maybe it will reboot the bluetooth feed! | http://trace.net | +| Product Interactions Executive | 5.4.8 | Url | We need to override the auxiliary AGP firewall! | https://maye.org | +| Central Creative Analyst | 3.6.4 | Expression | programming the driver won't do anything, we need to calculate the primary SMTP driver! | http://abigayle.net | +| Internal Division Assistant | 0.9.4 | Expression | The SMTP card is down, transmit the virtual card so we can transmit the SMTP card! | http://emerson.info | +| Dynamic Brand Officer | 1.1.5 | Unknown | If we transmit the application, we can get to the SAS application through the wireless SAS application! | https://shayne.name | +| Global Usability Manager | 6.7.0 | Url | We need to parse the mobile SCSI protocol! | https://alexandra.info | +| Chief Markets Agent | 8.8.4 | Unknown | I'll hack the optical COM alarm, that should alarm the COM alarm! | http://dayana.name | +| Human Configuration Assistant | 0.1.1 | Url | We need to hack the mobile SMS circuit! | https://aurelia.info | +| Direct Group Consultant | 8.8.0 | Unknown | I'll index the neural SDD bus, that should bus the SDD bus! | https://alana.org | +| Senior Implementation Associate | 8.2.9 | Unknown | synthesizing the bandwidth won't do anything, we need to generate the wireless ADP bandwidth! | http://roderick.org | +| Legacy Research Producer | 2.8.3 | Url | backing up the monitor won't do anything, we need to quantify the back-end CSS monitor! | https://sonia.org | +| Legacy Accountability Agent | 5.8.2 | Unknown | I'll compress the auxiliary XSS port, that should port the XSS port! | http://chelsea.com | +| District Group Associate | 4.0.1 | Expression | We need to transmit the redundant TCP panel! | https://noemi.info | +| Future Factors Representative | 9.2.0 | Url | Use the solid state SDD application, then you can navigate the solid state application! | https://jazmin.org | +| Customer Applications Developer | 5.6.1 | Unknown | We need to connect the bluetooth RAM application! | http://kiley.org | +| Direct Data Consultant | 6.3.3 | Url | Use the haptic XML driver, then you can index the haptic driver! | https://heath.name | +| Internal Division Agent | 2.4.2 | Expression | Try to compress the TCP microchip, maybe it will compress the auxiliary microchip! | http://armani.name | +| Direct Research Assistant | 5.9.7 | Unknown | Try to connect the TCP circuit, maybe it will connect the back-end circuit! | http://danial.org | +| Legacy Optimization Assistant | 8.8.2 | Url | The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor! | https://scot.info | +| National Tactics Administrator | 9.2.8 | Url | The FTP card is down, index the digital card so we can index the FTP card! | https://brett.biz | +| Human Directives Specialist | 4.3.4 | Url | I'll reboot the virtual CSS program, that should program the CSS program! | http://tabitha.name | +| Forward Web Assistant | 3.5.5 | Expression | The COM array is down, calculate the open-source array so we can calculate the COM array! | https://tremayne.org | +| Product Operations Liaison | 1.1.0 | Expression | You can't generate the array without quantifying the open-source PCI array! | http://tabitha.com | +| Legacy Accountability Coordinator | 5.5.0 | Expression | Try to back up the COM driver, maybe it will back up the bluetooth driver! | http://erling.name | +| Product Marketing Strategist | 0.1.7 | Url | I'll copy the auxiliary SSL interface, that should interface the SSL interface! | http://melany.name | +| Corporate Intranet Analyst | 0.9.0 | Expression | indexing the interface won't do anything, we need to bypass the optical HDD interface! | https://creola.info | +| Central Security Representative | 4.3.4 | Expression | The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth! | https://velva.name | +| Senior Brand Analyst | 2.5.0 | Expression | overriding the interface won't do anything, we need to override the virtual THX interface! | http://danial.name | +| Internal Directives Designer | 0.4.8 | Expression | Use the virtual AI capacitor, then you can navigate the virtual capacitor! | http://mable.net | +| Dynamic Division Consultant | 4.8.7 | Expression | The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel! | https://jack.net | +| Central Data Consultant | 6.5.0 | Url | generating the driver won't do anything, we need to hack the auxiliary HDD driver! | https://delilah.org | +| Regional Tactics Technician | 7.6.7 | Expression | If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall! | http://alvena.net | +| Legacy Implementation Assistant | 2.1.6 | Unknown | Use the auxiliary RSS sensor, then you can program the auxiliary sensor! | https://liana.net | +| Customer Functionality Manager | 5.9.0 | Url | The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix! | https://mariane.info | +| Senior Operations Engineer | 3.1.8 | Expression | If we program the array, we can get to the JBOD array through the primary JBOD array! | http://montana.name | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt new file mode 100644 index 00000000..b9e0a987 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt @@ -0,0 +1,24 @@ ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt new file mode 100644 index 00000000..d045bfc9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(False).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt @@ -0,0 +1,9 @@ ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt new file mode 100644 index 00000000..c5e2cf3c --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=1.verified.txt @@ -0,0 +1,8 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | Judson | https://wilson.net | +| | | | | Guadalupe | http://otho.info | +| | | | | General | https://skylar.name | +| | | | | Haylie | http://audreanne.info | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt new file mode 100644 index 00000000..3ec89b6f --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=20.verified.txt @@ -0,0 +1,134 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt new file mode 100644 index 00000000..d5ef80c4 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=3.verified.txt @@ -0,0 +1,22 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt new file mode 100644 index 00000000..3ea09138 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=0_errorCount=5.verified.txt @@ -0,0 +1,35 @@ ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt new file mode 100644 index 00000000..a90d5dbf --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=1.verified.txt @@ -0,0 +1,8 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt new file mode 100644 index 00000000..3b643c04 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=20.verified.txt @@ -0,0 +1,134 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt new file mode 100644 index 00000000..d181fddd --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=3.verified.txt @@ -0,0 +1,22 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt new file mode 100644 index 00000000..8998b287 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=100_errorCount=5.verified.txt @@ -0,0 +1,35 @@ ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt new file mode 100644 index 00000000..a90d5dbf --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=1.verified.txt @@ -0,0 +1,8 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt new file mode 100644 index 00000000..436e6821 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=20.verified.txt @@ -0,0 +1,134 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt new file mode 100644 index 00000000..7265e639 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=3.verified.txt @@ -0,0 +1,22 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt new file mode 100644 index 00000000..d06be8b4 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=1_errorCount=5.verified.txt @@ -0,0 +1,35 @@ ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt new file mode 100644 index 00000000..a90d5dbf --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=1.verified.txt @@ -0,0 +1,8 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt new file mode 100644 index 00000000..ad5b959a --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=20.verified.txt @@ -0,0 +1,134 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt new file mode 100644 index 00000000..7265e639 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=3.verified.txt @@ -0,0 +1,22 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt new file mode 100644 index 00000000..869a74da --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=20_errorCount=5.verified.txt @@ -0,0 +1,35 @@ ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt new file mode 100644 index 00000000..a90d5dbf --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=1.verified.txt @@ -0,0 +1,8 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt new file mode 100644 index 00000000..1d398b25 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=20.verified.txt @@ -0,0 +1,134 @@ ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| National Accounts Liaison | 7.2.6 | Unknown | | | Cedrick | https://zachariah.net | +| | | | | | Marcelle | https://adah.org | +| | | | | | Barney | http://erica.org | +| Global Response Associate | 1.9.8 | Unknown | The RSS bandwidth is down, compress the wireless bandwidth so we can compress the RSS bandwidth! | | Sandra | http://antonina.com | +| | | | | | Willow | https://jason.org | +| | | | | | Orland | http://rigoberto.com | +| | | | | | Laney | http://eryn.org | +| | | | | | Amari | http://viviane.net | +| | | | | | Kelley | http://doris.net | +| | | | | | Kennedy | https://milo.net | +| Legacy Creative Liaison | 0.4.6 | Unknown | | | Mervin | http://celestine.info | +| | | | | | Amalia | https://shanelle.info | +| | | | | | Sheila | http://darrell.info | +| | | | | | Alec | https://candice.biz | +| | | | | | Linnea | http://everardo.info | +| | | | | | Daryl | https://jerrod.com | +| | | | | | Laila | http://caleigh.net | +| | | | | | Adolfo | http://daisha.biz | +| Lead Intranet Officer | 6.4.9 | Expression | | | Margaret | https://michaela.name | +| | | | | | Jody | http://jakob.org | +| | | | | | Anjali | https://valentin.info | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| Human Usability Specialist | 3.2.8 | Expression | | http://micah.info | Evalyn | https://myrtis.name | +| | | | | | Ursula | https://werner.net | +| | | | | | Linwood | http://rebekah.org | +| | | | | | Cleve | https://claudie.net | +| | | | | | Theodora | http://faye.info | +| International Integration Orchestrator | 5.4.5 | Expression | | | Steve | http://lon.org | +| | | | | | Braeden | https://sunny.name | +| | | | | | Leslie | http://bettie.info | +| | | | | | Edmund | http://sadie.info | +| | | | | | Horacio | https://loraine.name | +| Global Branding Associate | 0.5.9 | Expression | If we calculate the firewall, we can get to the HDD firewall through the haptic HDD firewall! | http://cory.com | Suzanne | http://ima.name | +| | | | | | Earnestine | http://nathanial.biz | +| | | | | | Connor | https://augustus.net | +| | | | | | Araceli | http://hailey.biz | +| | | | | | Janessa | https://craig.com | +| | | | | | Erica | http://kristin.org | +| | | | | | Alek | http://shany.biz | +| Lead Markets Designer | 2.8.4 | Url | | https://amara.info | Seamus | http://maybell.info | +| | | | | | Monserrat | http://katrine.name | +| | | | | | Abel | https://geovany.com | +| | | | | | Diana | http://eula.name | +| | | | | | Raphael | https://zackery.info | +| Corporate Tactics Analyst | 3.0.8 | Url | If we synthesize the bus, we can get to the SDD bus through the 1080p SDD bus! | | Bill | http://jairo.net | +| | | | | | Clemmie | http://shanny.net | +| | | | | | Hildegard | http://conner.name | +| | | | | | Isabella | https://kennith.com | +| | | | | | Johanna | https://ara.org | +| | | | | | Demarco | https://rae.biz | +| | | | | | Viviane | http://christine.info | +| Global Optimization Representative | 8.2.6 | Url | | | Brandi | https://aniyah.com | +| | | | | | Tyson | https://bonita.org | +| | | | | | Jazlyn | http://madonna.net | +| | | | | | Deangelo | https://jess.info | +| | | | | | Alvah | https://hans.net | +| | | | | | Payton | http://shanna.name | +| | | | | | Providenci | https://tyra.org | +| | | | | | Flo | http://isidro.net | +| | | | | | Dawn | https://anika.org | +| | | | | | Silas | http://zane.name | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Investor Research Facilitator | 5.7.5 | Expression | | | Avery | http://jarret.biz | +| | | | | | Clarissa | https://audreanne.name | +| | | | | | Vida | https://theresia.biz | +| | | | | | Ransom | http://isom.com | +| | | | | | Anastasia | http://kamryn.info | +| | | | | | Marlene | https://cyril.name | +| | | | | | Zetta | http://pete.org | +| | | | | | Candida | https://craig.biz | +| | | | | | Timmothy | https://joanny.biz | +| | | | | | Alfonzo | http://dorothea.org | +| Customer Program Technician | 1.7.7 | Expression | | | Keely | http://obie.org | +| | | | | | Caleigh | https://albin.info | +| | | | | | Flavie | http://lavonne.biz | +| | | | | | Kaitlyn | http://osborne.org | +| | | | | | Joesph | https://michael.name | +| | | | | | Kali | http://shyanne.net | +| | | | | | Austin | https://marty.net | +| | | | | | Theresia | http://kristin.net | +| | | | | | Lester | https://paige.com | +| Direct Accounts Associate | 3.2.6 | Unknown | | https://vesta.com | Buck | http://taryn.com | +| | | | | | Hilton | http://isabel.com | +| | | | | | Rogers | https://bertrand.biz | +| | | | | | Annetta | https://remington.org | +| | | | | | Efrain | http://davion.org | +| | | | | | Merle | https://abigayle.org | +| | | | | | Jerod | https://vicenta.info | +| | | | | | Kayli | https://shaun.net | +| | | | | | Antwan | https://hazel.net | +| Legacy Optimization Orchestrator | 2.4.2 | Expression | If we calculate the sensor, we can get to the PNG sensor through the haptic PNG sensor! | | Damien | https://edyth.com | +| | | | | | Princess | http://haylie.biz | +| | | | | | Jordane | https://gregorio.com | +| | | | | | Opal | http://abbie.org | +| | | | | | Pablo | https://maxime.biz | +| | | | | | Shaun | https://concepcion.net | +| | | | | | Moises | http://rupert.info | +| Dynamic Marketing Consultant | 2.4.9 | Unknown | | | Angie | https://ardella.info | +| | | | | | Melissa | https://sandra.biz | +| | | | | | Pearline | https://noble.net | +| | | | | | Dusty | https://verlie.com | ++----------------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------------------+-----------------------+-------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt new file mode 100644 index 00000000..d181fddd --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=3.verified.txt @@ -0,0 +1,22 @@ ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | ++-------------------------------+---------+----------------------------+--------------------------------------------------------------------------------------+---------------------+-----------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt new file mode 100644 index 00000000..f73237b2 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicensesWithErrors_Should_PrintCorrectTable_validCount=5_errorCount=5.verified.txt @@ -0,0 +1,35 @@ ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | Error | Error Context | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ +| Principal Functionality Agent | 1.5.3 | Expression | connecting the firewall won't do anything, we need to copy the digital XSS firewall! | | Judson | https://wilson.net | +| | | | | | Guadalupe | http://otho.info | +| | | | | | General | https://skylar.name | +| | | | | | Haylie | http://audreanne.info | +| Direct Intranet Facilitator | 7.1.7 | Url | synthesizing the feed won't do anything, we need to index the auxiliary SMTP feed! | https://garnet.net | Alisha | http://alyson.name | +| | | | | | Carmelo | http://michele.name | +| | | | | | Miles | https://freddie.com | +| | | | | | Kade | https://jaunita.biz | +| | | | | | Marcelina | http://donna.net | +| | | | | | Darby | http://joana.org | +| | | | | | Albin | http://hal.com | +| | | | | | Betsy | http://quinton.com | +| | | | | | Emmalee | https://haleigh.name | +| Senior Brand Developer | 4.4.1 | Url | If we override the system, we can get to the CSS system through the neural CSS system! | http://adelbert.net | Reid | https://amely.info | +| | | | | | Nikki | https://mckayla.info | +| | | | | | Kiara | https://floyd.net | +| | | | | | Libby | http://wade.biz | +| | | | | | Leola | https://pietro.info | +| | | | | | Arch | http://hazle.org | +| | | | | | Eldred | http://gabriel.net | +| Regional Accounts Technician | 2.8.7 | Expression | | | Dawson | http://addie.org | +| | | | | | Xander | https://everette.info | +| | | | | | Otha | https://cletus.net | +| | | | | | Carlee | https://jaron.info | +| | | | | | Nannie | https://isaias.net | +| National Solutions Coordinator | 8.7.3 | Expression | Use the bluetooth USB panel, then you can calculate the bluetooth panel! | https://adrianna.name | Maximillian | http://leola.name | +| | | | | | Shaina | http://dean.name | +| | | | | | Juana | http://aniya.biz | +| | | | | | Fernando | http://shanna.com | +| | | | | | Katelyn | https://judd.com | +| | | | | | Earl | https://bradford.biz | ++--------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+-----------------------+-------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt new file mode 100644 index 00000000..3a8346ee --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=0.verified.txt @@ -0,0 +1,4 @@ ++---------+---------+----------------------------+ +| Package | Version | License Information Origin | ++---------+---------+----------------------------+ ++---------+---------+----------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt new file mode 100644 index 00000000..e376d42b --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=1.verified.txt @@ -0,0 +1,5 @@ ++------------------------+---------+----------------------------+-------------------------------------------------------------------+---------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++------------------------+---------+----------------------------+-------------------------------------------------------------------+---------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | ++------------------------+---------+----------------------------+-------------------------------------------------------------------+---------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt new file mode 100644 index 00000000..264a96a8 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=100.verified.txt @@ -0,0 +1,104 @@ ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | +| Principal Usability Representative | 9.1.3 | Expression | We need to transmit the bluetooth FTP feed! | https://nelson.com | +| Chief Intranet Strategist | 9.7.0 | Expression | We need to copy the redundant JSON transmitter! | https://john.name | +| Customer Group Manager | 8.0.4 | Unknown | The RAM panel is down, transmit the online panel so we can transmit the RAM panel! | https://luisa.biz | +| Customer Accountability Strategist | 0.5.2 | Expression | You can't parse the firewall without navigating the solid state ADP firewall! | https://stuart.com | +| Chief Directives Executive | 9.4.9 | Url | Try to back up the THX interface, maybe it will back up the auxiliary interface! | http://jedediah.net | +| District Factors Assistant | 9.8.2 | Unknown | Try to compress the SMS bus, maybe it will compress the bluetooth bus! | https://ernestine.net | +| Legacy Interactions Analyst | 3.0.8 | Unknown | You can't parse the hard drive without generating the digital AGP hard drive! | http://logan.net | +| District Metrics Analyst | 4.6.0 | Unknown | overriding the interface won't do anything, we need to connect the digital GB interface! | http://nathaniel.name | +| Senior Accountability Specialist | 0.8.7 | Expression | We need to input the cross-platform RAM system! | http://kristina.info | +| National Usability Manager | 0.3.8 | Url | quantifying the card won't do anything, we need to navigate the virtual USB card! | http://myriam.name | +| Lead Tactics Executive | 6.2.9 | Expression | I'll transmit the online TCP driver, that should driver the TCP driver! | https://maxwell.name | +| Principal Accountability Facilitator | 2.1.4 | Expression | Use the back-end XML protocol, then you can reboot the back-end protocol! | https://dillan.net | +| Internal Quality Director | 5.3.0 | Url | Use the redundant AI alarm, then you can transmit the redundant alarm! | http://hyman.com | +| Chief Web Specialist | 7.4.0 | Url | navigating the monitor won't do anything, we need to input the wireless JSON monitor! | http://keely.net | +| Lead Accountability Orchestrator | 2.6.2 | Expression | You can't connect the panel without bypassing the bluetooth SSL panel! | https://tre.org | +| International Metrics Officer | 3.7.1 | Expression | hacking the array won't do anything, we need to back up the haptic IB array! | https://myrl.info | +| Forward Data Administrator | 9.0.6 | Url | Try to connect the XSS alarm, maybe it will connect the auxiliary alarm! | https://michelle.org | +| Regional Data Strategist | 3.5.3 | Url | I'll transmit the optical USB program, that should program the USB program! | https://sedrick.biz | +| Regional Accountability Assistant | 2.7.5 | Unknown | You can't program the alarm without overriding the cross-platform RSS alarm! | http://barney.com | +| Product Integration Officer | 3.3.6 | Url | Use the primary PNG matrix, then you can copy the primary matrix! | https://howard.org | +| Customer Group Technician | 9.8.2 | Url | programming the system won't do anything, we need to synthesize the primary AGP system! | https://sandrine.name | +| Lead Factors Planner | 1.0.4 | Expression | You can't compress the driver without calculating the back-end SQL driver! | http://mikayla.com | +| Corporate Data Assistant | 7.9.8 | Url | Try to generate the SMTP feed, maybe it will generate the online feed! | http://arlene.biz | +| Human Functionality Associate | 9.4.1 | Url | I'll hack the redundant SCSI monitor, that should monitor the SCSI monitor! | https://bonita.biz | +| Dynamic Research Representative | 1.6.9 | Url | You can't copy the alarm without synthesizing the 1080p IB alarm! | https://carol.org | +| Internal Accounts Specialist | 4.9.2 | Url | The XML hard drive is down, hack the auxiliary hard drive so we can hack the XML hard drive! | https://wilfredo.biz | +| Corporate Program Facilitator | 2.7.4 | Url | I'll navigate the mobile TCP bus, that should bus the TCP bus! | https://vida.net | +| Investor Division Planner | 1.4.6 | Url | I'll hack the solid state JSON sensor, that should sensor the JSON sensor! | https://evelyn.info | +| National Response Planner | 7.8.0 | Url | Try to synthesize the PNG application, maybe it will synthesize the auxiliary application! | https://hertha.org | +| National Accountability Administrator | 5.9.9 | Expression | Use the neural IB matrix, then you can generate the neural matrix! | http://julio.info | +| Legacy Branding Orchestrator | 0.2.6 | Unknown | We need to bypass the back-end FTP alarm! | https://keeley.net | +| Product Infrastructure Orchestrator | 5.0.6 | Unknown | If we reboot the circuit, we can get to the PCI circuit through the virtual PCI circuit! | http://forrest.com | +| Forward Infrastructure Specialist | 6.1.6 | Unknown | quantifying the driver won't do anything, we need to synthesize the neural PNG driver! | http://melisa.com | +| District Directives Analyst | 9.3.0 | Unknown | Try to navigate the SCSI firewall, maybe it will navigate the digital firewall! | http://bridie.biz | +| Future Group Director | 2.3.4 | Expression | I'll synthesize the open-source RSS firewall, that should firewall the RSS firewall! | https://luna.info | +| Regional Branding Facilitator | 0.3.9 | Url | We need to connect the optical SQL capacitor! | https://otilia.info | +| Global Configuration Planner | 2.6.3 | Unknown | connecting the circuit won't do anything, we need to copy the online EXE circuit! | http://willis.name | +| Customer Assurance Consultant | 5.6.2 | Url | Use the digital IB alarm, then you can program the digital alarm! | https://eryn.org | +| District Interactions Developer | 9.9.4 | Url | I'll compress the haptic AI bandwidth, that should bandwidth the AI bandwidth! | http://adrien.biz | +| Human Optimization Director | 0.1.8 | Unknown | We need to transmit the back-end PCI panel! | https://crystal.info | +| Principal Solutions Supervisor | 6.1.2 | Unknown | programming the driver won't do anything, we need to parse the 1080p AGP driver! | https://ari.biz | +| Product Paradigm Director | 6.3.8 | Expression | Use the wireless THX array, then you can connect the wireless array! | http://kiera.org | +| Senior Group Designer | 3.0.6 | Url | We need to copy the cross-platform SAS panel! | http://keyshawn.net | +| Product Intranet Assistant | 2.8.1 | Unknown | You can't parse the bandwidth without quantifying the wireless THX bandwidth! | https://chance.name | +| Product Security Developer | 4.4.5 | Unknown | parsing the driver won't do anything, we need to parse the primary TCP driver! | https://maida.org | +| Corporate Paradigm Administrator | 5.5.2 | Url | Try to reboot the SMS feed, maybe it will reboot the bluetooth feed! | http://trace.net | +| Product Interactions Executive | 5.4.8 | Url | We need to override the auxiliary AGP firewall! | https://maye.org | +| Central Creative Analyst | 3.6.4 | Expression | programming the driver won't do anything, we need to calculate the primary SMTP driver! | http://abigayle.net | +| Internal Division Assistant | 0.9.4 | Expression | The SMTP card is down, transmit the virtual card so we can transmit the SMTP card! | http://emerson.info | +| Dynamic Brand Officer | 1.1.5 | Unknown | If we transmit the application, we can get to the SAS application through the wireless SAS application! | https://shayne.name | +| Global Usability Manager | 6.7.0 | Url | We need to parse the mobile SCSI protocol! | https://alexandra.info | +| Chief Markets Agent | 8.8.4 | Unknown | I'll hack the optical COM alarm, that should alarm the COM alarm! | http://dayana.name | +| Human Configuration Assistant | 0.1.1 | Url | We need to hack the mobile SMS circuit! | https://aurelia.info | +| Direct Group Consultant | 8.8.0 | Unknown | I'll index the neural SDD bus, that should bus the SDD bus! | https://alana.org | +| Senior Implementation Associate | 8.2.9 | Unknown | synthesizing the bandwidth won't do anything, we need to generate the wireless ADP bandwidth! | http://roderick.org | +| Legacy Research Producer | 2.8.3 | Url | backing up the monitor won't do anything, we need to quantify the back-end CSS monitor! | https://sonia.org | +| Legacy Accountability Agent | 5.8.2 | Unknown | I'll compress the auxiliary XSS port, that should port the XSS port! | http://chelsea.com | +| District Group Associate | 4.0.1 | Expression | We need to transmit the redundant TCP panel! | https://noemi.info | +| Future Factors Representative | 9.2.0 | Url | Use the solid state SDD application, then you can navigate the solid state application! | https://jazmin.org | +| Customer Applications Developer | 5.6.1 | Unknown | We need to connect the bluetooth RAM application! | http://kiley.org | +| Direct Data Consultant | 6.3.3 | Url | Use the haptic XML driver, then you can index the haptic driver! | https://heath.name | +| Internal Division Agent | 2.4.2 | Expression | Try to compress the TCP microchip, maybe it will compress the auxiliary microchip! | http://armani.name | +| Direct Research Assistant | 5.9.7 | Unknown | Try to connect the TCP circuit, maybe it will connect the back-end circuit! | http://danial.org | +| Legacy Optimization Assistant | 8.8.2 | Url | The RAM sensor is down, generate the mobile sensor so we can generate the RAM sensor! | https://scot.info | +| National Tactics Administrator | 9.2.8 | Url | The FTP card is down, index the digital card so we can index the FTP card! | https://brett.biz | +| Human Directives Specialist | 4.3.4 | Url | I'll reboot the virtual CSS program, that should program the CSS program! | http://tabitha.name | +| Forward Web Assistant | 3.5.5 | Expression | The COM array is down, calculate the open-source array so we can calculate the COM array! | https://tremayne.org | +| Product Operations Liaison | 1.1.0 | Expression | You can't generate the array without quantifying the open-source PCI array! | http://tabitha.com | +| Legacy Accountability Coordinator | 5.5.0 | Expression | Try to back up the COM driver, maybe it will back up the bluetooth driver! | http://erling.name | +| Product Marketing Strategist | 0.1.7 | Url | I'll copy the auxiliary SSL interface, that should interface the SSL interface! | http://melany.name | +| Corporate Intranet Analyst | 0.9.0 | Expression | indexing the interface won't do anything, we need to bypass the optical HDD interface! | https://creola.info | +| Central Security Representative | 4.3.4 | Expression | The TCP bandwidth is down, hack the bluetooth bandwidth so we can hack the TCP bandwidth! | https://velva.name | +| Senior Brand Analyst | 2.5.0 | Expression | overriding the interface won't do anything, we need to override the virtual THX interface! | http://danial.name | +| Internal Directives Designer | 0.4.8 | Expression | Use the virtual AI capacitor, then you can navigate the virtual capacitor! | http://mable.net | +| Dynamic Division Consultant | 4.8.7 | Expression | The JSON pixel is down, input the multi-byte pixel so we can input the JSON pixel! | https://jack.net | +| Central Data Consultant | 6.5.0 | Url | generating the driver won't do anything, we need to hack the auxiliary HDD driver! | https://delilah.org | +| Regional Tactics Technician | 7.6.7 | Expression | If we transmit the firewall, we can get to the SQL firewall through the wireless SQL firewall! | http://alvena.net | +| Legacy Implementation Assistant | 2.1.6 | Unknown | Use the auxiliary RSS sensor, then you can program the auxiliary sensor! | https://liana.net | +| Customer Functionality Manager | 5.9.0 | Url | The TCP matrix is down, navigate the online matrix so we can navigate the TCP matrix! | https://mariane.info | +| Senior Operations Engineer | 3.1.8 | Expression | If we program the array, we can get to the JBOD array through the primary JBOD array! | http://montana.name | ++---------------------------------------+---------+----------------------------+---------------------------------------------------------------------------------------------------------+------------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt new file mode 100644 index 00000000..b9e0a987 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=20.verified.txt @@ -0,0 +1,24 @@ ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | +| National Assurance Representative | 2.0.7 | Expression | transmitting the capacitor won't do anything, we need to synthesize the back-end RAM capacitor! | http://kelley.com | +| National Tactics Liaison | 6.8.9 | Url | hacking the capacitor won't do anything, we need to compress the digital AGP capacitor! | http://jillian.net | +| Global Implementation Engineer | 6.0.7 | Expression | I'll calculate the 1080p HDD system, that should system the HDD system! | http://antonette.org | +| Forward Integration Executive | 6.6.8 | Expression | You can't index the protocol without indexing the open-source XML protocol! | http://grayce.info | +| Customer Infrastructure Planner | 6.6.0 | Url | If we program the pixel, we can get to the SMS pixel through the neural SMS pixel! | https://laurie.biz | +| Dynamic Program Administrator | 9.8.6 | Unknown | I'll quantify the bluetooth SQL circuit, that should circuit the SQL circuit! | https://malcolm.net | +| Customer Infrastructure Liaison | 0.8.0 | Unknown | Use the haptic RSS hard drive, then you can back up the haptic hard drive! | https://otho.biz | +| Customer Research Associate | 4.6.5 | Expression | I'll navigate the neural SAS card, that should card the SAS card! | http://wilmer.name | +| Central Creative Manager | 8.4.8 | Expression | Use the cross-platform THX system, then you can generate the cross-platform system! | https://carleton.info | +| Internal Operations Executive | 1.8.1 | Unknown | We need to back up the solid state XML application! | http://angel.info | +| Corporate Marketing Associate | 3.3.2 | Expression | I'll program the auxiliary XSS bus, that should bus the XSS bus! | http://nash.name | +| District Intranet Strategist | 2.2.2 | Unknown | We need to reboot the virtual RSS alarm! | http://everett.name | +| Customer Assurance Officer | 0.3.1 | Url | Try to override the EXE program, maybe it will override the mobile program! | https://kyla.biz | +| National Tactics Architect | 6.7.8 | Unknown | The PNG protocol is down, index the digital protocol so we can index the PNG protocol! | https://valentina.net | +| Chief Integration Architect | 1.6.8 | Url | Try to override the TCP firewall, maybe it will override the solid state firewall! | https://davion.net | ++-----------------------------------+---------+----------------------------+-------------------------------------------------------------------------------------------------+-----------------------+ diff --git a/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt new file mode 100644 index 00000000..d045bfc9 --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TableOutputFormatterTest(True).ValidatedLicenses_Should_PrintCorrectTable_validatedLicenseCount=5.verified.txt @@ -0,0 +1,9 @@ ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+ +| Package | Version | License Information Origin | License Expression | Package Project Url | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+ +| Legacy Metrics Planner | 9.5.0 | Unknown | I'll override the haptic AGP feed, that should feed the AGP feed! | http://madisyn.name | +| International Mobility Technician | 3.7.5 | Expression | I'll override the digital SMTP interface, that should interface the SMTP interface! | https://jayne.name | +| Principal Markets Executive | 4.2.2 | Unknown | Try to generate the EXE array, maybe it will generate the mobile array! | https://bettie.com | +| Future Identity Specialist | 4.7.4 | Expression | If we back up the driver, we can get to the AI driver through the bluetooth AI driver! | http://della.biz | +| Forward Functionality Designer | 5.5.7 | Expression | Use the redundant AGP monitor, then you can generate the redundant monitor! | https://jasen.biz | ++-----------------------------------+---------+----------------------------+----------------------------------------------------------------------------------------+---------------------+ diff --git a/tests/NuGetUtility.Test/Output/TestBase.cs b/tests/NuGetUtility.Test/Output/TestBase.cs new file mode 100644 index 00000000..252b83ef --- /dev/null +++ b/tests/NuGetUtility.Test/Output/TestBase.cs @@ -0,0 +1,92 @@ +using Bogus; +using NuGet.Versioning; +using NuGetUtility.LicenseValidator; +using NuGetUtility.Output; +using NuGetUtility.Test.Extensions; +using NuGetUtility.Test.Helper.ShuffelledEnumerable; + +namespace NuGetUtility.Test.Output +{ + public abstract class TestBase + { + private IOutputFormatter _uut = null!; + protected Faker LicenseValidationErrorFaker = null!; + + protected Faker ValidatedLicenseFaker = null!; + [SetUp] + public void SetUp() + { + ValidatedLicenseFaker = new Faker().CustomInstantiator(f => + new LicenseValidationResult(f.Name.JobTitle(), + new NuGetVersion(f.System.Semver()), + f.Internet.Url(), + f.Hacker.Phrase(), + f.Random.Enum())) + .UseSeed(8675309); + LicenseValidationErrorFaker = new Faker().CustomInstantiator(f => + new LicenseValidationResult(f.Name.JobTitle(), + new NuGetVersion(f.System.Semver()), + GetNullableUrl(f), + GetNullableLicense(f), + f.Random.Enum(), + GetErrorList(f).ToList())) + .UseSeed(9078345); + _uut = CreateUut(); + } + protected abstract IOutputFormatter CreateUut(); + + private string? GetNullableUrl(Faker faker) + { + if (faker.Random.Bool()) + { + return null; + } + return faker.Internet.Url(); + } + + private string? GetNullableLicense(Faker faker) + { + if (faker.Random.Bool()) + { + return null; + } + return faker.Hacker.Phrase(); + } + + private IEnumerable GetErrorList(Faker faker) + { + var itemCount = faker.Random.Int(3, 10); + for (var i = 0; i < itemCount; i++) + { + yield return new ValidationError(faker.Name.FirstName(), faker.Internet.Url()); + } + } + + [Test] + public async Task ValidatedLicensesWithErrors_Should_PrintCorrectTable( + [Values(0, 1, 5, 20, 100)] int validCount, + [Values(1, 3, 5, 20)] int errorCount) + { + using var stream = new MemoryStream(); + var result = LicenseValidationErrorFaker.GenerateForever() + .Take(errorCount) + .Concat(ValidatedLicenseFaker.GenerateForever().Take(validCount)) + .Shuffle(971234) + .ToList(); + await _uut.Write(stream, result); + + await Verify(stream.AsString()); + } + + [Test] + public async Task ValidatedLicenses_Should_PrintCorrectTable( + [Values(0, 1, 5, 20, 100)] int validatedLicenseCount) + { + using var stream = new MemoryStream(); + var validated = ValidatedLicenseFaker.GenerateForever().Take(validatedLicenseCount).ToList(); + await _uut.Write(stream, validated); + + await Verify(stream.AsString()); + } + } +} diff --git a/tests/NuGetUtility.Test/PackageInformationReader/PackageInformationReaderTest.cs b/tests/NuGetUtility.Test/PackageInformationReader/PackageInformationReaderTest.cs index 962f9d62..ce2eb8c7 100644 --- a/tests/NuGetUtility.Test/PackageInformationReader/PackageInformationReaderTest.cs +++ b/tests/NuGetUtility.Test/PackageInformationReader/PackageInformationReaderTest.cs @@ -79,19 +79,37 @@ public async Task GetPackageInfo_Should_PreferProvidedCustomInformation() new PackageSearchMetadataMock(new PackageIdentity(p.Id, CreateMockedVersion(p.Version))) as IPackageSearchMetadata); - var searchedPackageInfo = - await _uut!.GetPackageInfo(searchedPackages, CancellationToken.None).Synchronize(); + var (project, result) = await PerformSearch(searchedPackages); + CheckResult(result, project, _customPackageInformation); + } + private async Task<(string Project, ReferencedPackageWithContext[] Result)> PerformSearch( + IEnumerable searchedPackages) + { + var project = _fixture.Create(); + var packageSearchRequest = new ProjectWithReferencedPackages(project, searchedPackages); + var result = (await _uut!.GetPackageInfo(packageSearchRequest, CancellationToken.None).Synchronize()) + .ToArray(); + return (project, result); + } - CollectionAssert.AreEquivalent(_customPackageInformation!, - searchedPackageInfo.Select(s => new CustomPackageInformation(s.Identity.Id, - s.Identity.Version, - s.LicenseMetadata.License))); + private static void CheckResult(ReferencedPackageWithContext[] result, + string project, + IEnumerable packages) + { + CollectionAssert.AreEquivalent(packages, + result.Select(s => new CustomPackageInformation(s.PackageInfo.Identity.Id, + s.PackageInfo.Identity.Version, + s.PackageInfo.LicenseMetadata.License))); + foreach (var r in result) + { + Assert.AreEqual(project, r.Context); + } } [Test] public async Task GetPackageInfo_Should_IterateThroughRepositoriesToGetAdditionalInformation() { - var sourceRepositoriesWithPackageMetadataResource = _sourceRepositories!.Shuffle().Take(2).ToArray(); + var sourceRepositoriesWithPackageMetadataResource = _sourceRepositories!.Shuffle(2345).Take(2).ToArray(); var packageMetadataResources = sourceRepositoriesWithPackageMetadataResource.Select(r => { var metadataResource = new Mock(); @@ -103,7 +121,7 @@ public async Task GetPackageInfo_Should_IterateThroughRepositoriesToGetAdditiona foreach (var package in searchedPackagesAsPackageInformation) { - var metadataReturningProperInformation = packageMetadataResources.Shuffle().First(); + var metadataReturningProperInformation = packageMetadataResources.Shuffle(6435).First(); metadataReturningProperInformation .Setup(m => m.TryGetMetadataAsync( new NuGet.Packaging.Core.PackageIdentity(package.Id, package.Version), @@ -117,20 +135,15 @@ public async Task GetPackageInfo_Should_IterateThroughRepositoriesToGetAdditiona new PackageSearchMetadataMock(new PackageIdentity(i.Id, CreateMockedVersion(i.Version))) as IPackageSearchMetadata); - var searchedPackageInfo = - await _uut!.GetPackageInfo(searchedPackages, CancellationToken.None).Synchronize(); - - CollectionAssert.AreEquivalent(searchedPackagesAsPackageInformation, - searchedPackageInfo.Select(s => new CustomPackageInformation(s.Identity.Id, - s.Identity.Version, - s.LicenseMetadata.License))); + var (project, result) = await PerformSearch(searchedPackages); + CheckResult(result, project, searchedPackagesAsPackageInformation); } [Test] public async Task GetPackageInfo_Should_IgnoreFailingPackageMetadataResourceGetting_if_IterateThroughRepositoriesToGetAdditionalInformation() { - var shuffledRepositories = _sourceRepositories!.Shuffle(); + var shuffledRepositories = _sourceRepositories!.Shuffle(14563); var splitRepositories = shuffledRepositories.Select((repo, index) => (Index: index, Repo: repo)) .GroupBy(e => e.Index % 2) .ToArray(); @@ -154,7 +167,7 @@ public async Task foreach (var package in searchedPackagesAsPackageInformation) { - var metadataReturningProperInformation = packageMetadataResources.Shuffle().First(); + var metadataReturningProperInformation = packageMetadataResources.Shuffle(4361).First(); metadataReturningProperInformation .Setup(m => m.TryGetMetadataAsync( new NuGet.Packaging.Core.PackageIdentity(package.Id, package.Version), @@ -168,13 +181,8 @@ public async Task new PackageSearchMetadataMock(new PackageIdentity(i.Id, CreateMockedVersion(i.Version))) as IPackageSearchMetadata); - var searchedPackageInfo = - await _uut!.GetPackageInfo(searchedPackages, CancellationToken.None).Synchronize(); - - CollectionAssert.AreEquivalent(searchedPackagesAsPackageInformation, - searchedPackageInfo.Select(s => new CustomPackageInformation(s.Identity.Id, - s.Identity.Version, - s.LicenseMetadata.License))); + var (project, result) = await PerformSearch(searchedPackages); + CheckResult(result, project, searchedPackagesAsPackageInformation); } [Test] @@ -186,10 +194,19 @@ public async Task GetPackageInfo_Should_ReturnInputForPackagesWithoutProperLicen IPackageSearchMetadata) .ToArray(); - var searchedPackageInfo = - await _uut!.GetPackageInfo(searchedPackages, CancellationToken.None).Synchronize(); - - CollectionAssert.AreEquivalent(searchedPackages, searchedPackageInfo); + var (project, result) = await PerformSearch(searchedPackages); + CheckResult(result, project, searchedPackages); + } + private void CheckResult(ReferencedPackageWithContext[] result, + string project, + IPackageSearchMetadata[] packages) + { + CollectionAssert.AreEquivalent(packages, + result.Select(s => s.PackageInfo)); + foreach (var r in result) + { + Assert.AreEqual(project, r.Context); + } } private INuGetVersion CreateMockedVersion(NuGetVersion innerVersion) diff --git a/tests/NuGetUtility.Test/ReferencedPackagesReader/ProjectsCollectorTest.cs b/tests/NuGetUtility.Test/ReferencedPackagesReader/ProjectsCollectorTest.cs index fa83d0e8..65930303 100644 --- a/tests/NuGetUtility.Test/ReferencedPackagesReader/ProjectsCollectorTest.cs +++ b/tests/NuGetUtility.Test/ReferencedPackagesReader/ProjectsCollectorTest.cs @@ -3,7 +3,6 @@ using NuGetUtility.ReferencedPackagesReader; using NuGetUtility.Test.Helper.ShuffelledEnumerable; using NuGetUtility.Wrapper.MsBuildWrapper; -using NUnit.Framework; namespace NuGetUtility.Test.ReferencedPackagesReader { @@ -96,7 +95,7 @@ public void GetProjects_Should_ReturnOnlyExistingProjectsInSolutionFile(string s CreateFiles(existingProjects); _msBuild.Setup(m => m.GetProjectsFromSolution(It.IsAny())) - .Returns(existingProjects.Concat(missingProjects).Shuffle()); + .Returns(existingProjects.Concat(missingProjects).Shuffle(54321)); var result = _uut.GetProjects(solutionFile); CollectionAssert.AreEquivalent(existingProjects, result); diff --git a/tests/NuGetUtility.Test/ReferencedPackagesReader/ReferencedPackagesReaderTest.cs b/tests/NuGetUtility.Test/ReferencedPackagesReader/ReferencedPackageReaderTest.cs similarity index 99% rename from tests/NuGetUtility.Test/ReferencedPackagesReader/ReferencedPackagesReaderTest.cs rename to tests/NuGetUtility.Test/ReferencedPackagesReader/ReferencedPackageReaderTest.cs index 36ef07e0..b2cebf72 100644 --- a/tests/NuGetUtility.Test/ReferencedPackagesReader/ReferencedPackagesReaderTest.cs +++ b/tests/NuGetUtility.Test/ReferencedPackagesReader/ReferencedPackageReaderTest.cs @@ -74,7 +74,7 @@ public void SetUp() foreach (var targetFramework in _targetFrameworks) { - var returnedLibraries = _lockFileLibraries.Shuffle() + var returnedLibraries = _lockFileLibraries.Shuffle(75643) .Take(5) .Select(l => new PackageReference(l.Object.Name, l.Object.Version)) .ToArray(); @@ -173,7 +173,7 @@ public void Assert.AreEqual( $"Failed to identify the target framework information for {_lockFileTargets!.First().Object}", exception!.Message); - Assert.IsInstanceOf(typeof(InvalidOperationException), exception!.InnerException); + Assert.IsInstanceOf(typeof(InvalidOperationException), exception.InnerException); Assert.AreEqual(exception.InnerException!.Message, "Sequence contains no matching element"); } @@ -238,7 +238,7 @@ public void GetInstalledPackages_Should_ReturnCorrectValues_If_NotIncludingTrans [Test] public void GetInstalledPackages_Should_ReturnCorrectValues_If_IncludingTransitive_if_IgnoringPackages() { - var ignoredPackageName = _lockFileLibraries!.Shuffle().First().Object.Name; + var ignoredPackageName = _lockFileLibraries!.Shuffle(6543154).First().Object.Name; _ignoredPackages = _ignoredPackages!.Append(ignoredPackageName); _uut = new ReferencedPackageReader(_ignoredPackages, @@ -265,7 +265,7 @@ public void GetInstalledPackages_Should_ReturnCorrectValues_If_NotIncludingTrans directReferences.Any(e => e.Version!.Equals(l.Object.Version))) .ToArray(); - var ignoredPackageName = directReferencesResult.Shuffle().First().Object.Name; + var ignoredPackageName = directReferencesResult.Shuffle(9).First().Object.Name; _ignoredPackages = _ignoredPackages!.Append(ignoredPackageName); _uut = new ReferencedPackageReader(_ignoredPackages,