mirror of
https://github.com/zhigang1992/probot.git
synced 2026-06-14 01:50:31 +08:00
53 lines
1.4 KiB
TypeScript
53 lines
1.4 KiB
TypeScript
import express from 'express'
|
|
import request from 'supertest'
|
|
import { Application } from '../../src'
|
|
import appFn = require('../../src/apps/default')
|
|
import { createApp } from './helper'
|
|
|
|
describe('default app', () => {
|
|
let server: express.Application
|
|
let app: Application
|
|
|
|
beforeEach(async () => {
|
|
app = createApp(appFn)
|
|
server = express()
|
|
server.use(app.router)
|
|
})
|
|
|
|
describe('GET /probot', () => {
|
|
it('returns a 200 response', () => {
|
|
return request(server).get('/probot').expect(200)
|
|
})
|
|
|
|
describe('get info from package.json', () => {
|
|
let cwd: string
|
|
beforeEach(() => {
|
|
cwd = process.cwd()
|
|
})
|
|
|
|
it('returns the correct HTML with values', async () => {
|
|
const actual = await request(server).get('/probot').expect(200)
|
|
expect(actual.text).toMatch('Welcome to probot')
|
|
expect(actual.text).toMatch('A framework for building GitHub Apps')
|
|
expect(actual.text).toMatch(/v\d+\.\d+\.\d+/)
|
|
})
|
|
|
|
it('returns the correct HTML without values', async () => {
|
|
process.chdir(__dirname)
|
|
const actual = await request(server).get('/probot').expect(200)
|
|
expect(actual.text).toMatch('Welcome to your Probot App')
|
|
})
|
|
|
|
afterEach(() => {
|
|
process.chdir(cwd)
|
|
})
|
|
})
|
|
})
|
|
|
|
describe('GET /', () => {
|
|
it('redirects to /probot', () => {
|
|
return request(server).get('/').expect(302).expect('location', '/probot')
|
|
})
|
|
})
|
|
})
|