text: 
  'use strict';
  
  var main = require('../package.json').main;
  var schedule = require('../' + main);
  
  module.exports = {
    "step defaults to 1": function(test) {
      var range = new schedule.Range(2, 6);
  
      test.equals(1, range.step);
  
      test.done();
    },
    "when step is 1": {
      "setUp": function(done) {
        this.range = new schedule.Range(2, 6, 1);
  
        done();
      },
      "includes start value": function(test) {
        test.ok(this.range.contains(2));
  
        test.done();
      },
      "includes end value": function(test) {
        test.ok(this.range.contains(6));
  
        test.done();
      },
      "includes value between start and end": function(test) {
        test.ok(this.range.contains(3));
  
        test.done();
      },
      "excludes values outside of start and end": function(test) {
        test.ok(!this.range.contains(1));
        test.ok(!this.range.contains(7));
  
        test.done();
      }
    },
    "when step > 1": {
      "setUp": function(done) {
        this.range = new schedule.Range(2, 6, 2);
  
        done();
      },
      "includes start value": function(test) {
        test.ok(this.range.contains(2));
  
        test.done();
      },
      "excludes end value": function(test) {
        test.ok(!this.range.contains(6));
  
        test.done();
      },
      "includes value between start and end that is evenly divisible by step": function(test) {
        test.ok(this.range.contains(4));
  
        test.done();
      },
      "excludes value between start and end that is not evenly divisible by step": function(test) {
        test.ok(!this.range.contains(5));
  
        test.done();
      },
      "excludes values outside of start and end": function(test) {
        test.ok(!this.range.contains(1));
        test.ok(!this.range.contains(7));
  
        test.done();
      }
    }
  
  };
  