require("../env"); var vows = require("vows"), assert = require("assert"); var suite = vows.describe("d3.geo.equirectangular"); suite.addBatch({ "equirectangular": { topic: function() { return d3.geo.equirectangular(); }, "scale": { "defaults to 500 / 2π": function(projection) { assert.equal(projection.scale(), 500 / (2 * Math.PI)); }, "is coerced to a number": function(projection) { assert.strictEqual(projection.scale("400"), projection); assert.strictEqual(projection.scale(), 400); projection.scale(500 / (2 * Math.PI)); } }, "translate": { "defaults to [480, 250]": function(projection) { assert.deepEqual(projection.translate(), [480, 250]); }, "is coerced to two numbers": function(projection) { assert.strictEqual(projection.translate(["23", "141"]), projection); assert.strictEqual(projection.translate()[0], 23); assert.strictEqual(projection.translate()[1], 141); projection.translate([480, 250]); } }, "of San Francisco, CA": { "is at location [-122.446, 37.767]": function(projection) { assert.inDelta(projection.invert([310, 198]), [-122.446, 37.767], .5); }, "is at point [310, 198]": function(projection) { assert.inDelta(projection([-122.446, 37.767]), [310, 198], .5); } } } }); suite.export(module);