@auto-engineer/narrative 0.20.0 → 0.21.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.
- package/.turbo/turbo-build.log +1 -1
- package/.turbo/turbo-format.log +1 -1
- package/.turbo/turbo-lint.log +1 -1
- package/.turbo/turbo-test.log +6 -6
- package/.turbo/turbo-type-check.log +5 -4
- package/CHANGELOG.md +13 -0
- package/dist/src/commands/export-schema-runner.js +6 -1
- package/dist/src/commands/export-schema-runner.js.map +1 -1
- package/dist/src/fluent-builder.specs.js +2 -2
- package/dist/src/fluent-builder.specs.js.map +1 -1
- package/dist/src/getNarratives.cache.specs.js +5 -5
- package/dist/src/getNarratives.cache.specs.js.map +1 -1
- package/dist/src/getNarratives.specs.js +194 -207
- package/dist/src/getNarratives.specs.js.map +1 -1
- package/dist/src/id/addAutoIds.specs.js +72 -409
- package/dist/src/id/addAutoIds.specs.js.map +1 -1
- package/dist/src/id/hasAllIds.specs.js +215 -408
- package/dist/src/id/hasAllIds.specs.js.map +1 -1
- package/dist/src/model-to-narrative.specs.js +505 -564
- package/dist/src/model-to-narrative.specs.js.map +1 -1
- package/dist/src/narrative-context.specs.js +58 -133
- package/dist/src/narrative-context.specs.js.map +1 -1
- package/dist/src/schema.d.ts +302 -302
- package/dist/src/transformers/narrative-to-model/type-inference.specs.js +94 -104
- package/dist/src/transformers/narrative-to-model/type-inference.specs.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
- package/dist/src/transformers/model-to-narrative/generators/gwt.specs.d.ts +0 -2
- package/dist/src/transformers/model-to-narrative/generators/gwt.specs.d.ts.map +0 -1
- package/dist/src/transformers/model-to-narrative/generators/gwt.specs.js +0 -142
- package/dist/src/transformers/model-to-narrative/generators/gwt.specs.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { describe,
|
|
1
|
+
import { describe, it, expect } from 'vitest';
|
|
2
2
|
import { narrativesToModel } from './index.js';
|
|
3
3
|
describe('Type inference in narrative-to-model transformer', () => {
|
|
4
4
|
it('should correctly extract command types from when clauses', () => {
|
|
@@ -11,94 +11,88 @@ describe('Type inference in narrative-to-model transformer', () => {
|
|
|
11
11
|
id: 'SLICE-001',
|
|
12
12
|
type: 'command',
|
|
13
13
|
name: 'Submit Answer Command',
|
|
14
|
-
client: {
|
|
14
|
+
client: { description: 'Submit answer client' },
|
|
15
15
|
server: {
|
|
16
16
|
description: 'Submit answer server',
|
|
17
|
-
specs:
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
{
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
participantId: 'participant-abc',
|
|
35
|
-
questionId: 'q1',
|
|
36
|
-
answer: 'Yes',
|
|
37
|
-
},
|
|
17
|
+
specs: {
|
|
18
|
+
name: 'Submit Answer Specs',
|
|
19
|
+
rules: [
|
|
20
|
+
{
|
|
21
|
+
id: 'RULE-001',
|
|
22
|
+
description: 'Should accept answer submission',
|
|
23
|
+
examples: [
|
|
24
|
+
{
|
|
25
|
+
description: 'Valid answer submission',
|
|
26
|
+
when: [
|
|
27
|
+
{
|
|
28
|
+
commandRef: 'AnswerQuestion',
|
|
29
|
+
exampleData: {
|
|
30
|
+
questionnaireId: 'q-001',
|
|
31
|
+
participantId: 'participant-abc',
|
|
32
|
+
questionId: 'q1',
|
|
33
|
+
answer: 'Yes',
|
|
38
34
|
},
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
35
|
+
},
|
|
36
|
+
],
|
|
37
|
+
then: [
|
|
38
|
+
{
|
|
39
|
+
eventRef: 'QuestionAnswered',
|
|
40
|
+
exampleData: {
|
|
41
|
+
questionnaireId: 'q-001',
|
|
42
|
+
participantId: 'participant-abc',
|
|
43
|
+
questionId: 'q1',
|
|
44
|
+
answer: 'Yes',
|
|
45
|
+
savedAt: new Date(),
|
|
49
46
|
},
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
},
|
|
50
|
+
],
|
|
51
|
+
},
|
|
52
|
+
],
|
|
53
|
+
},
|
|
57
54
|
},
|
|
58
55
|
},
|
|
59
56
|
{
|
|
60
57
|
id: 'SLICE-002',
|
|
61
58
|
type: 'command',
|
|
62
59
|
name: 'Submit Questionnaire Command',
|
|
63
|
-
client: {
|
|
60
|
+
client: { description: 'Submit questionnaire client' },
|
|
64
61
|
server: {
|
|
65
62
|
description: 'Submit questionnaire server',
|
|
66
|
-
specs:
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
{
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
docString: {
|
|
82
|
-
questionnaireId: 'q-001',
|
|
83
|
-
participantId: 'participant-abc',
|
|
84
|
-
},
|
|
63
|
+
specs: {
|
|
64
|
+
name: 'Submit Questionnaire Specs',
|
|
65
|
+
rules: [
|
|
66
|
+
{
|
|
67
|
+
id: 'RULE-002',
|
|
68
|
+
description: 'Should submit questionnaire',
|
|
69
|
+
examples: [
|
|
70
|
+
{
|
|
71
|
+
description: 'Valid questionnaire submission',
|
|
72
|
+
when: [
|
|
73
|
+
{
|
|
74
|
+
commandRef: 'SubmitQuestionnaire',
|
|
75
|
+
exampleData: {
|
|
76
|
+
questionnaireId: 'q-001',
|
|
77
|
+
participantId: 'participant-abc',
|
|
85
78
|
},
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
then: [
|
|
82
|
+
{
|
|
83
|
+
eventRef: 'QuestionnaireSubmitted',
|
|
84
|
+
exampleData: {
|
|
85
|
+
questionnaireId: 'q-001',
|
|
86
|
+
participantId: 'participant-abc',
|
|
87
|
+
submittedAt: new Date(),
|
|
94
88
|
},
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
89
|
+
},
|
|
90
|
+
],
|
|
91
|
+
},
|
|
92
|
+
],
|
|
93
|
+
},
|
|
94
|
+
],
|
|
95
|
+
},
|
|
102
96
|
},
|
|
103
97
|
},
|
|
104
98
|
],
|
|
@@ -130,38 +124,34 @@ describe('Type inference in narrative-to-model transformer', () => {
|
|
|
130
124
|
id: 'SLICE-001',
|
|
131
125
|
type: 'command',
|
|
132
126
|
name: 'Single Object Command',
|
|
133
|
-
client: {
|
|
127
|
+
client: { description: 'Single object client' },
|
|
134
128
|
server: {
|
|
135
129
|
description: 'Single object server',
|
|
136
|
-
specs:
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
keyword: 'When',
|
|
150
|
-
text: 'TestCommand',
|
|
151
|
-
docString: { test: 'value' },
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
keyword: 'Then',
|
|
155
|
-
text: 'TestEvent',
|
|
156
|
-
docString: { result: 'success' },
|
|
157
|
-
},
|
|
158
|
-
],
|
|
130
|
+
specs: {
|
|
131
|
+
name: 'Single Object Specs',
|
|
132
|
+
rules: [
|
|
133
|
+
{
|
|
134
|
+
id: 'RULE-001',
|
|
135
|
+
description: 'Should handle single object',
|
|
136
|
+
examples: [
|
|
137
|
+
{
|
|
138
|
+
description: 'Single object example',
|
|
139
|
+
// Single object, not array - this is what broke
|
|
140
|
+
when: {
|
|
141
|
+
commandRef: 'TestCommand',
|
|
142
|
+
exampleData: { test: 'value' },
|
|
159
143
|
},
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
144
|
+
then: [
|
|
145
|
+
{
|
|
146
|
+
eventRef: 'TestEvent',
|
|
147
|
+
exampleData: { result: 'success' },
|
|
148
|
+
},
|
|
149
|
+
],
|
|
150
|
+
},
|
|
151
|
+
],
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
},
|
|
165
155
|
},
|
|
166
156
|
},
|
|
167
157
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-inference.specs.js","sourceRoot":"","sources":["../../../../src/transformers/narrative-to-model/type-inference.specs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"type-inference.specs.js","sourceRoot":"","sources":["../../../../src/transformers/narrative-to-model/type-inference.specs.ts"],"names":[],"mappings":"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"}
|