Added json test

This commit is contained in:
Anatoliy Chakkaev 2013-03-19 14:05:38 +04:00
parent ab392a4e6b
commit aad21e916c
1 changed files with 36 additions and 0 deletions

36
test/json.test.js Normal file
View File

@ -0,0 +1,36 @@
var Schema = require('jugglingdb').Schema;
var should = require('should');
describe('JSON property', function() {
var schema, Model;
it('could be defined', function() {
schema = new Schema('memory');
Model = schema.define('Model', {propertyName: Schema.JSON});
var m = new Model;
m.should.have.property('propertyName');
should.not.exist(m.propertyName);
});
it('should accept JSON in constructor and return object', function() {
var m = new Model({
propertyName: '{"foo": "bar"}'
});
m.propertyName.should.be.an.Object;
m.propertyName.foo.should.equal('bar');
});
it('should accept object in setter and return object', function() {
var m = new Model;
m.propertyName = {"foo": "bar"};
m.propertyName.should.be.an.Object;
m.propertyName.foo.should.equal('bar');
});
it('should accept string in setter and return string', function() {
var m = new Model;
m.propertyName = '{"foo": "bar"}';
m.propertyName.should.be.a.String;
m.propertyName.should.equal('{"foo": "bar"}');
});
});