diff options
Diffstat (limited to 'spec/frontend/diffs/utils/diff_line_spec.js')
-rw-r--r-- | spec/frontend/diffs/utils/diff_line_spec.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/spec/frontend/diffs/utils/diff_line_spec.js b/spec/frontend/diffs/utils/diff_line_spec.js new file mode 100644 index 00000000000..adcb4a4433c --- /dev/null +++ b/spec/frontend/diffs/utils/diff_line_spec.js @@ -0,0 +1,30 @@ +import { pickDirection } from '~/diffs/utils/diff_line'; + +describe('diff_line utilities', () => { + describe('pickDirection', () => { + const left = { + line_code: 'left', + }; + const right = { + line_code: 'right', + }; + const defaultLine = { + left, + right, + }; + + it.each` + code | pick | line | pickDescription + ${'left'} | ${left} | ${defaultLine} | ${'the left line'} + ${'right'} | ${right} | ${defaultLine} | ${'the right line'} + ${'junk'} | ${left} | ${defaultLine} | ${'the default: the left line'} + ${'junk'} | ${right} | ${{ right }} | ${"the right line if there's no left line to default to"} + ${'right'} | ${left} | ${{ left }} | ${"the left line when there isn't a right line to match"} + `( + 'when provided a line and a line code `$code`, picks $pickDescription', + ({ code, line, pick }) => { + expect(pickDirection({ line, code })).toBe(pick); + }, + ); + }); +}); |