winget-cli

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

PackageDependenciesValidationUtil.cpp (1614B)


      1 // Copyright (c) Microsoft Corporation.
      2 // Licensed under the MIT License.
      3 #include "pch.h"
      4 #include "TestCommon.h"
      5 #include "TestSource.h"
      6 #include <public/winget/PackageDependenciesValidationUtil.h>
      7 
      8 using namespace AppInstaller::Manifest;
      9 
     10 TEST_CASE("GetValidationResultFromException", "[PackageDependenciesValidationUtil][dependencies]")
     11 {
     12     std::map<WinGetManifestDependenciesErrorResult, const ManifestException> dependenciesErrorMessageMap =
     13     {
     14         { WinGetManifestDependenciesErrorResult::SingleManifestPackageHasDependencies, ManifestException {  { ManifestError::SingleManifestPackageHasDependencies }, APPINSTALLER_CLI_ERROR_MANIFEST_FAILED } },
     15         { WinGetManifestDependenciesErrorResult::MultiManifestPackageHasDependencies, ManifestException {  { ManifestError::MultiManifestPackageHasDependencies }, APPINSTALLER_CLI_ERROR_MANIFEST_FAILED } },
     16         { WinGetManifestDependenciesErrorResult::MissingManifestDependenciesNode, ManifestException {  { ManifestError::MissingManifestDependenciesNode }, APPINSTALLER_CLI_ERROR_MANIFEST_FAILED } },
     17         { WinGetManifestDependenciesErrorResult::NoSuitableMinVersionDependency, ManifestException {  { ManifestError::NoSuitableMinVersionDependency }, APPINSTALLER_CLI_ERROR_MANIFEST_FAILED } },
     18         { WinGetManifestDependenciesErrorResult::FoundDependencyLoop, ManifestException {  { ManifestError::FoundDependencyLoop }, APPINSTALLER_CLI_ERROR_MANIFEST_FAILED } },
     19     };
     20 
     21     for (auto current : dependenciesErrorMessageMap)
     22     {
     23         REQUIRE(GetDependenciesValidationResultFromException(current.second) == current.first);
     24     }
     25 }