aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src/tests_arguments.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'toolsrc/src/tests_arguments.cpp')
-rw-r--r--toolsrc/src/tests_arguments.cpp46
1 files changed, 46 insertions, 0 deletions
diff --git a/toolsrc/src/tests_arguments.cpp b/toolsrc/src/tests_arguments.cpp
new file mode 100644
index 000000000..33121b93a
--- /dev/null
+++ b/toolsrc/src/tests_arguments.cpp
@@ -0,0 +1,46 @@
+#include "CppUnitTest.h"
+#include "VcpkgCmdArguments.h"
+
+#pragma comment(lib,"version")
+#pragma comment(lib,"winhttp")
+
+using namespace Microsoft::VisualStudio::CppUnitTestFramework;
+
+using namespace vcpkg;
+
+namespace UnitTest1
+{
+ TEST_CLASS(ArgumentTests)
+ {
+ public:
+ TEST_METHOD(create_from_arg_sequence_options_lower)
+ {
+ std::vector<std::string> t = {
+ "--vcpkg-root", "C:\vcpkg",
+ "--debug",
+ "--sendmetrics",
+ "--printmetrics"
+ };
+ auto v = VcpkgCmdArguments::create_from_arg_sequence(t.data(), t.data() + t.size());
+ Assert::AreEqual("C:\vcpkg", v.vcpkg_root_dir.get()->c_str());
+ Assert::IsTrue(vcpkg::OptBoolC::ENABLED == v.debug);
+ Assert::IsTrue(vcpkg::OptBoolC::ENABLED == v.sendmetrics);
+ Assert::IsTrue(vcpkg::OptBoolC::ENABLED == v.printmetrics);
+ }
+
+ TEST_METHOD(create_from_arg_sequence_options_upper)
+ {
+ std::vector<std::string> t = {
+ "--VCPKG-ROOT", "C:\vcpkg",
+ "--DEBUG",
+ "--SENDMETRICS",
+ "--PRINTMETRICS"
+ };
+ auto v = VcpkgCmdArguments::create_from_arg_sequence(t.data(), t.data() + t.size());
+ Assert::AreEqual("C:\vcpkg", v.vcpkg_root_dir.get()->c_str());
+ Assert::IsTrue(vcpkg::OptBoolC::ENABLED == v.debug);
+ Assert::IsTrue(vcpkg::OptBoolC::ENABLED == v.sendmetrics);
+ Assert::IsTrue(vcpkg::OptBoolC::ENABLED == v.printmetrics);
+ }
+ };
+}