@auto-engineer/narrative 0.12.1 → 0.13.1

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 (95) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +24 -0
  3. package/dist/src/commands/export-schema-runner.js +1 -1
  4. package/dist/src/commands/export-schema-runner.js.map +1 -1
  5. package/dist/src/fluent-builder.js +3 -3
  6. package/dist/src/fluent-builder.js.map +1 -1
  7. package/dist/src/getNarratives.specs.js +157 -161
  8. package/dist/src/getNarratives.specs.js.map +1 -1
  9. package/dist/src/id/addAutoIds.d.ts.map +1 -1
  10. package/dist/src/id/addAutoIds.js +23 -10
  11. package/dist/src/id/addAutoIds.js.map +1 -1
  12. package/dist/src/id/addAutoIds.specs.js +55 -46
  13. package/dist/src/id/addAutoIds.specs.js.map +1 -1
  14. package/dist/src/id/generators.js +1 -1
  15. package/dist/src/id/generators.js.map +1 -1
  16. package/dist/src/id/hasAllIds.d.ts.map +1 -1
  17. package/dist/src/id/hasAllIds.js +8 -3
  18. package/dist/src/id/hasAllIds.js.map +1 -1
  19. package/dist/src/id/hasAllIds.specs.js +142 -215
  20. package/dist/src/id/hasAllIds.specs.js.map +1 -1
  21. package/dist/src/index.d.ts +7 -8
  22. package/dist/src/index.d.ts.map +1 -1
  23. package/dist/src/index.js +3 -3
  24. package/dist/src/index.js.map +1 -1
  25. package/dist/src/loader/graph.d.ts.map +1 -1
  26. package/dist/src/loader/graph.js +13 -6
  27. package/dist/src/loader/graph.js.map +1 -1
  28. package/dist/src/loader/ts-utils.d.ts +1 -0
  29. package/dist/src/loader/ts-utils.d.ts.map +1 -1
  30. package/dist/src/loader/ts-utils.js +95 -16
  31. package/dist/src/loader/ts-utils.js.map +1 -1
  32. package/dist/src/model-to-narrative.specs.js +548 -466
  33. package/dist/src/model-to-narrative.specs.js.map +1 -1
  34. package/dist/src/narrative-context.d.ts +8 -8
  35. package/dist/src/narrative-context.d.ts.map +1 -1
  36. package/dist/src/narrative-context.js +111 -301
  37. package/dist/src/narrative-context.js.map +1 -1
  38. package/dist/src/narrative-context.specs.js +15 -55
  39. package/dist/src/narrative-context.specs.js.map +1 -1
  40. package/dist/src/narrative.d.ts +19 -22
  41. package/dist/src/narrative.d.ts.map +1 -1
  42. package/dist/src/narrative.js +42 -71
  43. package/dist/src/narrative.js.map +1 -1
  44. package/dist/src/samples/questionnaires.narrative.js +10 -10
  45. package/dist/src/samples/questionnaires.narrative.js.map +1 -1
  46. package/dist/src/samples/test-with-ids.narrative.js +13 -29
  47. package/dist/src/samples/test-with-ids.narrative.js.map +1 -1
  48. package/dist/src/schema.d.ts +2704 -8293
  49. package/dist/src/schema.d.ts.map +1 -1
  50. package/dist/src/schema.js +26 -47
  51. package/dist/src/schema.js.map +1 -1
  52. package/dist/src/slice-builder.js +3 -3
  53. package/dist/src/slice-builder.js.map +1 -1
  54. package/dist/src/transformers/model-to-narrative/generators/flow.d.ts.map +1 -1
  55. package/dist/src/transformers/model-to-narrative/generators/flow.js +118 -74
  56. package/dist/src/transformers/model-to-narrative/generators/flow.js.map +1 -1
  57. package/dist/src/transformers/model-to-narrative/generators/gwt.d.ts +9 -1
  58. package/dist/src/transformers/model-to-narrative/generators/gwt.d.ts.map +1 -1
  59. package/dist/src/transformers/model-to-narrative/generators/gwt.js +112 -112
  60. package/dist/src/transformers/model-to-narrative/generators/gwt.js.map +1 -1
  61. package/dist/src/transformers/model-to-narrative/generators/imports.d.ts +1 -1
  62. package/dist/src/transformers/model-to-narrative/generators/imports.d.ts.map +1 -1
  63. package/dist/src/transformers/model-to-narrative/generators/imports.js +13 -9
  64. package/dist/src/transformers/model-to-narrative/generators/imports.js.map +1 -1
  65. package/dist/src/transformers/narrative-to-model/index.d.ts.map +1 -1
  66. package/dist/src/transformers/narrative-to-model/index.js +50 -23
  67. package/dist/src/transformers/narrative-to-model/index.js.map +1 -1
  68. package/dist/src/transformers/narrative-to-model/type-inference.specs.js +100 -90
  69. package/dist/src/transformers/narrative-to-model/type-inference.specs.js.map +1 -1
  70. package/dist/tsconfig.tsbuildinfo +1 -1
  71. package/package.json +5 -5
  72. package/src/commands/export-schema-runner.ts +3 -1
  73. package/src/fluent-builder.ts +3 -3
  74. package/src/getNarratives.specs.ts +176 -184
  75. package/src/id/addAutoIds.specs.ts +55 -48
  76. package/src/id/addAutoIds.ts +28 -11
  77. package/src/id/generators.ts +1 -1
  78. package/src/id/hasAllIds.specs.ts +147 -245
  79. package/src/id/hasAllIds.ts +11 -4
  80. package/src/index.ts +11 -12
  81. package/src/loader/graph.ts +23 -6
  82. package/src/loader/ts-utils.ts +169 -26
  83. package/src/model-to-narrative.specs.ts +548 -466
  84. package/src/narrative-context.specs.ts +73 -116
  85. package/src/narrative-context.ts +127 -374
  86. package/src/narrative.ts +70 -120
  87. package/src/samples/questionnaires.narrative.ts +10 -10
  88. package/src/samples/test-with-ids.narrative.ts +23 -31
  89. package/src/schema.ts +33 -52
  90. package/src/slice-builder.ts +3 -3
  91. package/src/transformers/model-to-narrative/generators/flow.ts +191 -85
  92. package/src/transformers/model-to-narrative/generators/gwt.ts +195 -178
  93. package/src/transformers/model-to-narrative/generators/imports.ts +13 -9
  94. package/src/transformers/narrative-to-model/index.ts +87 -26
  95. package/src/transformers/narrative-to-model/type-inference.specs.ts +100 -90
@@ -1,26 +1,22 @@
1
1
  import { describe, it, expect, beforeEach } from 'vitest';
2
2
  import { flow, example, rule, specs } from './narrative.js';
3
3
  import { command } from './fluent-builder.js';
4
- describe('Context Parameter Support', () => {
4
+ describe('Narrative DSL', () => {
5
5
  beforeEach(async () => {
6
6
  // Clean test state before each test
7
7
  });
8
- it('should support context parameter in given() method', () => {
8
+ it('should support given() method in builder', () => {
9
9
  expect(() => {
10
- flow('test flow with context', () => {
10
+ flow('test flow with given', () => {
11
11
  command('test command').server(() => {
12
12
  specs(() => {
13
- rule('test rule with context', () => {
14
- example('given with context')
13
+ rule('test rule with given', () => {
14
+ example('given test')
15
15
  .given({
16
16
  questionnaireId: 'q-001',
17
17
  participantId: 'participant-abc',
18
18
  link: 'https://app.example.com/q/q-001?participant=participant-abc',
19
19
  sentAt: new Date('2030-01-01T09:00:00Z'),
20
- }, {
21
- sentAt: 'comes from the system clock',
22
- questionnaireId: 'must be a valid questionnaire ID',
23
- link: 'generated based on questionnaire and participant',
24
20
  })
25
21
  .when({
26
22
  questionnaireId: 'q-001',
@@ -43,13 +39,13 @@ describe('Context Parameter Support', () => {
43
39
  });
44
40
  }).not.toThrow();
45
41
  });
46
- it('should support context parameter in when() method', () => {
42
+ it('should support when() method in builder', () => {
47
43
  expect(() => {
48
- flow('test flow with when context', () => {
44
+ flow('test flow with when', () => {
49
45
  command('test command').server(() => {
50
46
  specs(() => {
51
47
  rule('test rule', () => {
52
- example('when with context')
48
+ example('when test')
53
49
  .given({
54
50
  questionnaireId: 'q-001',
55
51
  participantId: 'participant-abc',
@@ -62,9 +58,6 @@ describe('Context Parameter Support', () => {
62
58
  questionId: 'q1',
63
59
  answer: 'Yes',
64
60
  savedAt: new Date('2030-01-01T09:05:00Z'),
65
- }, {
66
- answer: 'must be validated according to the question type',
67
- savedAt: 'timestamp when the answer was saved',
68
61
  })
69
62
  .then({
70
63
  questionnaireId: 'q-001',
@@ -80,13 +73,13 @@ describe('Context Parameter Support', () => {
80
73
  });
81
74
  }).not.toThrow();
82
75
  });
83
- it('should support context parameter in then() method', () => {
76
+ it('should support then() method in builder', () => {
84
77
  expect(() => {
85
- flow('test flow with then context', () => {
78
+ flow('test flow with then', () => {
86
79
  command('test command').server(() => {
87
80
  specs(() => {
88
81
  rule('test rule', () => {
89
- example('then with context')
82
+ example('then test')
90
83
  .given({
91
84
  questionnaireId: 'q-001',
92
85
  participantId: 'participant-abc',
@@ -107,10 +100,6 @@ describe('Context Parameter Support', () => {
107
100
  currentQuestionId: 'q2',
108
101
  remainingQuestions: ['q2'],
109
102
  answers: [{ questionId: 'q1', value: 'Yes' }],
110
- }, {
111
- answers: 'computed from the answered questions',
112
- status: 'calculated based on completed questions',
113
- currentQuestionId: 'next question to be answered',
114
103
  });
115
104
  });
116
105
  });
@@ -118,23 +107,18 @@ describe('Context Parameter Support', () => {
118
107
  });
119
108
  }).not.toThrow();
120
109
  });
121
- it('should preserve context data in schema output', async () => {
122
- // This test would require a proper file system setup to work with getNarratives
123
- // For now, we'll just test that the methods accept context parameters
110
+ it('should support full narrative DSL flow', () => {
124
111
  expect(() => {
125
- flow('test context preservation', () => {
112
+ flow('test full DSL flow', () => {
126
113
  command('test preservation').server(() => {
127
114
  specs(() => {
128
- rule('context preservation rule', () => {
129
- example('context should be preserved')
115
+ rule('full flow rule', () => {
116
+ example('full flow test')
130
117
  .given({
131
118
  questionnaireId: 'q-001',
132
119
  participantId: 'participant-abc',
133
120
  link: 'https://app.example.com/q/q-001?participant=participant-abc',
134
121
  sentAt: new Date('2030-01-01T09:00:00Z'),
135
- }, {
136
- sentAt: 'comes from the system clock',
137
- questionnaireId: 'validated questionnaire identifier',
138
122
  })
139
123
  .when({
140
124
  questionnaireId: 'q-001',
@@ -157,29 +141,5 @@ describe('Context Parameter Support', () => {
157
141
  });
158
142
  }).not.toThrow();
159
143
  });
160
- // These tests should fail with TypeScript compilation errors
161
- // Commenting out for now - they will be used to verify strict typing works
162
- /*
163
- it('should reject invalid context fields (compilation test)', () => {
164
- // This should cause a TypeScript error - invalidField is not in QuestionnaireLinkSent
165
- flow('invalid context test', () => {
166
- command('test').server(() => {
167
- specs(() => {
168
- rule('test rule', () => {
169
- example('invalid context')
170
- .given<QuestionnaireLinkSent>({
171
- questionnaireId: 'q-001',
172
- participantId: 'participant-abc',
173
- link: 'https://app.example.com',
174
- sentAt: new Date(),
175
- }, {
176
- invalidField: 'this should cause a type error' // TypeScript error expected
177
- });
178
- });
179
- });
180
- });
181
- });
182
- });
183
- */
184
144
  });
185
145
  //# sourceMappingURL=narrative-context.specs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"narrative-context.specs.js","sourceRoot":"","sources":["../../src/narrative-context.specs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"narrative-context.specs.js","sourceRoot":"","sources":["../../src/narrative-context.specs.ts"],"names":[],"mappings":"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"}
@@ -13,36 +13,33 @@ export declare function it(title: string): void;
13
13
  export declare function it(id: string, title: string): void;
14
14
  export declare function should(title: string): void;
15
15
  export declare function should(id: string, title: string): void;
16
- export declare function specs(description: string, fn: () => void): void;
16
+ export declare function specs(feature: string, fn: () => void): void;
17
17
  export declare function specs(fn: () => void): void;
18
- export declare function rule(description: string, fn: () => void): void;
19
- export declare function rule(description: string, id: string, fn: () => void): void;
20
- export declare const example: (description: string) => TypedExampleBuilder;
18
+ export declare function rule(name: string, fn: () => void): void;
19
+ export declare function rule(name: string, id: string, fn: () => void): void;
21
20
  type ExtractData<T> = T extends {
22
21
  data: infer D;
23
22
  } ? D : T;
24
- type ContextFor<T> = Partial<Record<keyof ExtractData<T>, string>>;
25
- interface TypedExampleBuilder {
26
- given<T>(data: ExtractData<T> | ExtractData<T>[], context?: ContextFor<T>): TypedGivenBuilder<T>;
27
- when<W>(data: ExtractData<W> | ExtractData<W>[], context?: ContextFor<W>): TypedWhenBuilder<W>;
23
+ export interface ThenBuilder {
24
+ and<T>(data: ExtractData<T>): ThenBuilder;
28
25
  }
29
- interface TypedGivenBuilder<G> {
30
- and<U>(data: ExtractData<U> | ExtractData<U>[], context?: ContextFor<U>): TypedGivenBuilder<G | U>;
31
- when<W>(data: ExtractData<W> | ExtractData<W>[], context?: ContextFor<W>): TypedGivenWhenBuilder<G, W>;
32
- then<T>(data: ExtractData<T> | ExtractData<T>[], context?: ContextFor<T>): TypedGivenThenBuilder<G, never, T>;
26
+ export interface WhenBuilder {
27
+ then<T>(data: ExtractData<T>): ThenBuilder;
28
+ and<T>(data: ExtractData<T>): WhenBuilder;
33
29
  }
34
- interface TypedWhenBuilder<W> {
35
- then<T>(data: ExtractData<T> | ExtractData<T>[], context?: ContextFor<T>): TypedThenBuilder<W, T>;
30
+ export interface GivenBuilder {
31
+ and<T>(data: ExtractData<T>): GivenBuilder;
32
+ when<W>(data: ExtractData<W>): WhenBuilder;
33
+ then<T>(data: ExtractData<T>): ThenBuilder;
36
34
  }
37
- interface TypedGivenWhenBuilder<G, W> {
38
- then<T>(data: ExtractData<T> | ExtractData<T>[], context?: ContextFor<T>): TypedGivenThenBuilder<G, W, T>;
39
- }
40
- interface TypedThenBuilder<W, T> {
41
- and<A>(data: ExtractData<A> | ExtractData<A>[], context?: ContextFor<A>): TypedThenBuilder<W, T | A>;
42
- }
43
- interface TypedGivenThenBuilder<G, W, T> {
44
- and<A>(data: ExtractData<A> | ExtractData<A>[], context?: ContextFor<A>): TypedGivenThenBuilder<G, W, T | A>;
35
+ export interface ExampleBuilder {
36
+ given<T>(data: ExtractData<T>): GivenBuilder;
37
+ when<W>(data: ExtractData<W>): WhenBuilder;
45
38
  }
39
+ export declare function example(name: string): ExampleBuilder;
40
+ export declare function example(name: string, id: string): ExampleBuilder;
41
+ type ErrorType = 'IllegalStateError' | 'ValidationError' | 'NotFoundError';
42
+ export declare function thenError(errorType: ErrorType, message?: string): void;
46
43
  export declare const SliceType: {
47
44
  readonly COMMAND: "command";
48
45
  readonly QUERY: "query";
@@ -1 +1 @@
1
- {"version":3,"file":"narrative.d.ts","sourceRoot":"","sources":["../../src/narrative.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"narrative.d.ts","sourceRoot":"","sources":["../../src/narrative.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { registry } from './narrative-registry.js';
2
- import { startNarrative, clearCurrentNarrative, getCurrentSlice, startClientBlock, endClientBlock, startServerBlock, endServerBlock, pushSpec, pushDescribe, popDescribe, recordIt, setSliceData, recordRule, recordExample, recordGivenData, recordAndGivenData, recordWhenData, recordThenData, recordAndThenData, } from './narrative-context.js';
2
+ import { startNarrative, clearCurrentNarrative, getCurrentSlice, startClientBlock, endClientBlock, startServerBlock, endServerBlock, pushSpec, pushDescribe, popDescribe, recordIt, setSliceData, recordRule, recordExample, recordStep, recordErrorStep, } from './narrative-context.js';
3
3
  import createDebug from 'debug';
4
4
  const debug = createDebug('auto:narrative:narrative');
5
5
  if ('color' in debug && typeof debug === 'object') {
6
6
  debug.color = '6';
7
- } // cyan
7
+ }
8
8
  export function narrative(name, idOrFn, fn) {
9
9
  const id = typeof idOrFn === 'string' ? idOrFn : undefined;
10
10
  const callback = typeof idOrFn === 'function' ? idOrFn : fn;
@@ -61,102 +61,73 @@ export function should(idOrTitle, title) {
61
61
  const hasId = title !== undefined;
62
62
  recordIt(hasId ? idOrTitle : undefined, hasId ? title : idOrTitle);
63
63
  }
64
- export function specs(descriptionOrFn, fn) {
65
- const description = typeof descriptionOrFn === 'string' ? descriptionOrFn : '';
66
- const callback = typeof descriptionOrFn === 'function' ? descriptionOrFn : fn;
67
- pushSpec(description);
64
+ export function specs(featureOrFn, fn) {
65
+ const feature = typeof featureOrFn === 'string' ? featureOrFn : '';
66
+ const callback = typeof featureOrFn === 'function' ? featureOrFn : fn;
67
+ pushSpec(feature);
68
68
  callback();
69
69
  }
70
- export function rule(description, idOrFn, fn) {
70
+ export function rule(name, idOrFn, fn) {
71
71
  const id = typeof idOrFn === 'string' ? idOrFn : undefined;
72
72
  const callback = typeof idOrFn === 'function' ? idOrFn : fn;
73
- if (!callback) {
74
- throw new Error(`rule() requires a callback function. Got: ${typeof idOrFn}, ${typeof fn}`);
75
- }
76
- recordRule(description, id);
73
+ recordRule(name, id);
77
74
  callback();
78
75
  }
79
- export const example = (description) => {
80
- recordExample(description);
81
- return createExampleBuilder();
82
- };
83
- function normalizeContext(context) {
84
- if (!context)
85
- return undefined;
86
- const filtered = {};
87
- for (const [key, value] of Object.entries(context)) {
88
- if (value !== undefined) {
89
- filtered[key] = value;
90
- }
91
- }
92
- return Object.keys(filtered).length > 0 ? filtered : undefined;
93
- }
94
76
  function createThenBuilder() {
95
77
  return {
96
- and(data, context) {
97
- const andItems = Array.isArray(data) ? data : [data];
98
- recordAndThenData(andItems, normalizeContext(context));
78
+ and(data) {
79
+ recordStep('And', 'InferredType', data);
99
80
  return createThenBuilder();
100
81
  },
101
82
  };
102
83
  }
84
+ function createWhenBuilder() {
85
+ return {
86
+ then(data) {
87
+ recordStep('Then', 'InferredType', data);
88
+ return createThenBuilder();
89
+ },
90
+ and(data) {
91
+ recordStep('And', 'InferredType', data);
92
+ return createWhenBuilder();
93
+ },
94
+ };
95
+ }
103
96
  function createGivenBuilder() {
104
97
  return {
105
- and(data, context) {
106
- const andItems = Array.isArray(data) ? data : [data];
107
- recordAndGivenData(andItems, normalizeContext(context));
98
+ and(data) {
99
+ recordStep('And', 'InferredType', data);
108
100
  return createGivenBuilder();
109
101
  },
110
- when(data, context) {
111
- const whenData = Array.isArray(data) ? data : [data];
112
- recordWhenData(whenData.length === 1 ? whenData[0] : whenData, normalizeContext(context));
113
- return {
114
- then(data, context) {
115
- const thenItems = Array.isArray(data) ? data : [data];
116
- recordThenData(thenItems, normalizeContext(context));
117
- return {
118
- and(data, context) {
119
- const andItems = Array.isArray(data) ? data : [data];
120
- recordAndThenData(andItems, normalizeContext(context));
121
- return createThenBuilder();
122
- },
123
- };
124
- },
125
- };
102
+ when(data) {
103
+ recordStep('When', 'InferredType', data);
104
+ return createWhenBuilder();
126
105
  },
127
- then(data, context) {
128
- const thenItems = Array.isArray(data) ? data : [data];
129
- recordThenData(thenItems, normalizeContext(context));
130
- return {
131
- and(data, context) {
132
- const andItems = Array.isArray(data) ? data : [data];
133
- recordAndThenData(andItems, normalizeContext(context));
134
- return createThenBuilder();
135
- },
136
- };
106
+ then(data) {
107
+ recordStep('Then', 'InferredType', data);
108
+ return createThenBuilder();
137
109
  },
138
110
  };
139
111
  }
140
112
  function createExampleBuilder() {
141
113
  return {
142
- given(data, context) {
143
- const items = Array.isArray(data) ? data : [data];
144
- recordGivenData(items, normalizeContext(context));
114
+ given(data) {
115
+ recordStep('Given', 'InferredType', data);
145
116
  return createGivenBuilder();
146
117
  },
147
- when(data, context) {
148
- const whenData = Array.isArray(data) ? data : [data];
149
- recordWhenData(whenData.length === 1 ? whenData[0] : whenData, normalizeContext(context));
150
- return {
151
- then(data, context) {
152
- const thenItems = Array.isArray(data) ? data : [data];
153
- recordThenData(thenItems, normalizeContext(context));
154
- return createThenBuilder();
155
- },
156
- };
118
+ when(data) {
119
+ recordStep('When', 'InferredType', data);
120
+ return createWhenBuilder();
157
121
  },
158
122
  };
159
123
  }
124
+ export function example(name, id) {
125
+ recordExample(name, id);
126
+ return createExampleBuilder();
127
+ }
128
+ export function thenError(errorType, message) {
129
+ recordErrorStep(errorType, message);
130
+ }
160
131
  export const SliceType = {
161
132
  COMMAND: 'command',
162
133
  QUERY: 'query',
@@ -1 +1 @@
1
- {"version":3,"file":"narrative.js","sourceRoot":"","sources":["../../src/narrative.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"narrative.js","sourceRoot":"","sources":["../../src/narrative.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import { command, query, experience, flow, it, describe, specs, rule, example, gql, source, data, sink, } from '@auto-engineer/narrative';
2
- flow('Questionnaires', 'AUTO-Q9m2Kp4Lx', () => {
3
- experience('Homepage', 'AUTO-H1a4Bn6Cy').client(() => {
2
+ flow('Questionnaires', 'Q9m2Kp4Lx', () => {
3
+ experience('Homepage', 'H1a4Bn6Cy').client(() => {
4
4
  it('show a hero section with a welcome message');
5
5
  it('allow user to start the questionnaire');
6
6
  });
7
- query('views the questionnaire', 'AUTO-V7n8Rq5M')
7
+ query('views the questionnaire', 'V7n8Rq5M')
8
8
  .server(() => {
9
9
  specs(() => {
10
- rule('questionnaires show current progress', 'AUTO-r1A3Bp9W', () => {
10
+ rule('questionnaires show current progress', 'r1A3Bp9W', () => {
11
11
  example('a question has already been answered')
12
12
  .given({
13
13
  questionnaireId: 'q-001',
@@ -72,10 +72,10 @@ flow('Questionnaires', 'AUTO-Q9m2Kp4Lx', () => {
72
72
  it('show a progress indicator that is always visible as the user scrolls');
73
73
  });
74
74
  });
75
- command('submits a questionnaire answer', 'AUTO-S4j6Nt8Z')
75
+ command('submits a questionnaire answer', 'S4j6Nt8Z')
76
76
  .server(() => {
77
77
  specs(() => {
78
- rule('answers are allowed while the questionnaire has not been submitted', 'AUTO-r2D5Eq0Y', () => {
78
+ rule('answers are allowed while the questionnaire has not been submitted', 'r2D5Eq0Y', () => {
79
79
  example('no questions have been answered yet')
80
80
  .when({
81
81
  questionnaireId: 'q-001',
@@ -128,10 +128,10 @@ flow('Questionnaires', 'AUTO-Q9m2Kp4Lx', () => {
128
128
  it('display an error message when the answer submission is rejected');
129
129
  });
130
130
  });
131
- query('questionnaire ready for submission', 'AUTO-R3f7Hu1X')
131
+ query('questionnaire ready for submission', 'R3f7Hu1X')
132
132
  .server(() => {
133
133
  specs(() => {
134
- rule('questionnaire is ready for submission when all questions are answered', 'AUTO-r3G8Iv2W', () => {
134
+ rule('questionnaire is ready for submission when all questions are answered', 'r3G8Iv2W', () => {
135
135
  example('all questions have been answered')
136
136
  .given({
137
137
  questionnaireId: 'q-001',
@@ -218,10 +218,10 @@ flow('Questionnaires', 'AUTO-Q9m2Kp4Lx', () => {
218
218
  it('disable the submit button when all questions have not been answered');
219
219
  });
220
220
  });
221
- command('submits the questionnaire', 'AUTO-T5k9Jw3V')
221
+ command('submits the questionnaire', 'T5k9Jw3V')
222
222
  .server(() => {
223
223
  specs(() => {
224
- rule('questionnaire allowed to be submitted when all questions are answered', 'AUTO-r4H0Lx4U', () => {
224
+ rule('questionnaire allowed to be submitted when all questions are answered', 'r4H0Lx4U', () => {
225
225
  example('submits the questionnaire successfully')
226
226
  .when({
227
227
  questionnaireId: 'q-001',
@@ -1 +1 @@
1
- {"version":3,"file":"questionnaires.narrative.js","sourceRoot":"","sources":["../../../src/samples/questionnaires.narrative.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"questionnaires.narrative.js","sourceRoot":"","sources":["../../../src/samples/questionnaires.narrative.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { flow, specs, rule, example } from '../narrative.js';
1
+ import { flow, specs, rule, example, thenError } from '../narrative.js';
2
2
  import { command, query, react } from '../fluent-builder.js';
3
3
  flow('Test Flow with IDs', 'FLOW-001', () => {
4
4
  command('Create test item', 'SLICE-001')
@@ -18,17 +18,11 @@ flow('Test Flow with IDs', 'FLOW-001', () => {
18
18
  });
19
19
  });
20
20
  rule('Invalid test items should be rejected', 'RULE-002', () => {
21
- example('User tries to create item with empty name')
22
- .when({
21
+ example('User tries to create item with empty name').when({
23
22
  itemId: 'test_456',
24
23
  name: '',
25
- })
26
- .then([
27
- {
28
- errorType: 'ValidationError',
29
- message: 'Item name cannot be empty',
30
- },
31
- ]);
24
+ });
25
+ thenError('ValidationError', 'Item name cannot be empty');
32
26
  });
33
27
  });
34
28
  });
@@ -54,25 +48,15 @@ flow('Test Flow with IDs', 'FLOW-001', () => {
54
48
  specs('Test event reaction specs', () => {
55
49
  rule('System should react to test item creation', 'RULE-004', () => {
56
50
  example('Notification sent when test item is created')
57
- .when([
58
- {
59
- eventRef: 'TestItemCreated',
60
- exampleData: {
61
- id: 'test_789',
62
- name: 'Another Test Item',
63
- createdAt: new Date('2024-01-16T10:00:00Z'),
64
- },
65
- },
66
- ])
67
- .then([
68
- {
69
- commandRef: 'SendNotification',
70
- exampleData: {
71
- message: 'New test item created: Another Test Item',
72
- recipientId: 'admin',
73
- },
74
- },
75
- ]);
51
+ .when({
52
+ id: 'test_789',
53
+ name: 'Another Test Item',
54
+ createdAt: new Date('2024-01-16T10:00:00Z'),
55
+ })
56
+ .then({
57
+ message: 'New test item created: Another Test Item',
58
+ recipientId: 'admin',
59
+ });
76
60
  });
77
61
  });
78
62
  });
@@ -1 +1 @@
1
- {"version":3,"file":"test-with-ids.narrative.js","sourceRoot":"","sources":["../../../src/samples/test-with-ids.narrative.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA4B1D,IAAI,CAAC,oBAAoB,EAAE,UAAU,EAAE,GAAG,EAAE;IAC1C,OAAO,CAAC,kBAAkB,EAAE,WAAW,CAAC;SACrC,MAAM,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;SAChB,MAAM,CAAC,GAAG,EAAE;QACX,KAAK,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACrC,IAAI,CAAC,iDAAiD,EAAE,UAAU,EAAE,GAAG,EAAE;gBACvE,OAAO,CAAC,8CAA8C,CAAC;qBACpD,IAAI,CAAiB;oBACpB,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,WAAW;iBAClB,CAAC;qBACD,IAAI,CAAkB;oBACrB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;iBAC5C,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,uCAAuC,EAAE,UAAU,EAAE,GAAG,EAAE;gBAC7D,OAAO,CAAC,2CAA2C,CAAC;qBACjD,IAAI,CAAiB;oBACpB,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,EAAE;iBACT,CAAC;qBACD,IAAI,CAAC;oBACJ;wBACE,SAAS,EAAE,iBAA0B;wBACrC,OAAO,EAAE,2BAA2B;qBACrC;iBACF,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,KAAK,CAAC,gBAAgB,EAAE,WAAW,CAAC;SACjC,MAAM,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;SAChB,MAAM,CAAC,GAAG,EAAE;QACX,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACtC,IAAI,CAAC,4CAA4C,EAAE,UAAU,EAAE,GAAG,EAAE;gBAClE,OAAO,CAAC,6CAA6C,CAAC;qBACnD,IAAI,CAAkB;oBACrB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;iBAC5C,CAAC;qBACD,IAAI,CAAgB;oBACnB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,WAAW;iBAClB,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,KAAK,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QACpD,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACtC,IAAI,CAAC,2CAA2C,EAAE,UAAU,EAAE,GAAG,EAAE;gBACjE,OAAO,CAAC,6CAA6C,CAAC;qBACnD,IAAI,CAAC;oBACJ;wBACE,QAAQ,EAAE,iBAAiB;wBAC3B,WAAW,EAAE;4BACX,EAAE,EAAE,UAAU;4BACd,IAAI,EAAE,mBAAmB;4BACzB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;yBAC5C;qBACF;iBACF,CAAC;qBACD,IAAI,CAAC;oBACJ;wBACE,UAAU,EAAE,kBAAkB;wBAC9B,WAAW,EAAE;4BACX,OAAO,EAAE,0CAA0C;4BACnD,WAAW,EAAE,OAAO;yBACrB;qBACF;iBACF,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"test-with-ids.narrative.js","sourceRoot":"","sources":["../../../src/samples/test-with-ids.narrative.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAoC1D,IAAI,CAAC,oBAAoB,EAAE,UAAU,EAAE,GAAG,EAAE;IAC1C,OAAO,CAAC,kBAAkB,EAAE,WAAW,CAAC;SACrC,MAAM,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;SAChB,MAAM,CAAC,GAAG,EAAE;QACX,KAAK,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACrC,IAAI,CAAC,iDAAiD,EAAE,UAAU,EAAE,GAAG,EAAE;gBACvE,OAAO,CAAC,8CAA8C,CAAC;qBACpD,IAAI,CAAiB;oBACpB,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,WAAW;iBAClB,CAAC;qBACD,IAAI,CAAkB;oBACrB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;iBAC5C,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,uCAAuC,EAAE,UAAU,EAAE,GAAG,EAAE;gBAC7D,OAAO,CAAC,2CAA2C,CAAC,CAAC,IAAI,CAAiB;oBACxE,MAAM,EAAE,UAAU;oBAClB,IAAI,EAAE,EAAE;iBACT,CAAC,CAAC;gBACH,SAAS,CAAC,iBAAiB,EAAE,2BAA2B,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,KAAK,CAAC,gBAAgB,EAAE,WAAW,CAAC;SACjC,MAAM,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC;SAChB,MAAM,CAAC,GAAG,EAAE;QACX,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACtC,IAAI,CAAC,4CAA4C,EAAE,UAAU,EAAE,GAAG,EAAE;gBAClE,OAAO,CAAC,6CAA6C,CAAC;qBACnD,IAAI,CAAkB;oBACrB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,WAAW;oBACjB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;iBAC5C,CAAC;qBACD,IAAI,CAAgB;oBACnB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,WAAW;iBAClB,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEL,KAAK,CAAC,qBAAqB,EAAE,WAAW,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QACpD,KAAK,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACtC,IAAI,CAAC,2CAA2C,EAAE,UAAU,EAAE,GAAG,EAAE;gBACjE,OAAO,CAAC,6CAA6C,CAAC;qBACnD,IAAI,CAAkB;oBACrB,EAAE,EAAE,UAAU;oBACd,IAAI,EAAE,mBAAmB;oBACzB,SAAS,EAAE,IAAI,IAAI,CAAC,sBAAsB,CAAC;iBAC5C,CAAC;qBACD,IAAI,CAAmB;oBACtB,OAAO,EAAE,0CAA0C;oBACnD,WAAW,EAAE,OAAO;iBACrB,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}