Code coverage report for lib/rider.js

Statements: 92.31% (60 / 65)      Branches: 96.3% (26 / 27)      Functions: 100% (5 / 5)      Lines: 92.31% (60 / 65)      Ignored: none     

All files » lib/ » rider.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107  1   1       1 1     1 26623   1 1 13029                     13029 857579 4243581   13029 13029 13029   13029 13029 13029   36917 36917   25120 25120 25120   25120 25120 25120   122137 122137   98249 98249 98249   98249 98249 98249   470205 470205   371956 371956 371956   422891 422891 422891   422891               422891 422891 422891 422891   422891 422891 422891   422891 422891   421659 421659 421659   421659 421659   11797       1 26623    
"use strict";
Object.defineProperties(exports, {
  Rider: {get: function() {
      return Rider;
    }},
  __esModule: {value: true}
});
var Point = require('./point').Point;
var $__1 = require('./mobility'),
    Mobility = $__1.Mobility,
    quadrants = $__1.quadrants;
var RiderMobility = function RiderMobility() {
  $traceurRuntime.defaultSuperCall(this, $RiderMobility.prototype, arguments);
};
var $RiderMobility = RiderMobility;
($traceurRuntime.createClass)(RiderMobility, {adjacentPoints: $traceurRuntime.initGeneratorFunction(function $__8(position, p0) {
    var $__7,
        m,
        n,
        $__5,
        $__6,
        o,
        $__3,
        $__4,
        p1,
        r,
        pN;
    return $traceurRuntime.createGeneratorInstance(function($ctx) {
      while (true)
        switch ($ctx.state) {
          case 0:
            $__7 = this, m = $__7.m, n = $__7.n;
            $ctx.state = 34;
            break;
          case 34:
            $__5 = [new Point(m, n), new Point(n, m)][$traceurRuntime.toProperty(Symbol.iterator)]();
            $ctx.state = 3;
            break;
          case 3:
            $ctx.state = (!($__6 = $__5.next()).done) ? 29 : -2;
            break;
          case 29:
            o = $__6.value;
            $ctx.state = 30;
            break;
          case 30:
            $__3 = quadrants[$traceurRuntime.toProperty(Symbol.iterator)]();
            $ctx.state = 2;
            break;
          case 2:
            $ctx.state = (!($__4 = $__3.next()).done) ? 25 : 3;
            break;
          case 25:
            p1 = $__4.value;
            $ctx.state = 26;
            break;
          case 26:
            r = 1;
            $ctx.state = 24;
            break;
          case 24:
            $ctx.state = (r < 8) ? 15 : 2;
            break;
          case 20:
            r++;
            $ctx.state = 24;
            break;
          case 15:
            $ctx.pushTry(13, null);
            $ctx.state = 16;
            break;
          case 16:
            throw undefined;
            $ctx.state = 18;
            break;
          case 18:
            $ctx.popTry();
            $ctx.state = 20;
            break;
          case 13:
            $ctx.popTry();
            pN = $ctx.storedException;
            $ctx.state = 11;
            break;
          case 11:
            pN = p0.sum(p1.product(o.product(new Point(r, r))));
            $ctx.state = 12;
            break;
          case 12:
            $ctx.state = 5;
            return pN;
          case 5:
            $ctx.maybeThrow();
            $ctx.state = 7;
            break;
          case 7:
            $ctx.state = (position.pieceByCoords(pN) != null) ? 2 : 20;
            break;
          default:
            return $ctx.end();
        }
    }, $__8, this);
  })}, {}, Mobility);
function Rider(m, n) {
  this.mobility.push(new RiderMobility(m, n));
}