feat: Ciphers/MorseCode Algorithm (#1315)

* [feat] New algorithm

* [test] Add new test for ParityOutlier.js

* [fix] Reset indentation

* [fix] Reset indentation

* [fix] Style changes

* fix: improve code efficiency and a glitch

* test: adds a new possible test case

* fix: style fix

* fix: delete redundant comments and else statements

* [fix] style fix

* feat: New algorithm

* fix: fixed custom code symbols

* test: add test for MorseCode

* test: add case with custom code symbols

* delete files from main branch

* fix: style fix

* fix: style fix

* fix: delete unnecessary quotes
This commit is contained in:
Arnold Zhou
2023-05-01 16:17:47 +10:00
committed by GitHub
parent e6df6ebad6
commit 331a4d26cf
2 changed files with 101 additions and 0 deletions

View File

@ -0,0 +1,16 @@
import { morse } from '../MorseCode'
describe('Testing morse function', () => {
it('should return an enciphered string with a given input string', () => {
expect(morse('Hello World!')).toBe('**** * *-** *-** --- *-- --- *-* *-** -** -*-*--')
expect(morse('1+1=2')).toBe('*---- *-*-* *---- -***- **---')
})
it('should leave symbols that does not have its corresponding morse representation', () => {
expect(morse('© 2023 GitHub, Inc.')).toBe('© **--- ----- **--- ***-- --* ** - **** **- -*** --**-- ** -* -*-* *-*-*-')
})
it('should be able to accept custom morse code symbols', () => {
expect(morse('Nodejs', '.', '|')).toBe('|. ||| |.. . .||| ...')
})
})