• Jump To … +
    data.js dentaku.normal.js env.js evaluator.js fileio.js list.js monad.js monad_transformer.js pair.js parser.js pprinter.js string.js turing.js chap01.spec.js chap02.spec.js chap03.spec.js chap04.spec.js chap05.spec.js chap06.spec.js chap07.spec.js chap08.spec.js data.spec.js dentaku.normal.spec.js evaluator.spec.js interpreter.spec.js list.spec.js monad.spec.js monad_transformer.spec.js pair.spec.js parser.spec.js pprinter.spec.js string.spec.js
  • pair.spec.js

  • ¶
    "use strict";
    
    var expect = require('expect.js');
    var Pair = require('../lib/pair.js');
    var List = require('../lib/list.js');
    var Data = require('../lib/data.js');
    
    
    describe('Pair', () => {
      var data = Pair.cons(1,2);
      it("match", (next) => {
        data.match({
          cons: (left, right) => {
            expect(
              left
            ).to.eql(
              1
            );
          }
        });
        next();
      });
      it("left", (next) => {
        expect(
          Pair.left(data)
        ).to.eql(
          1
        );
        next();
      });
      it("right", (next) => {
        expect(
          Pair.right(data)
        ).to.eql(
          2
        );
        next();
      });
    });