Move History

Fork Selected
  • Code
    function removeEveryThird(str) {
      return (str[0] || '') + str
        .slice(1)
        .replace(/(..)./g, '$1')
    }
    Test Cases
    const chai = require("chai");
    const assert = chai.assert;
    
    describe("Solution", function() {
      it("This test passes", function() {
        assert.strictEqual(removeEveryThird('hello world'), 'helo ord');
      });
      it("This test fails (fix code - not test)", function() {
        assert.strictEqual(removeEveryThird('how you doing'), 'howyo din');
      });
      it("This test fails (fix code - not test)", function() {
        assert.strictEqual(removeEveryThird('abc'), 'abc');
      });
      it("This test fails (fix code - not test)", function() {
        assert.strictEqual(removeEveryThird('1234 56789 10112314'), '123 578 11131');
      });
      it("This test fails (fix code - not test)", function() {
        assert.strictEqual(removeEveryThird(' 00111222'), ' 001122');
      });
    });
    
  • Code
    • function removeEveryThird(str) {
    • return str
    • .split('')
    • .filter((x, i) => i === 0 || i % 3)
    • .join('')
    • return (str[0] || '') + str
    • .slice(1)
    • .replace(/(..)./g, '$1')
    • }