@be-link/smart-test 1.0.1-beta.3 → 1.0.1-beta.5
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/dist/cli/commands/record.d.ts.map +1 -1
- package/dist/cli/index.js +124 -24
- package/dist/config/config-schema.d.ts +1 -1
- package/dist/config/config-schema.d.ts.map +1 -1
- package/dist/recorder/har-converter.d.ts +5 -1
- package/dist/recorder/har-converter.d.ts.map +1 -1
- package/dist/recorder/pom-generator.d.ts +4 -0
- package/dist/recorder/pom-generator.d.ts.map +1 -1
- package/dist/recorder/test-generator.d.ts +4 -0
- package/dist/recorder/test-generator.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/record.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/record.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CA6JzE"}
|
package/dist/cli/index.js
CHANGED
|
@@ -321,11 +321,11 @@ async function initCommand() {
|
|
|
321
321
|
name: 'naming',
|
|
322
322
|
message: '文件命名风格:',
|
|
323
323
|
choices: [
|
|
324
|
-
{ name: '
|
|
324
|
+
{ name: 'PascalCase (推荐)', value: 'PascalCase' },
|
|
325
325
|
{ name: 'camelCase', value: 'camelCase' },
|
|
326
|
-
{ name: '
|
|
326
|
+
{ name: 'kebab-case', value: 'kebab-case' },
|
|
327
327
|
],
|
|
328
|
-
default: '
|
|
328
|
+
default: 'PascalCase',
|
|
329
329
|
},
|
|
330
330
|
]);
|
|
331
331
|
// 构建配置对象
|
|
@@ -384,7 +384,7 @@ const DEFAULT_CONFIG = {
|
|
|
384
384
|
output: {
|
|
385
385
|
testsDir: './tests/e2e',
|
|
386
386
|
helpersDir: './tests/helpers',
|
|
387
|
-
naming: '
|
|
387
|
+
naming: 'PascalCase',
|
|
388
388
|
},
|
|
389
389
|
templates: {
|
|
390
390
|
mock: 'default',
|
|
@@ -828,16 +828,26 @@ class HARConverter {
|
|
|
828
828
|
}
|
|
829
829
|
}
|
|
830
830
|
/**
|
|
831
|
-
* 生成 Mock 数据的 key
|
|
831
|
+
* 生成 Mock 数据的 key(使用 camelCase)
|
|
832
832
|
*/
|
|
833
833
|
generateMockKey(apiPath, method) {
|
|
834
|
-
//
|
|
835
|
-
// /api/user
|
|
834
|
+
// 将路径转换为驼峰命名,并移除所有特殊字符
|
|
835
|
+
// /api/user-info -> apiUserInfo
|
|
836
|
+
// /product-detail -> productDetail
|
|
836
837
|
const parts = apiPath
|
|
837
838
|
.split('/')
|
|
838
839
|
.filter((p) => p)
|
|
839
|
-
.map((
|
|
840
|
-
|
|
840
|
+
.map((part) => {
|
|
841
|
+
// 移除特殊字符并转换为 PascalCase
|
|
842
|
+
return part
|
|
843
|
+
.split(/[-_\s]+/) // 按短横线、下划线、空格分割
|
|
844
|
+
.filter((word) => word) // 过滤空字符串
|
|
845
|
+
.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
|
|
846
|
+
.join('');
|
|
847
|
+
});
|
|
848
|
+
// 拼接方法名和路径:getProductDetail
|
|
849
|
+
const pathPart = parts.join('');
|
|
850
|
+
return method.toLowerCase() + pathPart;
|
|
841
851
|
}
|
|
842
852
|
/**
|
|
843
853
|
* 生成 Playwright Mock 代码
|
|
@@ -898,12 +908,22 @@ class HARConverter {
|
|
|
898
908
|
capitalize(str) {
|
|
899
909
|
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
900
910
|
}
|
|
911
|
+
/**
|
|
912
|
+
* 转换为 PascalCase
|
|
913
|
+
*/
|
|
914
|
+
toPascalCase(str) {
|
|
915
|
+
return str
|
|
916
|
+
.split(/[-_\s]+/)
|
|
917
|
+
.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
|
|
918
|
+
.join('');
|
|
919
|
+
}
|
|
901
920
|
/**
|
|
902
921
|
* 保存 Mock 代码
|
|
903
922
|
*/
|
|
904
923
|
async saveMockCode(requests, outputPath, pageName) {
|
|
905
924
|
const mockCode = this.generateMockCode(requests, pageName);
|
|
906
|
-
const
|
|
925
|
+
const fileName = `Mock${this.toPascalCase(pageName)}.ts`;
|
|
926
|
+
const mockPath = path.join(outputPath, fileName);
|
|
907
927
|
await fs.mkdir(outputPath, { recursive: true });
|
|
908
928
|
await fs.writeFile(mockPath, mockCode, 'utf-8');
|
|
909
929
|
logger.success(`Mock 代码已保存: ${mockPath}`);
|
|
@@ -987,13 +1007,36 @@ ${requestSummary}
|
|
|
987
1007
|
|
|
988
1008
|
## 要求
|
|
989
1009
|
1. 使用 TypeScript 语法
|
|
990
|
-
2.
|
|
1010
|
+
2. 导入必要的函数:
|
|
1011
|
+
- import { test, expect } from '@playwright/test'
|
|
1012
|
+
- import { aiReviewScreenshot } from '@be-link/smart-test'
|
|
1013
|
+
- import { mock${this.capitalize(pageName)}Apis } from './${mockFileName}'
|
|
991
1014
|
3. 在测试开始前调用 Mock 函数
|
|
992
1015
|
4. 包含基础的页面加载测试
|
|
993
|
-
5.
|
|
994
|
-
6.
|
|
995
|
-
7.
|
|
996
|
-
8.
|
|
1016
|
+
5. 必须包含一个 AI 视觉识别测试用例,使用 aiReviewScreenshot 检查页面内容
|
|
1017
|
+
6. 根据请求类型,生成合适的测试场景(如表单提交、数据加载等)
|
|
1018
|
+
7. 使用 Playwright 的最佳实践
|
|
1019
|
+
8. 包含有意义的断言
|
|
1020
|
+
9. **所有注释必须使用中文**,代码简洁清晰
|
|
1021
|
+
10. test.describe 和 test 的描述文本也使用中文
|
|
1022
|
+
|
|
1023
|
+
## 示例格式
|
|
1024
|
+
\`\`\`typescript
|
|
1025
|
+
test.describe('产品详情页面测试', () => {
|
|
1026
|
+
test.beforeEach(async ({ page }) => {
|
|
1027
|
+
// 设置 Mock 数据
|
|
1028
|
+
await mockProductDetailApis(page);
|
|
1029
|
+
});
|
|
1030
|
+
|
|
1031
|
+
test('应该成功加载页面', async ({ page }) => {
|
|
1032
|
+
// 访问页面
|
|
1033
|
+
await page.goto('${url}');
|
|
1034
|
+
|
|
1035
|
+
// 验证页面加载
|
|
1036
|
+
await expect(page).toHaveURL('${url}');
|
|
1037
|
+
});
|
|
1038
|
+
});
|
|
1039
|
+
\`\`\`
|
|
997
1040
|
|
|
998
1041
|
请直接返回测试代码,不需要额外的说明。
|
|
999
1042
|
`;
|
|
@@ -1029,6 +1072,7 @@ ${requestSummary}
|
|
|
1029
1072
|
generateBasicTest(url, pageName, mockFileName) {
|
|
1030
1073
|
const capitalizedName = this.capitalize(pageName);
|
|
1031
1074
|
return `import { test, expect } from '@playwright/test';
|
|
1075
|
+
import { aiReviewScreenshot } from '@be-link/smart-test';
|
|
1032
1076
|
import { mock${capitalizedName}Apis } from './${mockFileName}';
|
|
1033
1077
|
|
|
1034
1078
|
test.describe('${capitalizedName} 页面测试', () => {
|
|
@@ -1048,15 +1092,47 @@ test.describe('${capitalizedName} 页面测试', () => {
|
|
|
1048
1092
|
await expect(page).toHaveURL('${url}');
|
|
1049
1093
|
});
|
|
1050
1094
|
|
|
1095
|
+
test('AI 视觉识别 - 页面内容检查', async ({ page }) => {
|
|
1096
|
+
// 访问页面
|
|
1097
|
+
await page.goto('${url}');
|
|
1098
|
+
|
|
1099
|
+
// 等待页面加载
|
|
1100
|
+
await page.waitForLoadState('networkidle');
|
|
1101
|
+
|
|
1102
|
+
// 使用 AI 视觉识别检查页面内容
|
|
1103
|
+
const result = await aiReviewScreenshot(page, {
|
|
1104
|
+
expected: '页面应该正常显示,没有明显的布局错误或内容缺失',
|
|
1105
|
+
fullPage: true,
|
|
1106
|
+
});
|
|
1107
|
+
|
|
1108
|
+
// 如果没有配置 AI,跳过测试
|
|
1109
|
+
if (result.skipped) {
|
|
1110
|
+
test.skip();
|
|
1111
|
+
}
|
|
1112
|
+
|
|
1113
|
+
// 验证 AI 检查结果
|
|
1114
|
+
expect(result.ok, result.issues?.join(', ')).toBeTruthy();
|
|
1115
|
+
});
|
|
1116
|
+
|
|
1051
1117
|
// TODO: 添加更多测试用例
|
|
1052
1118
|
});
|
|
1053
1119
|
`;
|
|
1054
1120
|
}
|
|
1121
|
+
/**
|
|
1122
|
+
* 转换为 PascalCase
|
|
1123
|
+
*/
|
|
1124
|
+
toPascalCase(str) {
|
|
1125
|
+
return str
|
|
1126
|
+
.split(/[-_\s]+/)
|
|
1127
|
+
.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
|
|
1128
|
+
.join('');
|
|
1129
|
+
}
|
|
1055
1130
|
/**
|
|
1056
1131
|
* 保存测试文件
|
|
1057
1132
|
*/
|
|
1058
1133
|
async saveTest(testCode, outputPath, pageName) {
|
|
1059
|
-
const
|
|
1134
|
+
const fileName = `${this.toPascalCase(pageName)}.spec.ts`;
|
|
1135
|
+
const testPath = path.join(outputPath, fileName);
|
|
1060
1136
|
await fs.mkdir(outputPath, { recursive: true });
|
|
1061
1137
|
await fs.writeFile(testPath, testCode, 'utf-8');
|
|
1062
1138
|
logger.success(`测试文件已保存: ${testPath}`);
|
|
@@ -1375,11 +1451,21 @@ export class ${className} {
|
|
|
1375
1451
|
})
|
|
1376
1452
|
.join('');
|
|
1377
1453
|
}
|
|
1454
|
+
/**
|
|
1455
|
+
* 转换为 PascalCase
|
|
1456
|
+
*/
|
|
1457
|
+
toPascalCase(str) {
|
|
1458
|
+
return str
|
|
1459
|
+
.split(/[-_\s]+/)
|
|
1460
|
+
.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
|
|
1461
|
+
.join('');
|
|
1462
|
+
}
|
|
1378
1463
|
/**
|
|
1379
1464
|
* 保存 POM 文件
|
|
1380
1465
|
*/
|
|
1381
1466
|
async savePOM(pomCode, outputPath, pageName) {
|
|
1382
|
-
const
|
|
1467
|
+
const fileName = `${this.toPascalCase(pageName)}Page.ts`;
|
|
1468
|
+
const pomPath = path.join(outputPath, fileName);
|
|
1383
1469
|
await fs.mkdir(outputPath, { recursive: true });
|
|
1384
1470
|
await fs.writeFile(pomPath, pomCode, 'utf-8');
|
|
1385
1471
|
logger.success(`POM 文件已保存: ${pomPath}`);
|
|
@@ -1829,12 +1915,13 @@ async function recordCommand(options) {
|
|
|
1829
1915
|
const converter = new HARConverter();
|
|
1830
1916
|
// 提取页面名称
|
|
1831
1917
|
const pageName = extractPageName(recordOptions.url);
|
|
1832
|
-
|
|
1918
|
+
const pascalCaseName = toPascalCase(pageName);
|
|
1919
|
+
logger.debug(`页面名称: ${pageName} (PascalCase: ${pascalCaseName})`);
|
|
1833
1920
|
// 保存 HAR 文件
|
|
1834
1921
|
const outputDir = path.resolve(process.cwd(), recordOptions.output);
|
|
1835
1922
|
await converter.saveHAR(validRequests, outputDir);
|
|
1836
1923
|
// 生成并保存 Mock 代码
|
|
1837
|
-
const mockFileName = `
|
|
1924
|
+
const mockFileName = `Mock${pascalCaseName}`;
|
|
1838
1925
|
await converter.saveMockCode(validRequests, outputDir, pageName);
|
|
1839
1926
|
logger.succeedSpinner('Mock 代码生成完成');
|
|
1840
1927
|
// 生成测试用例
|
|
@@ -1857,14 +1944,14 @@ async function recordCommand(options) {
|
|
|
1857
1944
|
logger.info('生成的文件:');
|
|
1858
1945
|
logger.info(` 📄 ${path.join(outputDir, 'recorded.har')}`);
|
|
1859
1946
|
logger.info(` 📄 ${path.join(outputDir, `${mockFileName}.ts`)}`);
|
|
1860
|
-
logger.info(` 📄 ${path.join(outputDir, `${
|
|
1861
|
-
logger.info(` 📄 ${path.join(outputDir, `${
|
|
1947
|
+
logger.info(` 📄 ${path.join(outputDir, `${pascalCaseName}.spec.ts`)}`);
|
|
1948
|
+
logger.info(` 📄 ${path.join(outputDir, `${pascalCaseName}Page.ts`)}`);
|
|
1862
1949
|
logger.newLine();
|
|
1863
1950
|
logger.info('下一步:');
|
|
1864
1951
|
logger.info(` 1. 查看生成的 Mock 代码: ${path.join(outputDir, `${mockFileName}.ts`)}`);
|
|
1865
|
-
logger.info(` 2. 查看生成的测试用例: ${path.join(outputDir, `${
|
|
1866
|
-
logger.info(` 3. 查看生成的 POM 代码: ${path.join(outputDir, `${
|
|
1867
|
-
logger.info(` 4. 运行测试: npx playwright test ${path.join(outputDir, `${
|
|
1952
|
+
logger.info(` 2. 查看生成的测试用例: ${path.join(outputDir, `${pascalCaseName}.spec.ts`)}`);
|
|
1953
|
+
logger.info(` 3. 查看生成的 POM 代码: ${path.join(outputDir, `${pascalCaseName}Page.ts`)}`);
|
|
1954
|
+
logger.info(` 4. 运行测试: npx playwright test ${path.join(outputDir, `${pascalCaseName}.spec.ts`)}`);
|
|
1868
1955
|
logger.newLine();
|
|
1869
1956
|
}
|
|
1870
1957
|
catch (error) {
|
|
@@ -1893,6 +1980,19 @@ function extractPageName(url) {
|
|
|
1893
1980
|
return 'page';
|
|
1894
1981
|
}
|
|
1895
1982
|
}
|
|
1983
|
+
/**
|
|
1984
|
+
* 将字符串转换为 PascalCase 格式
|
|
1985
|
+
* @example
|
|
1986
|
+
* toPascalCase('user-profile') // 'UserProfile'
|
|
1987
|
+
* toPascalCase('my_page') // 'MyPage'
|
|
1988
|
+
* toPascalCase('login') // 'Login'
|
|
1989
|
+
*/
|
|
1990
|
+
function toPascalCase(str) {
|
|
1991
|
+
return str
|
|
1992
|
+
.split(/[-_\s]+/) // 按短横线、下划线、空格分割
|
|
1993
|
+
.map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
|
|
1994
|
+
.join('');
|
|
1995
|
+
}
|
|
1896
1996
|
|
|
1897
1997
|
/**
|
|
1898
1998
|
* 生成命令
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["../../src/config/config-schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,EAAE,CAAC,EAAE;QACH;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;QAElB;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,MAAM,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"config-schema.d.ts","sourceRoot":"","sources":["../../src/config/config-schema.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,EAAE,CAAC,EAAE;QACH;;WAEG;QACH,KAAK,CAAC,EAAE,MAAM,CAAC;QAEf;;WAEG;QACH,MAAM,CAAC,EAAE,MAAM,CAAC;QAEhB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IAEF;;OAEG;IACH,MAAM,CAAC,EAAE;QACP;;WAEG;QACH,QAAQ,CAAC,EAAE,MAAM,CAAC;QAElB;;WAEG;QACH,UAAU,CAAC,EAAE,MAAM,CAAC;QAEpB;;WAEG;QACH,MAAM,CAAC,EAAE,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CAAC;KACnE,CAAC;IAEF;;OAEG;IACH,SAAS,CAAC,EAAE;QACV;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;QAEd;;WAEG;QACH,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IAEF;;OAEG;IACH,UAAU,CAAC,EAAE;QACX;;WAEG;QACH,OAAO,CAAC,EAAE,MAAM,CAAC;QAEjB;;WAEG;QACH,QAAQ,CAAC,EAAE;YACT,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;QAEF;;WAEG;QACH,OAAO,CAAC,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC;KAC7C,CAAC;CACH;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,eAwB5B,CAAC"}
|
|
@@ -24,7 +24,7 @@ export declare class HARConverter {
|
|
|
24
24
|
*/
|
|
25
25
|
private extractApiPath;
|
|
26
26
|
/**
|
|
27
|
-
* 生成 Mock 数据的 key
|
|
27
|
+
* 生成 Mock 数据的 key(使用 camelCase)
|
|
28
28
|
*/
|
|
29
29
|
private generateMockKey;
|
|
30
30
|
/**
|
|
@@ -39,6 +39,10 @@ export declare class HARConverter {
|
|
|
39
39
|
* 首字母大写
|
|
40
40
|
*/
|
|
41
41
|
private capitalize;
|
|
42
|
+
/**
|
|
43
|
+
* 转换为 PascalCase
|
|
44
|
+
*/
|
|
45
|
+
private toPascalCase;
|
|
42
46
|
/**
|
|
43
47
|
* 保存 Mock 代码
|
|
44
48
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"har-converter.d.ts","sourceRoot":"","sources":["../../src/recorder/har-converter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAY,MAAM,SAAS,CAAC;AAGjE;;GAEG;AACH,qBAAa,YAAY;IACvB;;OAEG;IACH,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO;IAiB1C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8BzB;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAW9E;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAyCjE;;OAEG;IACH,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,OAAO,CAAC,eAAe;
|
|
1
|
+
{"version":3,"file":"har-converter.d.ts","sourceRoot":"","sources":["../../src/recorder/har-converter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,OAAO,EAAY,MAAM,SAAS,CAAC;AAGjE;;GAEG;AACH,qBAAa,YAAY;IACvB;;OAEG;IACH,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO;IAiB1C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA8BzB;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAW9E;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAyCjE;;OAEG;IACH,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM;IA2CtE;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACG,YAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAWtG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pom-generator.d.ts","sourceRoot":"","sources":["../../src/recorder/pom-generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAEpE;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEnC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,YAAY;IAGX,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAuB;gBAEjB,MAAM,EAAE,eAAe;IAW3C;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA0IzD;;OAEG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAiE9F;;OAEG;YACW,oBAAoB;IAqElC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"pom-generator.d.ts","sourceRoot":"","sources":["../../src/recorder/pom-generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAG7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,GAAG,OAAO,CAAC;IAEpE;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEnC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,YAAY;IAGX,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAuB;gBAEjB,MAAM,EAAE,eAAe;IAW3C;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IA0IzD;;OAEG;IACG,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAiE9F;;OAEG;YACW,oBAAoB;IAqElC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;IACH,OAAO,CAAC,cAAc;IAgBtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWrF;;OAEG;IACH,OAAO,CAAC,UAAU;CAGnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-generator.d.ts","sourceRoot":"","sources":["../../src/recorder/test-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D;;GAEG;AACH,qBAAa,aAAa;IAGZ,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAuB;gBAEjB,MAAM,EAAE,eAAe;IAW3C;;OAEG;IACG,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA+CpH;;OAEG;IACH,OAAO,CAAC,WAAW;
|
|
1
|
+
{"version":3,"file":"test-generator.d.ts","sourceRoot":"","sources":["../../src/recorder/test-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAG/D;;GAEG;AACH,qBAAa,aAAa;IAGZ,OAAO,CAAC,MAAM;IAF1B,OAAO,CAAC,MAAM,CAAuB;gBAEjB,MAAM,EAAE,eAAe;IAW3C;;OAEG;IACG,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA+CpH;;OAEG;IACH,OAAO,CAAC,WAAW;IAmDnB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2BzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAmDzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAOpB;;OAEG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAWvF;;OAEG;IACH,OAAO,CAAC,UAAU;CAGnB"}
|
package/package.json
CHANGED