-
Notifications
You must be signed in to change notification settings - Fork 52
Expand file tree
/
Copy pathTestSettingExtensions.cs
More file actions
73 lines (61 loc) · 2.71 KB
/
TestSettingExtensions.cs
File metadata and controls
73 lines (61 loc) · 2.71 KB
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
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
namespace Microsoft.PowerApps.TestEngine.Config
{
/// <summary>
/// Test Settings for modules
/// </summary>
public class TestSettingExtensions
{
/// <summary>
/// Determine if extension modules should be enabled
/// </summary>
public bool Enable { get; set; } = true;
public TestSettingExtensionSource Source { get; set; } = new TestSettingExtensionSource() { };
/// <summary>
/// Determine if extension modules should be checks for Namespace and Certificate rules
/// </summary>
#if RELEASE
public bool CheckAssemblies { get; } = true;
#else
public bool CheckAssemblies { get; set; } = true;
#endif
/// <summary>
/// List of allowed Test Engine Modules that can be referenced.
/// </summary>
public HashSet<string> AllowModule { get; set; } = new HashSet<string>() { "*" };
/// <summary>
/// List of allowed Test Engine Modules cannot be loaded unless there is an explict allow
/// </summary>
public HashSet<string> DenyModule { get; set; } = new HashSet<string>();
/// <summary>
/// List of allowed .Net Namespaces that can be referenced in a Test Engine Module
/// </summary>
#if RELEASE
//restricting for current milestone 1
public HashSet<string> AllowNamespaces { get; } = new HashSet<string>();
#else
public HashSet<string> AllowNamespaces { get; set; } = new HashSet<string>();
#endif
/// <summary>
/// List of allowed .Net Namespaces that deney load unless explict allow is defined
/// </summary>
public HashSet<string> DenyNamespaces { get; set; } = new HashSet<string>();
/// <summary>
/// List of allowed PowerFx Namespaces that can be referenced in a Test Engine Module
/// </summary>
public HashSet<string> AllowPowerFxNamespaces { get; set; } = new HashSet<string>();
/// <summary>
/// List of allowed PowerFx Namespaces that deny load unless explict allow is defined
/// </summary>
public HashSet<string> DenyPowerFxNamespaces { get; set; } = new HashSet<string>();
// <summary>
// List of action class names (or wildcard patterns) that are allowed to be registered in the root namespace
// </summary>
public HashSet<string> AllowActionsInRoot { get; set; } = new HashSet<string>() { "PauseFunction" };
/// <summary>
/// Additional optional parameters for extension modules
/// </summary>
public Dictionary<string, string> Parameters { get; set; } = new Dictionary<string, string>();
}
}