github-desktop/script/changelog/test/parser-test.ts
2019-01-03 13:08:19 -04:00

58 lines
2 KiB
TypeScript

import { findIssueRef } from '../parser'
describe('changelog/parser', () => {
describe('findIssueRef', () => {
it('detected fixes message at start of PR body', () => {
const body = `
Fixes #2314
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sollicitudin turpis
tempor euismod fermentum. Nullam hendrerit neque eget risus faucibus volutpat. Donec
ultrices, orci quis auctor ultrices, nulla lacus gravida lectus, non rutrum dolor
quam vel augue.`
expect(findIssueRef(body)).toBe(' #2314')
})
it('detects multiple fixed issues in PR body', () => {
const body = `
Fixes #2314
Fixes #1234
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sollicitudin turpis
tempor euismod fermentum. Nullam hendrerit neque eget risus faucibus volutpat. Donec
ultrices, orci quis auctor ultrices, nulla lacus gravida lectus, non rutrum dolor
quam vel augue.`
expect(findIssueRef(body)).toBe(' #2314 #1234')
})
it('handles colon after fixed message', () => {
const body = `
Pellentesque pellentesque finibus fermentum. Aenean eget semper libero.
Fixes: #2314
Nam malesuada augue vel velit vehicula suscipit. Nunc posuere, velit at sodales
malesuada, quam tellus rutrum orci, et tincidunt sem nunc non velit. Cras
placerat, massa vel tristique iaculis, urna nisl tristique nibh, eget luctus
nisl quam in metus.`
expect(findIssueRef(body)).toBe(' #2314')
})
it('handles closes syntax', () => {
const body = `
Closes: #2314
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer sollicitudin turpis
tempor euismod fermentum. Nullam hendrerit neque eget risus faucibus volutpat. Donec
ultrices, orci quis auctor ultrices, nulla lacus gravida lectus, non rutrum dolor
quam vel augue.`
expect(findIssueRef(body)).toBe(' #2314')
})
it('handles resolves syntax', () => {
const body = `This resolves #2314 and is totally wild`
expect(findIssueRef(body)).toBe(' #2314')
})
})
})