mirror of
https://github.com/TheAlgorithms/JavaScript.git
synced 2025-07-04 07:29:47 +08:00

* 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>
37 lines
1.7 KiB
JavaScript
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
|
|
)
|
|
})
|
|
})
|