Files
JavaScript/Dynamic-Programming/tests/LongestCommonSubsequence.test.js
Roland Hummel 86d333ee94 feat: Test running overhaul, switch to Prettier & reformat everything (#1407)
* chore: Switch to Node 20 + Vitest

* chore: migrate to vitest mock functions

* chore: code style (switch to prettier)

* test: re-enable long-running test

Seems the switch to Node 20 and Vitest has vastly improved the code's and / or the test's runtime!

see #1193

* chore: code style

* chore: fix failing tests

* Updated Documentation in README.md

* Update contribution guidelines to state usage of Prettier

* fix: set prettier printWidth back to 80

* chore: apply updated code style automatically

* fix: set prettier line endings to lf again

* chore: apply updated code style automatically

---------

Co-authored-by: github-actions <${GITHUB_ACTOR}@users.noreply.github.com>
Co-authored-by: Lars Müller <34514239+appgurueu@users.noreply.github.com>
2023-10-04 02:38:19 +05:30

37 lines
1.7 KiB
JavaScript

import { longestCommonSubsequence } from '../LongestCommonSubsequence'
describe('LongestCommonSubsequence', () => {
it('expects to return an empty string for empty inputs', () => {
expect(longestCommonSubsequence('', '')).toEqual(''.length)
expect(longestCommonSubsequence('aaa', '')).toEqual(''.length)
expect(longestCommonSubsequence('', 'bbb')).toEqual(''.length)
})
it('expects to return an empty string for inputs without a common subsequence', () => {
expect(longestCommonSubsequence('abc', 'deffgf')).toEqual(''.length)
expect(longestCommonSubsequence('de', 'ghm')).toEqual(''.length)
expect(longestCommonSubsequence('aupj', 'xyz')).toEqual(''.length)
})
it('expects to return the longest common subsequence, short inputs', () => {
expect(longestCommonSubsequence('abc', 'abc')).toEqual('abc'.length)
expect(longestCommonSubsequence('abc', 'abcd')).toEqual('abc'.length)
expect(longestCommonSubsequence('abc', 'ab')).toEqual('ab'.length)
expect(longestCommonSubsequence('abc', 'a')).toEqual('a'.length)
expect(longestCommonSubsequence('abc', 'b')).toEqual('b'.length)
expect(longestCommonSubsequence('abc', 'c')).toEqual('c'.length)
expect(longestCommonSubsequence('abd', 'abcd')).toEqual('abd'.length)
expect(longestCommonSubsequence('abd', 'ab')).toEqual('ab'.length)
expect(longestCommonSubsequence('abc', 'abd')).toEqual('ab'.length)
})
it('expects to return the longest common subsequence, medium-length inputs', () => {
expect(longestCommonSubsequence('bsbininm', 'jmjkbkjkv')).toEqual(
'b'.length
)
expect(longestCommonSubsequence('oxcpqrsvwf', 'shmtulqrypy')).toEqual(
'qr'.length
)
})
})