From acd670bb2eefdf22711826007f0f100f0269a83e Mon Sep 17 00:00:00 2001 From: Omkarnath Parida Date: Sun, 3 Oct 2021 20:38:23 +0530 Subject: [PATCH] Added test cases for LongestPalindromicSubsequence --- .../LongestPalindromicSubsequence.js | 10 +--------- .../LongestPalindromicSubsequence.test.js | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+), 9 deletions(-) create mode 100644 Dynamic-Programming/tests/LongestPalindromicSubsequence.test.js diff --git a/Dynamic-Programming/LongestPalindromicSubsequence.js b/Dynamic-Programming/LongestPalindromicSubsequence.js index 00c4b2a89..c6281e80e 100644 --- a/Dynamic-Programming/LongestPalindromicSubsequence.js +++ b/Dynamic-Programming/LongestPalindromicSubsequence.js @@ -6,7 +6,7 @@ */ -const longestPalindromeSubsequence = function (s) { +export const longestPalindromeSubsequence = function (s) { const n = s.length const dp = new Array(n).fill(0).map(item => new Array(n).fill(0).map(item => 0)) @@ -29,11 +29,3 @@ const longestPalindromeSubsequence = function (s) { return dp[0][n - 1] } - -const main = () => { - console.log(longestPalindromeSubsequence('bbbab')) // 4 - console.log(longestPalindromeSubsequence('axbya')) // 3 - console.log(longestPalindromeSubsequence('racexyzcxar')) // 7 -} - -main() diff --git a/Dynamic-Programming/tests/LongestPalindromicSubsequence.test.js b/Dynamic-Programming/tests/LongestPalindromicSubsequence.test.js new file mode 100644 index 000000000..2176420a8 --- /dev/null +++ b/Dynamic-Programming/tests/LongestPalindromicSubsequence.test.js @@ -0,0 +1,19 @@ +import { longestPalindromeSubsequence } from '../LongestPalindromicSubsequence' + +describe('LongestPalindromicSubsequence', () => { + it('expects to return 0 as longest pallindromic subsequence', () => { + expect(longestPalindromeSubsequence('abcdefgh')).toBe(1) + }) + + it('expects to return 4 as longest pallindromic subsequence', () => { + expect(longestPalindromeSubsequence('bbbab')).toBe(4) + }) + + it('expects to return 2 as longest pallindromic subsequence', () => { + expect(longestPalindromeSubsequence('cbbd')).toBe(2) + }) + + it('expects to return 7 as longest pallindromic subsequence', () => { + expect(longestPalindromeSubsequence('racexyzcxar')).toBe(7) + }) +})