winget-cli

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

ResultTests.cpp (1999B)


      1 // Copyright (c) Microsoft Corporation.
      2 // Licensed under the MIT License.
      3 
      4 #include "sfsclient/Result.h"
      5 
      6 #include <catch2/catch_test_macros.hpp>
      7 
      8 #define TEST(...) TEST_CASE("[ResultTests] " __VA_ARGS__)
      9 
     10 using namespace SFS;
     11 
     12 TEST("Testing Result() class methods")
     13 {
     14     SECTION("Default constructor")
     15     {
     16         Result resultSuccess(Result::Code::Success);
     17 
     18         REQUIRE(resultSuccess.GetCode() == Result::Code::Success);
     19         REQUIRE(resultSuccess.GetMsg().empty());
     20         REQUIRE(resultSuccess.IsSuccess());
     21         REQUIRE_FALSE(resultSuccess.IsFailure());
     22 
     23         INFO("Comparison operators");
     24         REQUIRE(resultSuccess == Result::Code::Success);
     25         REQUIRE(resultSuccess == Result::Success);
     26         REQUIRE(resultSuccess != Result::Code::NotSet);
     27         REQUIRE(resultSuccess != Result::NotSet);
     28         REQUIRE_FALSE(resultSuccess == Result::NotSet);
     29 
     30         INFO("bool operator");
     31         REQUIRE(resultSuccess);
     32     }
     33 
     34     SECTION("Constructor with message")
     35     {
     36         Result resultUnexpected(Result::Code::Unexpected, "message");
     37         REQUIRE(resultUnexpected.GetCode() == Result::Code::Unexpected);
     38         REQUIRE(resultUnexpected.GetMsg() == "message");
     39         REQUIRE_FALSE(resultUnexpected.IsSuccess());
     40         REQUIRE(resultUnexpected.IsFailure());
     41 
     42         INFO("Comparison operators on constructor with message");
     43         REQUIRE(resultUnexpected == Result::Code::Unexpected);
     44         REQUIRE(resultUnexpected != Result::Code::NotSet);
     45 
     46         INFO("bool operator");
     47         REQUIRE_FALSE(resultUnexpected);
     48     }
     49 }
     50 
     51 TEST("Testing ToString(Result)")
     52 {
     53     REQUIRE(SFS::ToString(Result::Code::Success) == "Success");
     54     REQUIRE(SFS::ToString(Result::Code::NotImpl) == "NotImpl");
     55     REQUIRE(SFS::ToString(Result::Code::NotSet) == "NotSet");
     56     REQUIRE(SFS::ToString(Result::Code::OutOfMemory) == "OutOfMemory");
     57     REQUIRE(SFS::ToString(Result::Code::Unexpected) == "Unexpected");
     58 }