@@ -127,6 +127,34 @@ module {:options "-functionSyntax:4"} WriteManifest {
127
127
},
128
128
""allowedUnsignedAttributes"" : [""Stuff"", ""Junk""]
129
129
}"
130
+ // Configuration with a new encrypted attribute not present in basic config
131
+ const ExpandedBasicConfig := @"{
132
+ ""attributeActionsOnEncrypt"": {
133
+ ""RecNum"": ""SIGN_ONLY"",
134
+ ""Stuff"": ""ENCRYPT_AND_SIGN"",
135
+ ""Junk"": ""ENCRYPT_AND_SIGN"",
136
+ ""NewThing"": ""ENCRYPT_AND_SIGN""
137
+ }
138
+ }"
139
+ // Configuration with a new sign-only attribute not present in basic config
140
+ const ExpandedSignConfig := @"{
141
+ ""attributeActionsOnEncrypt"": {
142
+ ""RecNum"": ""SIGN_ONLY"",
143
+ ""Stuff"": ""ENCRYPT_AND_SIGN"",
144
+ ""Junk"": ""ENCRYPT_AND_SIGN"",
145
+ ""NewThing"": ""SIGN_ONLY""
146
+ }
147
+ }"
148
+ // Configuration with a new DO_NOTHING attribute not present in basic config
149
+ const ExpandedDoNothingConfig := @"{
150
+ ""attributeActionsOnEncrypt"": {
151
+ ""RecNum"": ""SIGN_ONLY"",
152
+ ""Stuff"": ""ENCRYPT_AND_SIGN"",
153
+ ""Junk"": ""ENCRYPT_AND_SIGN"",
154
+ ""NewThing"": ""DO_NOTHING""
155
+ },
156
+ ""allowedUnsignedAttributes"": [""NewThing""]
157
+ }"
130
158
131
159
method TextToJson (x: string ) returns (output : JSON)
132
160
{
@@ -396,8 +424,16 @@ module {:options "-functionSyntax:4"} WriteManifest {
396
424
var test12 := MakeTest ("12", "positive-encrypt", "Basic encrypt V2 switching1", LongerV2Config1, BasicRecord, Some(LongerV2Config2));
397
425
var test13 := MakeTest ("13", "positive-encrypt", "Basic encrypt V2 switching2", LongerV2Config2, BasicRecord, Some(LongerV2Config1));
398
426
var test14 := MakeTest ("14", "positive-encrypt", "Special characters in attribute names", SpecialConfig, SpecialRecord);
427
+
428
+ var test15 := MakeTest ("15", "positive-encrypt", "Add new ENCRYPT_AND_SIGN attribute", BasicConfig, BasicRecord, Some(ExpandedBasicConfig));
429
+ var test16 := MakeTest ("16", "positive-encrypt", "Add new SIGN_ONLY attribute", BasicConfig, BasicRecord, Some(ExpandedSignConfig));
430
+ var test17 := MakeTest ("17", "positive-encrypt", "Add new DO_NOTHING attribute", BasicConfig, BasicRecord, Some(ExpandedDoNothingConfig));
431
+ var test18 := MakeTest ("18", "positive-encrypt", "Remove ENCRYPT_AND_SIGN attribute, encrypt with expanded, decrypt with basic", ExpandedBasicConfig, BasicRecord, Some(BasicConfig));
432
+ var test19 := MakeTest ("19", "positive-encrypt", "Remove SIGN_ONLY attribute, encrypt with expanded, decrypt with basic", ExpandedSignConfig, BasicRecord, Some(BasicConfig));
433
+ var test20 := MakeTest ("20", "positive-encrypt", "Remove DO_NOTHING attribute, encrypt with expanded, decrypt with basic", ExpandedDoNothingConfig, BasicRecord, Some(BasicConfig));
434
+
399
435
var configTests := MakeConfigTests ();
400
- var tests : seq < (string , JSON)> := [test1, test2, test3, test4, test5, test6, test7, test8, test9, test10, test11, test12, test13, test14] + configTests;
436
+ var tests : seq < (string , JSON)> := [test1, test2, test3, test4, test5, test6, test7, test8, test9, test10, test11, test12, test13, test14, test15, test16, test17, test18, test19, test20 ] + configTests;
401
437
var final := Object (result + [("tests", Object(tests))]);
402
438
403
439
var jsonBytes :- expect API. Serialize (final);
0 commit comments