Move History

Fork Selected
  • Code
    function prime_checker (n) {
      if (n <= 1) return false; // negatives
      if (n % 2 === 0 && n > 2) return false; //if even, we can immediately say it's composite.
      const sq =  Math.sqrt(n)
      
      for (let i = 3; i<sq; i+= 2) {
        if (n % i == 0) return false;
      }
      return true;
    }
    Preloaded Code
    const chai = require("chai");
    const assert = chai.assert;
    chai.config.truncateThreshold=0;
    
    describe("Random Tests:", function() {
      function solution(n) {
        if (n === 1 || n === 0) return false;
        for(let i = 2; i < n; i++) {
          if(n % i === 0) return false;
        }
        return true;  
      }
      for (let i = 0; i < 100; i++) {
        let number = Math.floor(Math.random()*100000);
        if (i%Math.floor(Math.random()*10)===0 ){
          while (number){
            number = Math.floor(Math.random()*100000);
            if (solution(number)) break;
          }
        }
        assert.strictEqual(prime_checker(number), solution(number));
      }
    });
    Test Cases
    const chai = require("chai");
    const assert = chai.assert;
    chai.config.truncateThreshold=0;
    
    describe("Prime Checker", () => {
      it("returns true for primes", function(){
        assert.strictEqual(prime_checker(653), true);
        assert.strictEqual(prime_checker(5), true);
        assert.strictEqual(prime_checker(977), true);
        assert.strictEqual(prime_checker(997), true);
        assert.strictEqual(prime_checker(709), true);
      });    
      
      it('returns false for non-primes', () => {
        assert.strictEqual(prime_checker(654), false);
        assert.strictEqual(prime_checker(777), false);
        assert.strictEqual(prime_checker(125), false);
        assert.strictEqual(prime_checker(15), false);
      })
      
      it('returns false for 1 and 0', () => {
        assert.strictEqual(prime_checker(1), false);
        assert.strictEqual(prime_checker(0), false);
      })
      
    });
  • Test Cases
    • const chai = require("chai");
    • const assert = chai.assert;
    • chai.config.truncateThreshold=0;
    • describe("Example", function(){
    • it("test case", function(){
    • describe("Prime Checker", () => {
    • it("returns true for primes", function(){
    • assert.strictEqual(prime_checker(653), true);
    • assert.strictEqual(prime_checker(654), false);
    • assert.strictEqual(prime_checker(5), true);
    • assert.strictEqual(prime_checker(777), false);
    • assert.strictEqual(prime_checker(977), true);
    • assert.strictEqual(prime_checker(125), false);
    • assert.strictEqual(prime_checker(997), true);
    • assert.strictEqual(prime_checker(709), true);
    • });
    • it('returns false for non-primes', () => {
    • assert.strictEqual(prime_checker(654), false);
    • assert.strictEqual(prime_checker(777), false);
    • assert.strictEqual(prime_checker(125), false);
    • assert.strictEqual(prime_checker(15), false);
    • })
    • it('returns false for 1 and 0', () => {
    • assert.strictEqual(prime_checker(1), false);
    • assert.strictEqual(prime_checker(0), false);
    • });
    • })
    • });