automation_model 1.0.600-dev → 1.0.602-dev
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/lib/auto_page.d.ts +1 -1
- package/lib/auto_page.js +66 -1
- package/lib/auto_page.js.map +1 -1
- package/package.json +1 -1
package/lib/auto_page.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { InitScripts } from "./generation_scripts.js";
|
|
2
2
|
declare const navigate: (path?: string) => Promise<void>;
|
|
3
|
-
declare const initContext: (path: string, doNavigate?: boolean, headless?: boolean, world?: any, moveToRight?: number, initScript?: InitScripts | null) => Promise<any>;
|
|
3
|
+
declare const initContext: (path: string, doNavigate?: boolean, headless?: boolean, world?: any, moveToRight?: number, initScript?: InitScripts | null, envName?: string | null) => Promise<any>;
|
|
4
4
|
declare const closeContext: () => Promise<void>;
|
|
5
5
|
export { initContext, navigate, closeContext };
|
package/lib/auto_page.js
CHANGED
|
@@ -2,6 +2,7 @@ import { browserManager } from "./browser_manager.js";
|
|
|
2
2
|
import { getContext } from "./init_browser.js";
|
|
3
3
|
import fs from "fs";
|
|
4
4
|
import path from "path";
|
|
5
|
+
import { _getDataFile } from "./utils.js";
|
|
5
6
|
let context = null;
|
|
6
7
|
let reportFolder = "";
|
|
7
8
|
const navigate = async (path = "") => {
|
|
@@ -38,7 +39,7 @@ const _findEmptyFolder = (folder) => {
|
|
|
38
39
|
}
|
|
39
40
|
return path.join(folder, nextIndex.toString());
|
|
40
41
|
};
|
|
41
|
-
const initContext = async (path, doNavigate = true, headless = false, world = null, moveToRight = -1, initScript = null) => {
|
|
42
|
+
const initContext = async (path, doNavigate = true, headless = false, world = null, moveToRight = -1, initScript = null, envName = null) => {
|
|
42
43
|
if (context) {
|
|
43
44
|
return context;
|
|
44
45
|
}
|
|
@@ -88,8 +89,28 @@ const initContext = async (path, doNavigate = true, headless = false, world = nu
|
|
|
88
89
|
if (doNavigate) {
|
|
89
90
|
await navigate(path);
|
|
90
91
|
}
|
|
92
|
+
if (context) {
|
|
93
|
+
const env = envName || getEnv();
|
|
94
|
+
if (env) {
|
|
95
|
+
await getTestData(reportFolder, env, world);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
91
98
|
return context;
|
|
92
99
|
};
|
|
100
|
+
const getEnv = () => {
|
|
101
|
+
const env = process.env.BLINQ_ENV;
|
|
102
|
+
if (env) {
|
|
103
|
+
try {
|
|
104
|
+
const content = JSON.parse(fs.readFileSync(env, "utf8"));
|
|
105
|
+
return content.name;
|
|
106
|
+
}
|
|
107
|
+
catch (e) {
|
|
108
|
+
console.log("Error reading env file: " + e);
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return null;
|
|
113
|
+
};
|
|
93
114
|
const closeContext = async () => {
|
|
94
115
|
try {
|
|
95
116
|
if (context && context.browser) {
|
|
@@ -102,5 +123,49 @@ const closeContext = async () => {
|
|
|
102
123
|
}
|
|
103
124
|
context = null;
|
|
104
125
|
};
|
|
126
|
+
const getTestData = async (rFolder, currentEnv, world) => {
|
|
127
|
+
try {
|
|
128
|
+
const data = fs.readFileSync(path.join("data", "data.json"), "utf8");
|
|
129
|
+
const jsonData = JSON.parse(data);
|
|
130
|
+
const testData = [];
|
|
131
|
+
const allEnvData = jsonData["*"];
|
|
132
|
+
const currentEnvData = jsonData[currentEnv];
|
|
133
|
+
if (allEnvData) {
|
|
134
|
+
for (const key in allEnvData) {
|
|
135
|
+
testData.push({ [key]: allEnvData[key] });
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
if (currentEnvData) {
|
|
139
|
+
for (const key in currentEnvData) {
|
|
140
|
+
testData.push({ [key]: currentEnvData[key] });
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
if (process.env.GLOBAL_TEST_DATA_FILE && fs.existsSync(path.join(rFolder, "data.json"))) {
|
|
144
|
+
const content = fs.readFileSync(path.join(rFolder, "data.json"), "utf8");
|
|
145
|
+
try {
|
|
146
|
+
const data = JSON.parse(content);
|
|
147
|
+
for (const key in data) {
|
|
148
|
+
// if key exists in testData, update it
|
|
149
|
+
let found = false;
|
|
150
|
+
for (let i = 0; i < testData.length; i++) {
|
|
151
|
+
if (testData[i][key]) {
|
|
152
|
+
found = true;
|
|
153
|
+
testData[i][key] = data[key];
|
|
154
|
+
break;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
catch (e) {
|
|
160
|
+
console.error("Failed to merge data.json file: " + e);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
const dataFile = _getDataFile(world, context, context?.stable);
|
|
164
|
+
fs.writeFileSync(dataFile, JSON.stringify(testData, null, 2));
|
|
165
|
+
}
|
|
166
|
+
catch (e) {
|
|
167
|
+
console.log("Error reading data.json file: " + e);
|
|
168
|
+
}
|
|
169
|
+
};
|
|
105
170
|
export { initContext, navigate, closeContext };
|
|
106
171
|
//# sourceMappingURL=auto_page.js.map
|
package/lib/auto_page.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auto_page.js","sourceRoot":"","sources":["../../src/auto_page.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"auto_page.js","sourceRoot":"","sources":["../../src/auto_page.ts"],"names":[],"mappings":"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"}
|