winget-cli

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

HashCommand.cs (2719B)


      1 // -----------------------------------------------------------------------------
      2 // <copyright file="HashCommand.cs" company="Microsoft Corporation">
      3 //     Copyright (c) Microsoft Corporation. Licensed under the MIT License.
      4 // </copyright>
      5 // -----------------------------------------------------------------------------
      6 
      7 namespace AppInstallerCLIE2ETests
      8 {
      9     using AppInstallerCLIE2ETests.Helpers;
     10     using NUnit.Framework;
     11     using NUnit.Framework.Internal;
     12 
     13     /// <summary>
     14     /// Test hash command.
     15     /// </summary>
     16     public class HashCommand : BaseCommand
     17     {
     18         /// <summary>
     19         /// Test hash file.
     20         /// </summary>
     21         [Test]
     22         public void HashFile()
     23         {
     24             var result = TestCommon.RunAICLICommand("hash", TestCommon.GetTestDataFile("AppInstallerTestMsiInstaller.msi"));
     25             Assert.AreEqual(Constants.ErrorCode.S_OK, result.ExitCode);
     26             Assert.True(result.StdOut.Contains("21d90ee9b3569590c624836ef50bf39791c7184869c227eedc00585e1f39b4de"));
     27         }
     28 
     29         /// <summary>
     30         /// Test hash msix.
     31         /// </summary>
     32         [Test]
     33         public void HashMSIX()
     34         {
     35             var result = TestCommon.RunAICLICommand("hash", TestCommon.GetTestDataFile(Constants.TestPackage) + " -m");
     36             Assert.AreEqual(Constants.ErrorCode.S_OK, result.ExitCode);
     37             Assert.True(result.StdOut.Contains("08917b781939a7796746b5e2349e1f1d83b6c15599b60cd3f62816f15e565fc4"));
     38             Assert.True(result.StdOut.Contains("223b318c4b1154a1fb72b1bc23422810faa5ce899a8e774ba2a02834b2058f00"));
     39         }
     40 
     41         /// <summary>
     42         /// Test hash invalid msix.
     43         /// </summary>
     44         [Test]
     45         public void HashInvalidMSIX()
     46         {
     47             var result = TestCommon.RunAICLICommand("hash", TestCommon.GetTestDataFile("AppInstallerTestMsiInstaller.msi") + " -m");
     48             Assert.AreEqual(Constants.ErrorCode.OPC_E_ZIP_MISSING_END_OF_CENTRAL_DIRECTORY, result.ExitCode);
     49             Assert.True(result.StdOut.Contains("21d90ee9b3569590c624836ef50bf39791c7184869c227eedc00585e1f39b4de"));
     50             Assert.True(result.StdOut.Contains("Please verify that the input file is a valid, signed MSIX."));
     51         }
     52 
     53         /// <summary>
     54         /// Test hash file not found.
     55         /// </summary>
     56         [Test]
     57         public void HashFileNotFound()
     58         {
     59             var result = TestCommon.RunAICLICommand("hash", TestCommon.GetTestDataFile("DoesNot.Exist"));
     60             Assert.AreEqual(Constants.ErrorCode.ERROR_FILE_NOT_FOUND, result.ExitCode);
     61             Assert.True(result.StdOut.Contains("File does not exist"));
     62         }
     63     }
     64 }