UNPKG

912 BJavaScriptView Raw
1// test extending a model
2
3var assert = require('assert');
4var after = require('after');
5
6var Model = require('../model');
7
8suite('Model#extend');
9
10var Post = Model({
11 title: String
12}, { url_root: '/foobar' });
13
14test('extending should work', function() {
15 var SuperPost = Post.extend();
16 SuperPost.url_root = '/foobaz';
17
18 assert.equal(Post.url_root, '/foobar');
19 assert.equal(SuperPost.url_root, '/foobaz');
20});
21
22test('extend with additional schema', function() {
23 var SuperPost = Post.extend({
24 summary: String
25 });
26
27 var post = SuperPost();
28
29 post.once('change title', function(val) {
30 assert.equal(val, 'foobar');
31 assert.equal(post.title, 'foobar');
32 });
33
34 post.once('change summary', function(val) {
35 assert.equal(val, 'foobaz');
36 assert.equal(post.summary, 'foobaz');
37 });
38
39 post.title = 'foobar';
40 post.summary = 'foobaz';
41});
42