-
Notifications
You must be signed in to change notification settings - Fork 348
/
Copy pathTest_SelfContained.cpp
79 lines (67 loc) · 3.06 KB
/
Test_SelfContained.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
// Copyright (c) Microsoft Corporation and Contributors.
// Licensed under the MIT License.
#include "pch.h"
namespace TB = ::Test::Bootstrap;
namespace TP = ::Test::Packages;
namespace Test::Common
{
class SelfContainedTests
{
public:
BEGIN_TEST_CLASS(SelfContainedTests)
TEST_CLASS_PROPERTY(L"IsolationLevel", L"Method")
TEST_CLASS_PROPERTY(L"ThreadingModel", L"MTA")
TEST_CLASS_PROPERTY(L"RunFixtureAs:Class", L"RestrictedUser")
END_TEST_CLASS()
TEST_CLASS_SETUP(ClassSetup)
{
::TB::SetupPackages();
return true;
}
TEST_CLASS_CLEANUP(ClassCleanup)
{
::TB::CleanupPackages();
return true;
}
TEST_METHOD(Unpackaged_SelfContained_Yes)
{
::TB::SetupBootstrap();
auto cleanup = wil::scope_exit([&] {
::WindowsAppRuntime::VersionInfo::TestShutdown();
::TB::CleanupBootstrap();
});
const auto c_doesNotExistPackageFamilyName{ L"Test.PackageFamilyName.DoesNotExist_1234567890abc" };
::WindowsAppRuntime::VersionInfo::TestInitialize(c_doesNotExistPackageFamilyName, c_doesNotExistPackageFamilyName);
VERIFY_IS_TRUE(::WindowsAppRuntime::SelfContained::IsSelfContained());
}
TEST_METHOD(Unpackaged_SelfContained_No)
{
{
::TB::SetupBootstrap();
auto cleanup = wil::scope_exit([&]{
::WindowsAppRuntime::VersionInfo::TestShutdown();
::TB::CleanupBootstrap();
});
WindowsAppRuntime::VersionInfo::TestInitialize(::TP::WindowsAppRuntimeFramework::c_PackageFamilyName,
::TP::WindowsAppRuntimeMain::c_PackageFamilyName);
VERIFY_IS_FALSE(::WindowsAppRuntime::SelfContained::IsSelfContained());
}
}
TEST_METHOD(Unpackaged_SelfContained)
{
::TB::SetupBootstrap();
auto cleanup = wil::scope_exit([&] {
::WindowsAppRuntime::VersionInfo::TestShutdown();
::TB::CleanupBootstrap();
});
const auto c_doesNotExistPackageFamilyName{ L"Test.PackageFamilyName.DoesNotExist_1234567890abc" };
WindowsAppRuntime::VersionInfo::TestInitialize(c_doesNotExistPackageFamilyName, c_doesNotExistPackageFamilyName);
VERIFY_IS_TRUE(::WindowsAppRuntime::SelfContained::IsSelfContained());
WindowsAppRuntime::VersionInfo::TestInitialize(::TP::WindowsAppRuntimeFramework::c_PackageFamilyName,
::TP::WindowsAppRuntimeMain::c_PackageFamilyName);
VERIFY_IS_FALSE(::WindowsAppRuntime::SelfContained::IsSelfContained());
WindowsAppRuntime::VersionInfo::TestInitialize(c_doesNotExistPackageFamilyName, c_doesNotExistPackageFamilyName);
VERIFY_IS_TRUE(::WindowsAppRuntime::SelfContained::IsSelfContained());
}
};
}