Move History

Fork Selected
  • Description

    that's called "thinking outside the box"

    Code
    dumbRockPaperScissors=(a,b)=>a==b?`Draw`:`Player ${(a.slice(0,1)!={'R':'P','P':'S','S':'R'}[b.slice(0,1)])+1} wins`
    
    Test Cases
    // Since Node 10, we're using Mocha.
    // You can use `chai` for assertions.
    const chai = require("chai");
    const assert = chai.assert;
    // Uncomment the following line to disable truncating failure messages for deep equals, do:
    // chai.config.truncateThreshold = 0;
    // Since Node 12, we no longer include assertions from our deprecated custom test framework by default.
    // Uncomment the following to use the old assertions:
    // const Test = require("@codewars/test-compat");
    
    describe('dumbRockPaperScissors', function() {
        it('returns "Draw" for Rock vs Rock', function() {
            assert.strictEqual(dumbRockPaperScissors('Rock', 'Rock'), 'Draw');
        });
    
        it('returns "Draw" for Paper vs Paper', function() {
            assert.strictEqual(dumbRockPaperScissors('Paper', 'Paper'), 'Draw');
        });
    
        it('returns "Draw" for Scissors vs Scissors', function() {
            assert.strictEqual(dumbRockPaperScissors('Scissors', 'Scissors'), 'Draw');
        });
    
        it('returns "Player 1 wins" for Rock vs Scissors', function() {
            assert.strictEqual(dumbRockPaperScissors('Rock', 'Scissors'), 'Player 1 wins');
        });
    
        it('returns "Player 1 wins" for Scissors vs Paper', function() {
            assert.strictEqual(dumbRockPaperScissors('Scissors', 'Paper'), 'Player 1 wins');
        });
    
        it('returns "Player 1 wins" for Paper vs Rock', function() {
            assert.strictEqual(dumbRockPaperScissors('Paper', 'Rock'), 'Player 1 wins');
        });
    
        it('returns "Player 2 wins" for Scissors vs Rock', function() {
            assert.strictEqual(dumbRockPaperScissors('Scissors', 'Rock'), 'Player 2 wins');
        });
    
        it('returns "Player 2 wins" for Paper vs Scissors', function() {
            assert.strictEqual(dumbRockPaperScissors('Paper', 'Scissors'), 'Player 2 wins');
        });
    
        it('returns "Player 2 wins" for Rock vs Paper', function() {
            assert.strictEqual(dumbRockPaperScissors('Rock', 'Paper'), 'Player 2 wins');
        });
    });
    
  • Code
    • dumbRockPaperScissors
    • =(a,b)=>
    • a==b?`Draw`:`Player ${(a!={'Rock':'Paper','Paper':'Scissors','Scissors':'Rock'}[b])+1} wins`
    • dumbRockPaperScissors=(a,b)=>a==b?`Draw`:`Player ${(a.slice(0,1)!={'R':'P','P':'S','S':'R'}[b.slice(0,1)])+1} wins`