]> git.saurik.com Git - apple/security.git/blob - RegressionTests/bats_utd_plist.h
Security-59306.61.1.tar.gz
[apple/security.git] / RegressionTests / bats_utd_plist.h
1 #include <TargetConditionals.h>
2
3 /*
4 * BATS Unit Test Discovery has a feature called "Disabled". This is a
5 * boolean: if True, the test is not run.
6 *
7 * Every test in Security.plist has a "Disabled" string:
8 * <dict>
9 * <key>TestName</key>
10 * <string>KeychainSecd_iOS</string>
11 * <key>Disabled</key>
12 * <string>BATS_UTD_Disabled_KeychainSecd_iOS</string>
13 * </dict>
14 *
15 * In Security.plist, we use a string instead of a boolean. We will convert to
16 * booleans during the preprocssor stage. This allows use to edit the plists
17 * in xcode. So, the final plist will look like:
18 * <dict>
19 * <key>TestName</key>
20 * <string>KeychainSecd_iOS</string>
21 * <key>Disabled</key>
22 * <true/>
23 * </dict>
24 *
25 * When you add a new test, you will need to add a define to each branch and
26 * specify which platform you want the test to run on.
27 *
28 * If this include becomes to ugly, we either will need to have seperate UTD
29 * plists per platform or have the test executable skip if on platforms it does
30 * not like.
31 */
32
33 #if TARGET_OS_BRIDGE
34 /* For BridgeOS, only two tests are currently working */
35 #define BATS_UTD_Disabled_AuthorizationTest _TRUE_
36 #define BATS_UTD_Disabled_EduModeTest _FALSE_
37 #define BATS_UTD_Disabled_KCPairingTest _TRUE_
38 #define BATS_UTD_Disabled_KeychainAnalyticsTests _TRUE_
39 #define BATS_UTD_Disabled_KeychainMockAKSTests _TRUE_
40 #define BATS_UTD_Disabled_KeychainSecd_iOS _TRUE_
41 #define BATS_UTD_Disabled_KeychainSecd_macOS _TRUE_
42 #define BATS_UTD_Disabled_SecurityUtiltitesTests _TRUE_
43 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_1 _TRUE_
44 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_2 _TRUE_
45 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_3 _TRUE_
46 #define BATS_UTD_Disabled_keystorectl_get_lock_state _FALSE_
47 #define BATS_UTD_Disabled_security_sysdiagnose _TRUE_
48
49 #elif TARGET_OS_OSX
50 /* For MacOS, we disable the iOS only tests. */
51 #define BATS_UTD_Disabled_AuthorizationTest _FALSE_
52 #define BATS_UTD_Disabled_EduModeTest _FALSE_
53 #define BATS_UTD_Disabled_KCPairingTest _FALSE_
54 #define BATS_UTD_Disabled_KeychainAnalyticsTests _FALSE_
55 #define BATS_UTD_Disabled_KeychainMockAKSTests _FALSE_
56 #define BATS_UTD_Disabled_KeychainSecd_iOS _TRUE_
57 #define BATS_UTD_Disabled_KeychainSecd_macOS _FALSE_
58 #define BATS_UTD_Disabled_SecurityUtiltitesTests _FALSE_
59 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_1 _FALSE_
60 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_2 _FALSE_
61 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_3 _FALSE_
62 #define BATS_UTD_Disabled_keystorectl_get_lock_state _FALSE_
63 #define BATS_UTD_Disabled_security_sysdiagnose _FALSE_
64
65 #else
66 /* By default, assume iOS platforms. We disable the MacOS only tests. */
67 #define BATS_UTD_Disabled_AuthorizationTest _TRUE_
68 #define BATS_UTD_Disabled_EduModeTest _FALSE_
69 #define BATS_UTD_Disabled_KCPairingTest _FALSE_
70 #define BATS_UTD_Disabled_KeychainAnalyticsTests _FALSE_
71 #define BATS_UTD_Disabled_KeychainMockAKSTests _FALSE_
72 #define BATS_UTD_Disabled_KeychainSecd_iOS _FALSE_
73 #define BATS_UTD_Disabled_KeychainSecd_macOS _TRUE_
74 #define BATS_UTD_Disabled_SecurityUtiltitesTests _FALSE_
75 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_1 _FALSE_
76 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_2 _FALSE_
77 #define BATS_UTD_Disabled_keychainnetworkextensionsharing_3 _FALSE_
78 #define BATS_UTD_Disabled_keystorectl_get_lock_state _FALSE_
79 #define BATS_UTD_Disabled_security_sysdiagnose _FALSE_
80
81 #endif