@cloud-copilot/iam-simulate 0.1.82 → 0.1.83

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cloud-copilot/iam-simulate",
3
- "version": "0.1.82",
3
+ "version": "0.1.83",
4
4
  "description": "Simulate evaluation of AWS IAM policies",
5
5
  "repository": {
6
6
  "type": "git",
@@ -1,18 +0,0 @@
1
- import { BaseConditionOperator } from './BaseConditionOperator.js';
2
- export interface BaseOperatorTest {
3
- name: string;
4
- requestContext?: {
5
- [key: string]: string | string[];
6
- };
7
- policyValues: string[];
8
- testValue: string;
9
- expected: boolean;
10
- explains?: {
11
- value: string;
12
- matches: boolean;
13
- resolvedValue?: string;
14
- errors?: string[];
15
- }[];
16
- }
17
- export declare function testOperator(name: string, tests: BaseOperatorTest[], operator: BaseConditionOperator): void;
18
- //# sourceMappingURL=baseConditionperatorTests.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"baseConditionperatorTests.d.ts","sourceRoot":"","sources":["../../../src/condition/baseConditionperatorTests.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;IACrD,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,OAAO,CAAA;QAChB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAClB,EAAE,CAAA;CACJ;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,gBAAgB,EAAE,EACzB,QAAQ,EAAE,qBAAqB,QAwChC"}
@@ -1,37 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.testOperator = testOperator;
4
- const vitest_1 = require("vitest");
5
- const request_js_1 = require("../request/request.js");
6
- const requestContext_js_1 = require("../requestContext.js");
7
- function testOperator(name, tests, operator) {
8
- (0, vitest_1.describe)(name, (it) => {
9
- for (const test of tests) {
10
- it(test.name, () => {
11
- //Given the request
12
- const request = new request_js_1.AwsRequestImpl('', { resource: '', accountId: '' }, '', new requestContext_js_1.RequestContextImpl(test.requestContext || {}));
13
- //When the condition is evaluated
14
- const result = operator.matches(request, test.testValue, test.policyValues);
15
- //Then the result should be as expected
16
- (0, vitest_1.expect)(result.matches).toBe(test.expected);
17
- if (test.explains) {
18
- for (const explain of test.explains) {
19
- const found = result.explains.find((e) => e.value === explain.value);
20
- (0, vitest_1.expect)(found, `Missing explain for ${explain.value}`).toBeDefined();
21
- (0, vitest_1.expect)(found?.matches, `${explain.value} match`).toBe(explain.matches);
22
- if (explain.resolvedValue) {
23
- (0, vitest_1.expect)(found?.resolvedValue, `${explain.value} resolved value`).toBe(explain.resolvedValue);
24
- }
25
- else {
26
- (0, vitest_1.expect)(found?.resolvedValue, `${explain.value} resolved value to be undefined`).toBeUndefined();
27
- }
28
- if (explain.errors) {
29
- (0, vitest_1.expect)(found?.errors, `${explain.value} errors`).toEqual(explain.errors.sort());
30
- }
31
- }
32
- }
33
- });
34
- }
35
- });
36
- }
37
- //# sourceMappingURL=baseConditionperatorTests.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"baseConditionperatorTests.js","sourceRoot":"","sources":["../../../src/condition/baseConditionperatorTests.ts"],"names":[],"mappings":";;AAmBA,oCA2CC;AA9DD,mCAAyC;AACzC,sDAAsD;AACtD,4DAAyD;AAiBzD,SAAgB,YAAY,CAC1B,IAAY,EACZ,KAAyB,EACzB,QAA+B;IAE/B,IAAA,iBAAQ,EAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;QACpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;gBACjB,mBAAmB;gBACnB,MAAM,OAAO,GAAG,IAAI,2BAAc,CAChC,EAAE,EACF,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAC/B,EAAE,EACF,IAAI,sCAAkB,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAClD,CAAA;gBACD,iCAAiC;gBACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBAE3E,uCAAuC;gBACvC,IAAA,eAAM,EAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAC1C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAA;wBACpE,IAAA,eAAM,EAAC,KAAK,EAAE,uBAAuB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;wBACnE,IAAA,eAAM,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;wBACtE,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;4BAC1B,IAAA,eAAM,EAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,KAAK,iBAAiB,CAAC,CAAC,IAAI,CAClE,OAAO,CAAC,aAAa,CACtB,CAAA;wBACH,CAAC;6BAAM,CAAC;4BACN,IAAA,eAAM,EACJ,KAAK,EAAE,aAAa,EACpB,GAAG,OAAO,CAAC,KAAK,iCAAiC,CAClD,CAAC,aAAa,EAAE,CAAA;wBACnB,CAAC;wBACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;4BACnB,IAAA,eAAM,EAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;wBACjF,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
@@ -1,18 +0,0 @@
1
- import { BaseConditionOperator } from './BaseConditionOperator.js';
2
- export interface BaseOperatorTest {
3
- name: string;
4
- requestContext?: {
5
- [key: string]: string | string[];
6
- };
7
- policyValues: string[];
8
- testValue: string;
9
- expected: boolean;
10
- explains?: {
11
- value: string;
12
- matches: boolean;
13
- resolvedValue?: string;
14
- errors?: string[];
15
- }[];
16
- }
17
- export declare function testOperator(name: string, tests: BaseOperatorTest[], operator: BaseConditionOperator): void;
18
- //# sourceMappingURL=baseConditionperatorTests.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"baseConditionperatorTests.d.ts","sourceRoot":"","sources":["../../../src/condition/baseConditionperatorTests.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,cAAc,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;IACrD,YAAY,EAAE,MAAM,EAAE,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE;QACT,KAAK,EAAE,MAAM,CAAA;QACb,OAAO,EAAE,OAAO,CAAA;QAChB,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAClB,EAAE,CAAA;CACJ;AAED,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,gBAAgB,EAAE,EACzB,QAAQ,EAAE,qBAAqB,QAwChC"}
@@ -1,34 +0,0 @@
1
- import { describe, expect } from 'vitest';
2
- import { AwsRequestImpl } from '../request/request.js';
3
- import { RequestContextImpl } from '../requestContext.js';
4
- export function testOperator(name, tests, operator) {
5
- describe(name, (it) => {
6
- for (const test of tests) {
7
- it(test.name, () => {
8
- //Given the request
9
- const request = new AwsRequestImpl('', { resource: '', accountId: '' }, '', new RequestContextImpl(test.requestContext || {}));
10
- //When the condition is evaluated
11
- const result = operator.matches(request, test.testValue, test.policyValues);
12
- //Then the result should be as expected
13
- expect(result.matches).toBe(test.expected);
14
- if (test.explains) {
15
- for (const explain of test.explains) {
16
- const found = result.explains.find((e) => e.value === explain.value);
17
- expect(found, `Missing explain for ${explain.value}`).toBeDefined();
18
- expect(found?.matches, `${explain.value} match`).toBe(explain.matches);
19
- if (explain.resolvedValue) {
20
- expect(found?.resolvedValue, `${explain.value} resolved value`).toBe(explain.resolvedValue);
21
- }
22
- else {
23
- expect(found?.resolvedValue, `${explain.value} resolved value to be undefined`).toBeUndefined();
24
- }
25
- if (explain.errors) {
26
- expect(found?.errors, `${explain.value} errors`).toEqual(explain.errors.sort());
27
- }
28
- }
29
- }
30
- });
31
- }
32
- });
33
- }
34
- //# sourceMappingURL=baseConditionperatorTests.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"baseConditionperatorTests.js","sourceRoot":"","sources":["../../../src/condition/baseConditionperatorTests.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAiBzD,MAAM,UAAU,YAAY,CAC1B,IAAY,EACZ,KAAyB,EACzB,QAA+B;IAE/B,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;QACpB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE;gBACjB,mBAAmB;gBACnB,MAAM,OAAO,GAAG,IAAI,cAAc,CAChC,EAAE,EACF,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAC/B,EAAE,EACF,IAAI,kBAAkB,CAAC,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC,CAClD,CAAA;gBACD,iCAAiC;gBACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,CAAA;gBAE3E,uCAAuC;gBACvC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAC1C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACpC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,CAAC,CAAA;wBACpE,MAAM,CAAC,KAAK,EAAE,uBAAuB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;wBACnE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;wBACtE,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;4BAC1B,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,KAAK,iBAAiB,CAAC,CAAC,IAAI,CAClE,OAAO,CAAC,aAAa,CACtB,CAAA;wBACH,CAAC;6BAAM,CAAC;4BACN,MAAM,CACJ,KAAK,EAAE,aAAa,EACpB,GAAG,OAAO,CAAC,KAAK,iCAAiC,CAClD,CAAC,aAAa,EAAE,CAAA;wBACnB,CAAC;wBACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;4BACnB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;wBACjF,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}