Skip to content

Commit

Permalink
test(e2e/plugin-babel): babel/decorator test -> rspackOnlyTest (#2033)
Browse files Browse the repository at this point in the history
  • Loading branch information
SoonIter authored Apr 8, 2024
1 parent 1b7500c commit 862ee40
Show file tree
Hide file tree
Showing 2 changed files with 71 additions and 68 deletions.
137 changes: 70 additions & 67 deletions e2e/cases/babel/decorator/index.test.ts
Original file line number Diff line number Diff line change
@@ -1,78 +1,81 @@
import test, { expect } from '@playwright/test';
import { build, gotoPage } from '@e2e/helper';
import { expect } from '@playwright/test';
import { build, gotoPage, rspackOnlyTest } from '@e2e/helper';
import { pluginBabel } from '@rsbuild/plugin-babel';

test('should support legacy decorators and source.decorators.version in TypeScript', async ({
page,
}) => {
const rsbuild = await build({
cwd: __dirname,
runServer: true,
plugins: [pluginBabel()],
});
rspackOnlyTest(
'should support legacy decorators and source.decorators.version in TypeScript',
async ({ page }) => {
const rsbuild = await build({
cwd: __dirname,
runServer: true,
plugins: [pluginBabel()],
});

await gotoPage(page, rsbuild);
expect(await page.evaluate('window.aaa')).toBe('hello');
expect(await page.evaluate('window.bbb')).toBe('world');
expect(await page.evaluate('window.FooService')).toBeTruthy();
await rsbuild.close();
});
await gotoPage(page, rsbuild);
expect(await page.evaluate('window.aaa')).toBe('hello');
expect(await page.evaluate('window.bbb')).toBe('world');
expect(await page.evaluate('window.FooService')).toBeTruthy();
await rsbuild.close();
},
);

test('should support legacy decorators and source.decorators.version in JavaScript', async ({
page,
}) => {
const rsbuild = await build({
cwd: __dirname,
runServer: true,
plugins: [pluginBabel()],
rsbuildConfig: {
source: {
entry: {
index: './src/jsIndex.js',
rspackOnlyTest(
'should support legacy decorators and source.decorators.version in JavaScript',
async ({ page }) => {
const rsbuild = await build({
cwd: __dirname,
runServer: true,
plugins: [pluginBabel()],
rsbuildConfig: {
source: {
entry: {
index: './src/jsIndex.js',
},
},
},
},
});
});

await gotoPage(page, rsbuild);
expect(await page.evaluate('window.aaa')).toBe('hello');
expect(await page.evaluate('window.bbb')).toBe('world');
expect(await page.evaluate('window.FooService')).toBeTruthy();
await rsbuild.close();
});
await gotoPage(page, rsbuild);
expect(await page.evaluate('window.aaa')).toBe('hello');
expect(await page.evaluate('window.bbb')).toBe('world');
expect(await page.evaluate('window.FooService')).toBeTruthy();
await rsbuild.close();
},
);

test('should work together with user custom @babel/preset-env config', async ({
page,
}) => {
const rsbuild = await build({
cwd: __dirname,
runServer: true,
plugins: [
pluginBabel({
babelLoaderOptions(_, { addPresets }) {
addPresets([
[
'@babel/preset-env',
{
include: ['@babel/plugin-transform-class-properties'],
},
],
]);
},
}),
],
rsbuildConfig: {
source: {
entry: {
index: './src/jsIndex.js',
rspackOnlyTest(
'should work together with user custom @babel/preset-env config',
async ({ page }) => {
const rsbuild = await build({
cwd: __dirname,
runServer: true,
plugins: [
pluginBabel({
babelLoaderOptions(_, { addPresets }) {
addPresets([
[
'@babel/preset-env',
{
include: ['@babel/plugin-transform-class-properties'],
},
],
]);
},
}),
],
rsbuildConfig: {
source: {
entry: {
index: './src/jsIndex.js',
},
},
},
},
});
});

await gotoPage(page, rsbuild);
expect(await page.evaluate('window.aaa')).toBe('hello');
expect(await page.evaluate('window.bbb')).toBe('world');
expect(await page.evaluate('window.FooService')).toBeTruthy();
await rsbuild.close();
});
await gotoPage(page, rsbuild);
expect(await page.evaluate('window.aaa')).toBe('hello');
expect(await page.evaluate('window.bbb')).toBe('world');
expect(await page.evaluate('window.FooService')).toBeTruthy();
await rsbuild.close();
},
);
2 changes: 1 addition & 1 deletion e2e/cases/babel/decorator/src/jsIndex.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { FooService } from './decorator';
import { FooService } from './jsDecorator';

console.log(FooService);

Expand Down

0 comments on commit 862ee40

Please sign in to comment.