Skip to content

Commit f15154f

Browse files
authored
fix: SDK builds incorrectly since release 3.5.0 causing various bugs (#1600)
1 parent a52c4c6 commit f15154f

File tree

5 files changed

+260
-10
lines changed

5 files changed

+260
-10
lines changed

gulpfile.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ const watch = require('gulp-watch');
1212
const BUILD = process.env.PARSE_BUILD || 'browser';
1313
const VERSION = require('./package.json').version;
1414

15-
const transformRuntime = ["@babel/plugin-transform-runtime", {
15+
const transformRuntime = ["@babel/transform-runtime", {
1616
"corejs": 3,
1717
"helpers": true,
1818
"regenerator": true,
@@ -22,10 +22,10 @@ const transformRuntime = ["@babel/plugin-transform-runtime", {
2222
const PRESETS = {
2323
'browser': [["@babel/preset-env", {
2424
"targets": "> 0.25%, not dead"
25-
}], '@babel/preset-react'],
25+
}]],
2626
'weapp': [["@babel/preset-env", {
2727
"targets": "> 0.25%, not dead"
28-
}], '@babel/preset-react'],
28+
}], '@babel/react'],
2929
'node': [["@babel/preset-env", {
3030
"targets": { "node": "8" }
3131
}]],

integration/test/ParseDistTest.js

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
const puppeteer = require('puppeteer');
2+
let page = null;
3+
for (const fileName of ['parse.js', 'parse.min.js']) {
4+
beforeAll(async () => {
5+
const browser = await puppeteer.launch();
6+
page = await browser.newPage();
7+
await page.goto(`http://localhost:1337/${fileName}`);
8+
});
9+
describe(`Parse Dist Test ${fileName}`, () => {
10+
it('can save an object', async () => {
11+
const response = await page.evaluate(async () => {
12+
const object = await new Parse.Object('TestObject').save();
13+
return object.id;
14+
});
15+
expect(response).toBeDefined();
16+
const obj = await new Parse.Query('TestObject').first();
17+
expect(obj).toBeDefined();
18+
expect(obj.id).toEqual(response);
19+
});
20+
it('can query an object', async () => {
21+
const obj = await new Parse.Object('TestObject').save();
22+
const response = await page.evaluate(async () => {
23+
const object = await new Parse.Query('TestObject').first();
24+
return object.id;
25+
});
26+
expect(response).toBeDefined();
27+
expect(obj).toBeDefined();
28+
expect(obj.id).toEqual(response);
29+
});
30+
});
31+
}

integration/test/helper.js

+23
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ const CustomAuth = require('./CustomAuth');
88
const sleep = require('./sleep');
99
const { TestUtils } = require('parse-server');
1010
const Parse = require('../../node');
11+
const fs = require('fs');
12+
const path = require('path');
1113

1214
const port = 1337;
1315
const mountPath = '/parse';
@@ -115,6 +117,27 @@ const reconfigureServer = (changedConfiguration = {}) => {
115117
});
116118
parseServer = ParseServer.start(newConfiguration);
117119
const app = parseServer.expressApp;
120+
for (const fileName of ['parse.js', 'parse.min.js']) {
121+
const file = fs
122+
.readFileSync(path.resolve(__dirname, `./../../dist/${fileName}`))
123+
.toString();
124+
app.get(`/${fileName}`, (req, res) => {
125+
res.send(`<html><head>
126+
<meta charset="utf-8">
127+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
128+
<title>Parse Functionality Test</title>
129+
<script>${file}</script>
130+
<script>
131+
(function() {
132+
Parse.initialize('integration');
133+
Parse.serverURL = 'http://localhost:1337/parse';
134+
})();
135+
</script>
136+
</head>
137+
<body>
138+
</body></html>`);
139+
});
140+
}
118141
app.get('/clear/:fast', (req, res) => {
119142
const { fast } = req.params;
120143
TestUtils.destroyAllDataPermanently(fast).then(() => {

0 commit comments

Comments
 (0)