Skip to content

Commit

Permalink
test: Add integration tests
Browse files Browse the repository at this point in the history
  • Loading branch information
sannajammeh committed Jan 20, 2022
1 parent 74c402f commit 59ca175
Show file tree
Hide file tree
Showing 5 changed files with 80 additions and 0 deletions.
2 changes: 2 additions & 0 deletions package.json
Expand Up @@ -141,6 +141,7 @@
"react-dom": "17.0.2",
"react-dom-18": "npm:react-dom@18.0.0-rc.0",
"react-ssr-prepass": "1.0.8",
"reflect-metadata": "0.1.13",
"release": "6.3.0",
"request-promise-core": "1.1.2",
"resolve-from": "5.0.0",
Expand All @@ -153,6 +154,7 @@
"tailwindcss": "1.1.3",
"taskr": "1.1.0",
"tree-kill": "1.2.2",
"tsyringe": "4.6.0",
"turbo": "1.0.14",
"typescript": "4.4.3",
"wait-port": "0.2.2",
Expand Down
36 changes: 36 additions & 0 deletions test/development/basic/emit-decorator-metadata.test.ts
@@ -0,0 +1,36 @@
import { join } from 'path'
import webdriver from 'next-webdriver'
import { createNext, FileRef } from 'e2e-utils'
import { NextInstance } from 'test/lib/next-modes/base'
import { BrowserInterface } from 'test/lib/browsers/base'

describe('emitDecoratorMetadata SWC option', () => {
let next: NextInstance

beforeAll(async () => {
next = await createNext({
files: {
'jsconfig.json': new FileRef(
join(__dirname, 'emit-decorator-metadata/jsconfig.json')
),
pages: new FileRef(join(__dirname, 'emit-decorator-metadata/pages')),
},
})
})

afterAll(() => next.destroy())

it('should compile with emitDecoratorMetadata enabled', async () => {
let browser: BrowserInterface
try {
browser = await webdriver(next.appPort, '/')
const message = await browser.elementByCss('#message').text()

expect(message).toBe('Hello, world!')
} finally {
if (browser) {
await browser.close()
}
}
})
})
7 changes: 7 additions & 0 deletions test/development/basic/emit-decorator-metadata/jsconfig.json
@@ -0,0 +1,7 @@
{
"compilerOptions": {
"experimentalDecorators": true,
"emitDecoratorMetadata": true,
"jsx": "preserve"
}
}
18 changes: 18 additions & 0 deletions test/development/basic/emit-decorator-metadata/pages/index.tsx
@@ -0,0 +1,18 @@
import React from 'react'
import 'reflect-metadata'
import { container, singleton } from 'tsyringe'

@singleton()
export class HelloService {
getHello() {
return 'Hello, world!'
}
}

const helloService = container.resolve(HelloService)

export default function Home() {
const message = helloService.getHello()

return <p id="message">{message}</p>
}
17 changes: 17 additions & 0 deletions yarn.lock
Expand Up @@ -16723,6 +16723,11 @@ reduce-css-calc@^2.1.5, reduce-css-calc@^2.1.6:
css-unit-converter "^1.1.1"
postcss-value-parser "^3.3.0"

reflect-metadata@0.1.13:
version "0.1.13"
resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.13.tgz#67ae3ca57c972a2aa1642b10fe363fe32d49dc08"
integrity sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==

regenerate-unicode-properties@^8.2.0:
version "8.2.0"
resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz#e5de7111d655e7ba60c057dbe9ff37c87e65cdec"
Expand Down Expand Up @@ -18972,6 +18977,11 @@ tslib@2.0.1:
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.0.1.tgz#410eb0d113e5b6356490eec749603725b021b43e"
integrity sha512-SgIkNheinmEBgx1IUNirK0TUD4X9yjjBRTqqjggWCU3pUEqIk3/Uwl3yRixYKT6WjQuGiwDv4NomL3wqRCj+CQ==

tslib@^1.9.3:
version "1.14.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==

tslib@^2.0.0, tslib@^2.3.0, tslib@^2.3.1:
version "2.3.1"
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
Expand Down Expand Up @@ -19000,6 +19010,13 @@ tsutils@^3.21.0:
dependencies:
tslib "^1.8.1"

tsyringe@4.6.0:
version "4.6.0"
resolved "https://registry.yarnpkg.com/tsyringe/-/tsyringe-4.6.0.tgz#14915d3d7f0db35e1cf7269bdbf7c440713c8d07"
integrity sha512-BMQAZamSfEmIQzH8WJeRu1yZGQbPSDuI9g+yEiKZFIcO46GPZuMOC2d0b52cVBdw1d++06JnDSIIZvEnogMdAw==
dependencies:
tslib "^1.9.3"

tty-browserify@0.0.0:
version "0.0.0"
resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6"
Expand Down

0 comments on commit 59ca175

Please sign in to comment.