function differentSymbolsNaive(str) {
// write code here.
let countedCharacters = [];
const characters = str.split("");
characters.map((character) => {
countedCharacters.includes(character)? false: countedCharacters.push(character);
});
return countedCharacters.length;
}
/**
* Test Suite
*/
describe('differentSymbolsNaive()', () => {
it('returns count of unique characters', () => {
// arrange
const str = 'cabca';
// act
const result = differentSymbolsNaive(str);
// log
console.log("result: ", result);
// assert
expect(result).toBe(3);
});
it('returns count of empty string', () => {
// arrange
const str = '';
// act
const result = differentSymbolsNaive(str);
// log
console.log("result: ", result);
// assert
expect(result).toBe(0);
});
it('returns count of non standard characters mixed with numbers', () => {
// arrange
const str = '"4£$"2<';
// act
const result = differentSymbolsNaive(str);
// log
console.log("result: ", result);
// assert
expect(result).toBe(6);
});
});