All files node.js

91.67% Statements 22/24
83.33% Branches 5/6
84.62% Functions 11/13
100% Lines 12/12
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24    5x   5x   5x 218x   3787x   126x   81x   96x   54x 5x   1781x   5x  
import { Node, } from 'game_grid';
 
const { column, row, node: gNode, id } = Node;
 
const defP = Object.assign({}, gNode(), { player: null });
 
export const node = (c, r, player = null) =>
    Object.assign({}, gNode(c, r), { player });
 
export const player = ({ player } = defP) => player;
 
export const copy = n => node(column(n), row(n), player(n));
 
export const setPlayer = p => n => node(column(n), row(n), p);
 
export const isFree = n => !!n && player(n) == null;
 
export const claim = p => n => isFree(n) ? setPlayer(p)(n) : n;
export const unClaim = n => setPlayer(null)(n);
 
export const samePlayer = n0 => n1 => player(n0) === player(n1);
 
export const sameID = a => b => id(a) === id(b);