@magda/typescript-common 1.2.0-rc.0 → 2.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/OpaCompileResponseParser.d.ts +147 -34
  2. package/dist/OpaCompileResponseParser.js +479 -293
  3. package/dist/OpaCompileResponseParser.js.map +1 -1
  4. package/dist/SQLUtils.d.ts +70 -0
  5. package/dist/SQLUtils.js +263 -0
  6. package/dist/SQLUtils.js.map +1 -0
  7. package/dist/ServerError.d.ts +9 -0
  8. package/dist/ServerError.js +17 -0
  9. package/dist/ServerError.js.map +1 -0
  10. package/dist/authorization-api/authMiddleware.d.ts +59 -1
  11. package/dist/authorization-api/authMiddleware.js +146 -3
  12. package/dist/authorization-api/authMiddleware.js.map +1 -1
  13. package/dist/authorization-api/constants.d.ts +5 -0
  14. package/dist/authorization-api/constants.js +13 -0
  15. package/dist/authorization-api/constants.js.map +1 -0
  16. package/dist/authorization-api/model.d.ts +1 -6
  17. package/dist/express/getNoCacheHeaders.d.ts +6 -0
  18. package/dist/express/getNoCacheHeaders.js +9 -0
  19. package/dist/express/getNoCacheHeaders.js.map +1 -0
  20. package/dist/express/setResponseNoCache.d.ts +3 -0
  21. package/dist/express/setResponseNoCache.js +9 -0
  22. package/dist/express/setResponseNoCache.js.map +1 -0
  23. package/dist/generated/registry/api.d.ts +36 -2
  24. package/dist/generated/registry/api.js +140 -2
  25. package/dist/generated/registry/api.js.map +1 -1
  26. package/dist/getAbsoluteUrl.d.ts +3 -2
  27. package/dist/getAbsoluteUrl.js +2 -1
  28. package/dist/getAbsoluteUrl.js.map +1 -1
  29. package/dist/opa/AspectQuery.d.ts +71 -0
  30. package/dist/opa/AspectQuery.js +216 -0
  31. package/dist/opa/AspectQuery.js.map +1 -0
  32. package/dist/opa/AuthDecision.d.ts +51 -0
  33. package/dist/opa/AuthDecision.js +241 -0
  34. package/dist/opa/AuthDecision.js.map +1 -0
  35. package/dist/opa/AuthDecisionQueryClient.d.ts +23 -0
  36. package/dist/opa/AuthDecisionQueryClient.js +110 -0
  37. package/dist/opa/AuthDecisionQueryClient.js.map +1 -0
  38. package/dist/pgTypes.d.ts +1 -0
  39. package/dist/pgTypes.js +18 -0
  40. package/dist/pgTypes.js.map +1 -0
  41. package/dist/registry/AuthorizedRegistryClient.d.ts +1 -0
  42. package/dist/registry/AuthorizedRegistryClient.js +17 -0
  43. package/dist/registry/AuthorizedRegistryClient.js.map +1 -1
  44. package/dist/registry/RegistryClient.d.ts +10 -0
  45. package/dist/registry/RegistryClient.js +32 -0
  46. package/dist/registry/RegistryClient.js.map +1 -1
  47. package/dist/test/getAuthDecision.spec.js +2 -2
  48. package/dist/test/getAuthDecision.spec.js.map +1 -1
  49. package/dist/test/sampleAuthDecisions/content.json +29 -0
  50. package/dist/test/sampleAuthDecisions/datasetPermissionWithOrgUnitConstraint.json +79 -0
  51. package/dist/test/sampleAuthDecisions/simple.json +29 -0
  52. package/dist/test/sampleAuthDecisions/singleTermAspectRef.json +39 -0
  53. package/dist/test/sampleAuthDecisions/unconditionalFalseSimple.json +6 -0
  54. package/dist/test/sampleAuthDecisions/unconditionalNotMacthed.json +6 -0
  55. package/dist/test/sampleAuthDecisions/unconditionalNotMacthedWithExtraRefs.json +6 -0
  56. package/dist/test/sampleAuthDecisions/unconditionalTrue.json +6 -0
  57. package/dist/test/sampleAuthDecisions/unconditionalTrueSimple.json +6 -0
  58. package/dist/test/sampleAuthDecisions/unconditionalTrueWithDefaultRule.json +6 -0
  59. package/dist/test/sampleAuthDecisions/withDefaultRule.json +6 -0
  60. package/dist/test/{sampleOpaResponse.json → sampleOpaResponses/content.json} +0 -0
  61. package/dist/test/sampleOpaResponses/datasetPermissionWithOrgUnitConstraint.json +341 -0
  62. package/dist/test/{sampleOpaResponseSimple.json → sampleOpaResponses/simple.json} +0 -0
  63. package/dist/test/sampleOpaResponses/singleTermAspectRef.json +233 -0
  64. package/dist/test/sampleOpaResponses/unconditionalFalseSimple.json +3 -0
  65. package/dist/test/sampleOpaResponses/unconditionalNotMacthed.json +73 -0
  66. package/dist/test/sampleOpaResponses/unconditionalNotMacthedWithExtraRefs.json +155 -0
  67. package/dist/test/{sampleOpaResponseUnconditionalTrue.json → sampleOpaResponses/unconditionalTrue.json} +0 -0
  68. package/dist/test/sampleOpaResponses/unconditionalTrueSimple.json +48 -0
  69. package/dist/test/{sampleOpaResponseUnconditionalTrueWithDefaultRule.json → sampleOpaResponses/unconditionalTrueWithDefaultRule.json} +0 -0
  70. package/dist/test/{sampleOpaResponseWithDefaultRule.json → sampleOpaResponses/withDefaultRule.json} +0 -0
  71. package/dist/test/testOpaCompileResponseParser.spec.js +195 -20
  72. package/dist/test/testOpaCompileResponseParser.spec.js.map +1 -1
  73. package/package.json +7 -3
@@ -5,11 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const chai_1 = require("chai");
7
7
  const OpaCompileResponseParser_1 = __importDefault(require("../OpaCompileResponseParser"));
8
- const sampleOpaResponse_json_1 = __importDefault(require("./sampleOpaResponse.json"));
9
- const sampleOpaResponseSimple_json_1 = __importDefault(require("./sampleOpaResponseSimple.json"));
10
- const sampleOpaResponseUnconditionalTrue_json_1 = __importDefault(require("./sampleOpaResponseUnconditionalTrue.json"));
11
- const sampleOpaResponseUnconditionalTrueWithDefaultRule_json_1 = __importDefault(require("./sampleOpaResponseUnconditionalTrueWithDefaultRule.json"));
12
- const sampleOpaResponseWithDefaultRule_json_1 = __importDefault(require("./sampleOpaResponseWithDefaultRule.json"));
8
+ const content_json_1 = __importDefault(require("./sampleOpaResponses/content.json"));
9
+ const simple_json_1 = __importDefault(require("./sampleOpaResponses/simple.json"));
10
+ const unconditionalTrue_json_1 = __importDefault(require("./sampleOpaResponses/unconditionalTrue.json"));
11
+ const unconditionalTrueWithDefaultRule_json_1 = __importDefault(require("./sampleOpaResponses/unconditionalTrueWithDefaultRule.json"));
12
+ const withDefaultRule_json_1 = __importDefault(require("./sampleOpaResponses/withDefaultRule.json"));
13
+ const unconditionalNotMacthed_json_1 = __importDefault(require("./sampleOpaResponses/unconditionalNotMacthed.json"));
14
+ const unconditionalNotMacthedWithExtraRefs_json_1 = __importDefault(require("./sampleOpaResponses/unconditionalNotMacthedWithExtraRefs.json"));
15
+ const unconditionalFalseSimple_json_1 = __importDefault(require("./sampleOpaResponses/unconditionalFalseSimple.json"));
16
+ const unconditionalTrueSimple_json_1 = __importDefault(require("./sampleOpaResponses/unconditionalTrueSimple.json"));
17
+ const datasetPermissionWithOrgUnitConstraint_json_1 = __importDefault(require("./sampleOpaResponses/datasetPermissionWithOrgUnitConstraint.json"));
18
+ const singleTermAspectRef_json_1 = __importDefault(require("./sampleOpaResponses/singleTermAspectRef.json"));
13
19
  require("mocha");
14
20
  /**
15
21
  * Although equivalent, depends on how you write your policy,
@@ -23,13 +29,13 @@ require("mocha");
23
29
  describe("Test OpaCompileResultParser with complex response", function () {
24
30
  it("Parse sample response with no errors", function () {
25
31
  const parser = new OpaCompileResponseParser_1.default();
26
- const data = parser.parse(JSON.stringify(sampleOpaResponse_json_1.default));
32
+ const data = parser.parse(JSON.stringify(content_json_1.default));
27
33
  chai_1.expect(parser.hasWarns).to.be.equal(false);
28
34
  chai_1.expect(data).to.be.an("array");
29
35
  });
30
36
  it("Should evalute rule `allowRead` from parse result correctly", function () {
31
37
  const parser = new OpaCompileResponseParser_1.default();
32
- parser.parse(JSON.stringify(sampleOpaResponse_json_1.default));
38
+ parser.parse(JSON.stringify(content_json_1.default));
33
39
  const result = parser.evaluate();
34
40
  chai_1.expect(parser.hasWarns).to.be.equal(false);
35
41
  chai_1.expect(result.isCompleteEvaluated).to.be.equal(false);
@@ -42,7 +48,7 @@ describe("Test OpaCompileResultParser with complex response", function () {
42
48
  });
43
49
  it("Should generate correct human readable string", function () {
44
50
  const parser = new OpaCompileResponseParser_1.default();
45
- parser.parse(JSON.stringify(sampleOpaResponse_json_1.default));
51
+ parser.parse(JSON.stringify(content_json_1.default));
46
52
  const result = parser.evaluateAsHumanReadableString();
47
53
  chai_1.expect(parser.hasWarns).to.be.equal(false);
48
54
  chai_1.expect(result).to.be.equal('input.object.content.id = "header/navigation/datasets"');
@@ -51,13 +57,13 @@ describe("Test OpaCompileResultParser with complex response", function () {
51
57
  describe("Test OpaCompileResultParser with simple response", function () {
52
58
  it("Parse sample response with no errors", function () {
53
59
  const parser = new OpaCompileResponseParser_1.default();
54
- const data = parser.parse(JSON.stringify(sampleOpaResponseSimple_json_1.default));
60
+ const data = parser.parse(JSON.stringify(simple_json_1.default));
55
61
  chai_1.expect(parser.hasWarns).to.be.equal(false);
56
62
  chai_1.expect(data).to.be.an("array");
57
63
  });
58
64
  it("Should evalute rule `allowRead` from parse result correctly", function () {
59
65
  const parser = new OpaCompileResponseParser_1.default();
60
- parser.parse(JSON.stringify(sampleOpaResponseSimple_json_1.default));
66
+ parser.parse(JSON.stringify(simple_json_1.default));
61
67
  const result = parser.evaluate();
62
68
  chai_1.expect(parser.hasWarns).to.be.equal(false);
63
69
  chai_1.expect(result.isCompleteEvaluated).to.be.equal(false);
@@ -70,7 +76,7 @@ describe("Test OpaCompileResultParser with simple response", function () {
70
76
  });
71
77
  it("Should generate correct human readable string", function () {
72
78
  const parser = new OpaCompileResponseParser_1.default();
73
- parser.parse(JSON.stringify(sampleOpaResponseSimple_json_1.default));
79
+ parser.parse(JSON.stringify(simple_json_1.default));
74
80
  const result = parser.evaluateAsHumanReadableString();
75
81
  chai_1.expect(parser.hasWarns).to.be.equal(false);
76
82
  chai_1.expect(result).to.be.equal('input.object.content.id = "header/navigation/datasets"');
@@ -79,13 +85,13 @@ describe("Test OpaCompileResultParser with simple response", function () {
79
85
  describe("Test OpaCompileResultParser with unconditional true response", function () {
80
86
  it("Parse sample response with no errors", function () {
81
87
  const parser = new OpaCompileResponseParser_1.default();
82
- const data = parser.parse(JSON.stringify(sampleOpaResponseUnconditionalTrue_json_1.default));
88
+ const data = parser.parse(JSON.stringify(unconditionalTrue_json_1.default));
83
89
  chai_1.expect(parser.hasWarns).to.be.equal(false);
84
90
  chai_1.expect(data).to.be.an("array");
85
91
  });
86
92
  it("Should evalute query from parse result correctly", function () {
87
93
  const parser = new OpaCompileResponseParser_1.default();
88
- parser.parse(JSON.stringify(sampleOpaResponseUnconditionalTrue_json_1.default));
94
+ parser.parse(JSON.stringify(unconditionalTrue_json_1.default));
89
95
  const result = parser.evaluate();
90
96
  chai_1.expect(parser.hasWarns).to.be.equal(false);
91
97
  chai_1.expect(result.isCompleteEvaluated).to.be.equal(true);
@@ -93,7 +99,7 @@ describe("Test OpaCompileResultParser with unconditional true response", functio
93
99
  });
94
100
  it("Should generate correct human readable string", function () {
95
101
  const parser = new OpaCompileResponseParser_1.default();
96
- parser.parse(JSON.stringify(sampleOpaResponseUnconditionalTrue_json_1.default));
102
+ parser.parse(JSON.stringify(unconditionalTrue_json_1.default));
97
103
  const result = parser.evaluateAsHumanReadableString();
98
104
  chai_1.expect(parser.hasWarns).to.be.equal(false);
99
105
  chai_1.expect(result).to.be.equal("true");
@@ -102,13 +108,13 @@ describe("Test OpaCompileResultParser with unconditional true response", functio
102
108
  describe("Test OpaCompileResultParser with unconditional true response (policy contains default rules)", function () {
103
109
  it("Parse sample response with no errors", function () {
104
110
  const parser = new OpaCompileResponseParser_1.default();
105
- const data = parser.parse(JSON.stringify(sampleOpaResponseUnconditionalTrueWithDefaultRule_json_1.default));
111
+ const data = parser.parse(JSON.stringify(unconditionalTrueWithDefaultRule_json_1.default));
106
112
  chai_1.expect(parser.hasWarns).to.be.equal(false);
107
113
  chai_1.expect(data).to.be.an("array");
108
114
  });
109
115
  it("Should evalute query from parse result correctly", function () {
110
116
  const parser = new OpaCompileResponseParser_1.default();
111
- parser.parse(JSON.stringify(sampleOpaResponseUnconditionalTrueWithDefaultRule_json_1.default));
117
+ parser.parse(JSON.stringify(unconditionalTrueWithDefaultRule_json_1.default));
112
118
  const result = parser.evaluate();
113
119
  chai_1.expect(parser.hasWarns).to.be.equal(false);
114
120
  chai_1.expect(result.isCompleteEvaluated).to.be.equal(true);
@@ -116,7 +122,7 @@ describe("Test OpaCompileResultParser with unconditional true response (policy c
116
122
  });
117
123
  it("Should generate correct human readable string", function () {
118
124
  const parser = new OpaCompileResponseParser_1.default();
119
- parser.parse(JSON.stringify(sampleOpaResponseUnconditionalTrueWithDefaultRule_json_1.default));
125
+ parser.parse(JSON.stringify(unconditionalTrueWithDefaultRule_json_1.default));
120
126
  const result = parser.evaluateAsHumanReadableString();
121
127
  chai_1.expect(parser.hasWarns).to.be.equal(false);
122
128
  chai_1.expect(result).to.be.equal("true");
@@ -125,13 +131,13 @@ describe("Test OpaCompileResultParser with unconditional true response (policy c
125
131
  describe("Test OpaCompileResultParser with esri policy that contains default rules", function () {
126
132
  it("Parse sample response with no errors", function () {
127
133
  const parser = new OpaCompileResponseParser_1.default();
128
- const data = parser.parse(JSON.stringify(sampleOpaResponseWithDefaultRule_json_1.default));
134
+ const data = parser.parse(JSON.stringify(withDefaultRule_json_1.default));
129
135
  chai_1.expect(parser.hasWarns).to.be.equal(false);
130
136
  chai_1.expect(data).to.be.an("array");
131
137
  });
132
138
  it("Should evalute query from parse result correctly", function () {
133
139
  const parser = new OpaCompileResponseParser_1.default();
134
- parser.parse(JSON.stringify(sampleOpaResponseWithDefaultRule_json_1.default));
140
+ parser.parse(JSON.stringify(withDefaultRule_json_1.default));
135
141
  const result = parser.evaluate();
136
142
  chai_1.expect(parser.hasWarns).to.be.equal(false);
137
143
  chai_1.expect(result.isCompleteEvaluated).to.be.equal(true);
@@ -139,10 +145,179 @@ describe("Test OpaCompileResultParser with esri policy that contains default rul
139
145
  });
140
146
  it("Should generate correct human readable string", function () {
141
147
  const parser = new OpaCompileResponseParser_1.default();
142
- parser.parse(JSON.stringify(sampleOpaResponseWithDefaultRule_json_1.default));
148
+ parser.parse(JSON.stringify(withDefaultRule_json_1.default));
143
149
  const result = parser.evaluateAsHumanReadableString();
144
150
  chai_1.expect(parser.hasWarns).to.be.equal(false);
145
151
  chai_1.expect(result).to.be.equal("true");
146
152
  });
147
153
  });
154
+ describe("Test OpaCompileResultParser with unconditional not matched (no rule in query is matched) response", function () {
155
+ it("Parse sample response with no errors", function () {
156
+ const parser = new OpaCompileResponseParser_1.default();
157
+ const data = parser.parse(JSON.stringify(unconditionalNotMacthed_json_1.default));
158
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
159
+ chai_1.expect(data).to.be.an("array");
160
+ });
161
+ it("Should evalute query from parse result correctly", function () {
162
+ const parser = new OpaCompileResponseParser_1.default();
163
+ parser.parse(JSON.stringify(unconditionalNotMacthed_json_1.default));
164
+ const result = parser.evaluate();
165
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
166
+ chai_1.expect(result.isCompleteEvaluated).to.be.equal(true);
167
+ chai_1.expect(result.value).to.be.undefined;
168
+ });
169
+ it("Should generate correct human readable string", function () {
170
+ const parser = new OpaCompileResponseParser_1.default();
171
+ parser.parse(JSON.stringify(unconditionalNotMacthed_json_1.default));
172
+ const result = parser.evaluateAsHumanReadableString();
173
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
174
+ chai_1.expect(result).to.be.equal("undefined");
175
+ });
176
+ });
177
+ describe("Test OpaCompileResultParser with unconditional not matched (no rule in query is matched) with extra refs response", function () {
178
+ it("Parse sample response with no errors", function () {
179
+ const parser = new OpaCompileResponseParser_1.default();
180
+ const data = parser.parse(JSON.stringify(unconditionalNotMacthedWithExtraRefs_json_1.default));
181
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
182
+ chai_1.expect(data).to.be.an("array");
183
+ });
184
+ it("Should evalute query from parse result correctly", function () {
185
+ const parser = new OpaCompileResponseParser_1.default();
186
+ parser.parse(JSON.stringify(unconditionalNotMacthedWithExtraRefs_json_1.default));
187
+ const result = parser.evaluate();
188
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
189
+ chai_1.expect(result.isCompleteEvaluated).to.be.equal(true);
190
+ chai_1.expect(result.value).to.be.undefined;
191
+ });
192
+ it("Should generate correct human readable string", function () {
193
+ const parser = new OpaCompileResponseParser_1.default();
194
+ parser.parse(JSON.stringify(unconditionalNotMacthedWithExtraRefs_json_1.default));
195
+ const result = parser.evaluateAsHumanReadableString();
196
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
197
+ chai_1.expect(result).to.be.equal("undefined");
198
+ });
199
+ });
200
+ describe("Test OpaCompileResultParser with unconditional true (simple response)", function () {
201
+ it("Parse sample response with no errors", function () {
202
+ const parser = new OpaCompileResponseParser_1.default();
203
+ const data = parser.parse(JSON.stringify(unconditionalTrueSimple_json_1.default));
204
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
205
+ chai_1.expect(data).to.be.an("array");
206
+ });
207
+ it("Should evalute query from parse result correctly", function () {
208
+ const parser = new OpaCompileResponseParser_1.default();
209
+ parser.parse(JSON.stringify(unconditionalTrueSimple_json_1.default));
210
+ const result = parser.evaluate();
211
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
212
+ chai_1.expect(result.isCompleteEvaluated).to.be.equal(true);
213
+ chai_1.expect(result.value).to.be.equal(true);
214
+ });
215
+ it("Should generate correct human readable string", function () {
216
+ const parser = new OpaCompileResponseParser_1.default();
217
+ parser.parse(JSON.stringify(unconditionalTrueSimple_json_1.default));
218
+ const result = parser.evaluateAsHumanReadableString();
219
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
220
+ chai_1.expect(result).to.be.equal("true");
221
+ });
222
+ });
223
+ describe("Test OpaCompileResultParser with unconditional false (simple response)", function () {
224
+ it("Parse sample response with no errors", function () {
225
+ const parser = new OpaCompileResponseParser_1.default();
226
+ const data = parser.parse(JSON.stringify(unconditionalFalseSimple_json_1.default));
227
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
228
+ chai_1.expect(data).to.be.an("array");
229
+ });
230
+ it("Should evalute query from parse result correctly", function () {
231
+ const parser = new OpaCompileResponseParser_1.default();
232
+ parser.parse(JSON.stringify(unconditionalFalseSimple_json_1.default));
233
+ const result = parser.evaluate();
234
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
235
+ chai_1.expect(result.isCompleteEvaluated).to.be.equal(true);
236
+ chai_1.expect(result.value).to.be.equal(false);
237
+ });
238
+ it("Should generate correct human readable string", function () {
239
+ const parser = new OpaCompileResponseParser_1.default();
240
+ parser.parse(JSON.stringify(unconditionalFalseSimple_json_1.default));
241
+ const result = parser.evaluateAsHumanReadableString();
242
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
243
+ chai_1.expect(result).to.be.equal("false");
244
+ });
245
+ });
246
+ describe("Test OpaCompileResultParser with datasetPermissionWithOrgUnitConstraint", function () {
247
+ it("Parse sample response with no errors", function () {
248
+ const parser = new OpaCompileResponseParser_1.default();
249
+ const data = parser.parse(JSON.stringify(datasetPermissionWithOrgUnitConstraint_json_1.default));
250
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
251
+ chai_1.expect(data).to.be.an("array");
252
+ });
253
+ it("Should evalute query from parse result correctly", function () {
254
+ const parser = new OpaCompileResponseParser_1.default();
255
+ parser.parse(JSON.stringify(datasetPermissionWithOrgUnitConstraint_json_1.default));
256
+ const result = parser.evaluate();
257
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
258
+ chai_1.expect(result.isCompleteEvaluated).to.be.equal(false);
259
+ chai_1.expect(result.residualRules).to.be.an("array");
260
+ chai_1.expect(result.residualRules.length).to.be.equal(2);
261
+ chai_1.expect(result.residualRules[0].isCompleteEvaluated).to.be.equal(false);
262
+ chai_1.expect(result.residualRules[0].expressions.length).to.be.equal(2);
263
+ chai_1.expect(result.residualRules[0].expressions[0].terms.length).to.be.equal(3);
264
+ chai_1.expect(result.residualRules[0].expressions[0].toHumanReadableString()).to.be.equal('input.object.dataset.publishingState = "published"');
265
+ chai_1.expect(result.residualRules[0].expressions[1].terms.length).to.be.equal(3);
266
+ chai_1.expect(result.residualRules[0].expressions[1].toHumanReadableString()).to.be.equal('"5447fcb1-74ec-451c-b6ef-007aa736a346" = input.object.dataset.accessControl.orgUnitOwnerId');
267
+ });
268
+ it("Should generate correct human readable string", function () {
269
+ const parser = new OpaCompileResponseParser_1.default();
270
+ parser.parse(JSON.stringify(datasetPermissionWithOrgUnitConstraint_json_1.default));
271
+ const result = parser.evaluateAsHumanReadableString();
272
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
273
+ chai_1.expect(result).to.be.equal(`( input.object.dataset.publishingState = "published" AND \n"5447fcb1-74ec-451c-b6ef-007aa736a346" = input.object.dataset.accessControl.orgUnitOwnerId )\nOR\n( input.object.dataset.publishingState = "published" AND \n"b749759e-6e6a-44c0-87ab-4590744187cf" = input.object.dataset.accessControl.orgUnitOwnerId )`);
274
+ });
275
+ });
276
+ describe("Test OpaCompileResultParser with testDataSingleTermAspectRef", function () {
277
+ it("Parse sample response with no errors", function () {
278
+ const parser = new OpaCompileResponseParser_1.default();
279
+ const data = parser.parse(JSON.stringify(singleTermAspectRef_json_1.default));
280
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
281
+ chai_1.expect(data).to.be.an("array");
282
+ });
283
+ it("Should evalute query from parse result and output concise format correctly", function () {
284
+ const parser = new OpaCompileResponseParser_1.default();
285
+ parser.parse(JSON.stringify(singleTermAspectRef_json_1.default));
286
+ const result = parser.evaluate();
287
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
288
+ chai_1.expect(result.isCompleteEvaluated).to.be.equal(false);
289
+ chai_1.expect(result.residualRules).to.be.an("array");
290
+ chai_1.expect(result.residualRules.length).to.be.equal(1);
291
+ chai_1.expect(result.residualRules[0].isCompleteEvaluated).to.be.equal(false);
292
+ const conciseRules = result.residualRules.map((item) => item.toConciseData());
293
+ chai_1.expect(conciseRules[0].expressions.length).to.be.equal(2);
294
+ const exp1 = conciseRules[0].expressions[0];
295
+ chai_1.expect(exp1.negated).to.be.equal(false);
296
+ chai_1.expect(exp1.operator).to.be.null;
297
+ chai_1.expect(exp1.operands.length).to.equal(1);
298
+ chai_1.expect(exp1.operands[0]).to.deep.equal({
299
+ isRef: true,
300
+ value: "input.object.record.dcat-dataset-strings"
301
+ });
302
+ const exp2 = conciseRules[0].expressions[1];
303
+ chai_1.expect(exp2.negated).to.be.equal(false);
304
+ chai_1.expect(exp2.operator).to.be.equal("=");
305
+ chai_1.expect(exp2.operands.length).to.equal(2);
306
+ chai_1.expect(exp2.operands[0]).to.deep.equal({
307
+ isRef: true,
308
+ value: "input.object.record.publishing.state"
309
+ });
310
+ chai_1.expect(exp2.operands[1]).to.deep.equal({
311
+ isRef: false,
312
+ value: "published"
313
+ });
314
+ });
315
+ it("Should generate correct human readable string", function () {
316
+ const parser = new OpaCompileResponseParser_1.default();
317
+ parser.parse(JSON.stringify(singleTermAspectRef_json_1.default));
318
+ const result = parser.evaluateAsHumanReadableString();
319
+ chai_1.expect(parser.hasWarns).to.be.equal(false);
320
+ chai_1.expect(result).to.be.equal(`input.object.record.dcat-dataset-strings AND \ninput.object.record.publishing.state = "published"`);
321
+ });
322
+ });
148
323
  //# sourceMappingURL=testOpaCompileResponseParser.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"testOpaCompileResponseParser.spec.js","sourceRoot":"","sources":["../../src/test/testOpaCompileResponseParser.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"testOpaCompileResponseParser.spec.js","sourceRoot":"","sources":["../../src/test/testOpaCompileResponseParser.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@magda/typescript-common",
3
3
  "description": "Common TypeScript code shared between components.",
4
- "version": "1.2.0-rc.0",
4
+ "version": "2.0.0-alpha.0",
5
5
  "license": "Apache-2.0",
6
6
  "scripts": {
7
7
  "prebuild": "rimraf dist tsconfig.tsbuildinfo",
@@ -17,8 +17,8 @@
17
17
  "release": "npm publish || echo \"Skip releasing npm package @magda/typescript-common.\""
18
18
  },
19
19
  "devDependencies": {
20
- "@magda/registry-aspects": "^1.2.0-rc.0",
21
- "@magda/scripts": "^1.2.0-rc.0",
20
+ "@magda/registry-aspects": "^2.0.0-alpha.0",
21
+ "@magda/scripts": "^2.0.0-alpha.0",
22
22
  "@types/chai": "^4.0.0",
23
23
  "@types/chai-as-promised": "^7.1.0",
24
24
  "@types/cross-spawn": "^6.0.1",
@@ -27,6 +27,7 @@
27
27
  "@types/lodash": "^4.14.73",
28
28
  "@types/mocha": "^2.2.41",
29
29
  "@types/nock": "^8.2.1",
30
+ "@types/pg": "^6.1.41",
30
31
  "@types/read-pkg-up": "^3.0.1",
31
32
  "@types/sinon": "^4.1.3",
32
33
  "@types/superagent": "^3.5.5",
@@ -37,6 +38,7 @@
37
38
  "chai": "^4.1.2",
38
39
  "chai-as-promised": "^7.1.1",
39
40
  "djv": "^2.1.1",
41
+ "fs-extra": "8.1.0",
40
42
  "jsverify": "^0.8.2",
41
43
  "lazy-seq": "^1.0.0",
42
44
  "mocha": "^3.4.2",
@@ -59,9 +61,11 @@
59
61
  "lodash": "^4.17.11",
60
62
  "markdown-it": "^10.0.0",
61
63
  "moment": "^2.17.1",
64
+ "pg": "^6.4.0",
62
65
  "read-pkg-up": "^3.0.0",
63
66
  "request": "^2.88.0",
64
67
  "resolve": "^1.15.0",
68
+ "sql-syntax": "^1.1.3",
65
69
  "tsmonad": "^0.7.2",
66
70
  "urijs": "^1.19.4",
67
71
  "uuid": "^8.2.0",