text: 'use strict';
  
  /**
   * Module dependencies.
   */
  
  import { start } from './common.js';
  
  import { assertStrictEquals } from 'https://deno.land/std@0.98.0/node/assert.ts';
  import { describe, it } from "https://deno.land/x/test_suite@v0.7.0/mod.ts";
  
  const mongoose = start.mongoose;
  const Schema = mongoose.Schema;
  
  describe('schematype', function() {
    describe('boolean', function() {
      it('null default is permitted (gh-523)', function(done) {
        mongoose.deleteModel(/Test/);
        const s1 = new Schema({ b: { type: Boolean, default: null } });
        const M1 = mongoose.model('Test1', s1);
        const s2 = new Schema({ b: { type: Boolean, default: false } });
        const M2 = mongoose.model('Test2', s2);
        const s3 = new Schema({ b: { type: Boolean, default: true } });
        const M3 = mongoose.model('Test3', s3);
  
        const m1 = new M1;
        assertStrictEquals(null, m1.b);
        const m2 = new M2;
        assertStrictEquals(false, m2.b);
        const m3 = new M3;
        assertStrictEquals(true, m3.b);
        done();
      });
    });
  });
  