| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- var chai = require('chai')
- , expect = chai.expect
- , sinon = require('sinon')
- , sinonChai = require('sinon-chai')
- , proxyquire = require('proxyquire')
- ;
- chai.use(sinonChai);
- describe('Config model test', function () {
- var conn
- , app = new express()
- , Config = proxyquire(MODEL_DIR + '/config.js', {mongoose: mongoose})(app)
- ;
- before(function (done) {
- if (mongoUri) {
- // 基本的に mongoUri がセットされてたら、そのURIにはつながる前提
- conn = mongoose.createConnection(mongoUri, function(err) {
- if (err) {
- done(); // ここで skip したいなあ
- }
- Config = conn.model('Config');
- var fixture = [
- {ns: 'crowi', key: 'test:test', value: JSON.stringify('crowi test value')},
- {ns: 'crowi', key: 'test:test2', value: JSON.stringify(11111)},
- {ns: 'crowi', key: 'test:test3', value: JSON.stringify([1, 2, 3, 4, 5])},
- {ns: 'plugin', key: 'other:config', value: JSON.stringify('this is data')},
- ];
- testDBUtil.generateFixture(conn, 'Config', fixture, done);
- });
- }
- });
- beforeEach(function () {
- });
- after(function (done) {
- if (mongoUri) {
- testDBUtil.cleanUpDb(conn, 'Config', function(err, doc) {
- conn.close();
- done();
- });
- }
- });
- describe('.CONSTANTS', function () {
- it('Config has constants', function() {
- expect(Config.SECURITY_REGISTRATION_MODE_OPEN).to.have.string('Open');
- expect(Config.SECURITY_REGISTRATION_MODE_RESTRICTED).to.have.string('Resricted');
- expect(Config.SECURITY_REGISTRATION_MODE_CLOSED).to.have.string('Closed');
- });
- });
- describe('.loadAllConfig', function () {
- it('Get config array', function(done) {
- Config.loadAllConfig(function(err, config) {
- expect(config.crowi).to.be.an('Object');
- expect(config.crowi).to.have.property('test:test')
- .and.equal('crowi test value');
- expect(config.crowi).to.have.property('test:test2')
- .and.equal(11111);
- expect(config.crowi).to.have.property('test:test3')
- .and.to.be.instanceof(Array)
- .and.deep.equal([1, 2, 3, 4, 5]);
- expect(config.plugin).to.be.an('Object')
- .and.have.property('other:config')
- .and.equal('this is data');
- done();
- });
- });
- });
- });
|