@@ -41,24 +41,14 @@ describe('relations - integration', function() {
4141 describe ( 'polymorphicHasMany' , function ( ) {
4242
4343 before ( function defineProductAndCategoryModels ( ) {
44- var Team = app . model (
45- 'Team' ,
46- { properties : { name : 'string' } ,
47- dataSource : 'db'
48- }
49- ) ;
50- var Reader = app . model (
51- 'Reader' ,
52- { properties : { name : 'string' } ,
53- dataSource : 'db'
54- }
55- ) ;
56- var Picture = app . model (
57- 'Picture' ,
58- { properties : { name : 'string' , imageableId : 'number' , imageableType : 'string' } ,
59- dataSource : 'db'
60- }
61- ) ;
44+ var Team = app . registry . createModel ( 'Team' , { name : 'string' } ) ;
45+ var Reader = app . registry . createModel ( 'Reader' , { name : 'string' } ) ;
46+ var Picture = app . registry . createModel ( 'Picture' ,
47+ { name : 'string' , imageableId : 'number' , imageableType : 'string' } ) ;
48+
49+ app . model ( Team , { dataSource : 'db' } ) ;
50+ app . model ( Reader , { dataSource : 'db' } ) ;
51+ app . model ( Picture , { dataSource : 'db' } ) ;
6252
6353 Reader . hasMany ( Picture , { polymorphic : { // alternative syntax
6454 as : 'imageable' , // if not set, default to: reference
@@ -684,15 +674,17 @@ describe('relations - integration', function() {
684674
685675 describe ( 'hasAndBelongsToMany' , function ( ) {
686676 beforeEach ( function defineProductAndCategoryModels ( ) {
687- var product = app . model (
688- 'product' ,
689- { properties : { id : 'string' , name : 'string' } , dataSource : 'db' }
690-
677+ var product = app . registry . createModel (
678+ 'product' ,
679+ { id : 'string' , name : 'string' }
691680 ) ;
692- var category = app . model (
681+ var category = app . registry . createModel (
693682 'category' ,
694- { properties : { id : 'string' , name : 'string' } , dataSource : 'db ' }
683+ { id : 'string' , name : 'string' }
695684 ) ;
685+ app . model ( product , { dataSource : 'db' } ) ;
686+ app . model ( category , { dataSource : 'db' } ) ;
687+
696688 product . hasAndBelongsToMany ( category ) ;
697689 category . hasAndBelongsToMany ( product ) ;
698690 } ) ;
@@ -807,17 +799,18 @@ describe('relations - integration', function() {
807799 describe ( 'embedsOne' , function ( ) {
808800
809801 before ( function defineGroupAndPosterModels ( ) {
810- var group = app . model (
811- 'group' ,
812- { properties : { name : 'string' } ,
813- dataSource : 'db' ,
814- plural : 'groups'
815- }
802+ var group = app . registry . createModel ( 'group' ,
803+ { name : 'string' } ,
804+ { plural : 'groups' }
816805 ) ;
817- var poster = app . model (
806+ app . model ( group , { dataSource : 'db' } ) ;
807+
808+ var poster = app . registry . createModel (
818809 'poster' ,
819- { properties : { url : 'string' } , dataSource : 'db ' }
810+ { url : 'string' }
820811 ) ;
812+ app . model ( poster , { dataSource : 'db' } ) ;
813+
821814 group . embedsOne ( poster , { as : 'cover' } ) ;
822815 } ) ;
823816
@@ -924,17 +917,18 @@ describe('relations - integration', function() {
924917 describe ( 'embedsMany' , function ( ) {
925918
926919 before ( function defineProductAndCategoryModels ( ) {
927- var todoList = app . model (
920+ var todoList = app . registry . createModel (
928921 'todoList' ,
929- { properties : { name : 'string' } ,
930- dataSource : 'db' ,
931- plural : 'todo-lists'
932- }
922+ { name : 'string' } ,
923+ { plural : 'todo-lists' }
933924 ) ;
934- var todoItem = app . model (
925+ app . model ( todoList , { dataSource : 'db' } ) ;
926+
927+ var todoItem = app . registry . createModel (
935928 'todoItem' ,
936- { properties : { content : 'string' } , dataSource : 'db' }
929+ { content : 'string' } , { forceId : false }
937930 ) ;
931+ app . model ( todoItem , { dataSource : 'db' } ) ;
938932 todoList . embedsMany ( todoItem , { as : 'items' } ) ;
939933 } ) ;
940934
@@ -1112,18 +1106,24 @@ describe('relations - integration', function() {
11121106 describe ( 'referencesMany' , function ( ) {
11131107
11141108 before ( function defineProductAndCategoryModels ( ) {
1115- var recipe = app . model (
1109+ var recipe = app . registry . createModel (
11161110 'recipe' ,
1117- { properties : { name : 'string' } , dataSource : 'db ' }
1111+ { name : 'string' }
11181112 ) ;
1119- var ingredient = app . model (
1113+ app . model ( recipe , { dataSource : 'db' } ) ;
1114+
1115+ var ingredient = app . registry . createModel (
11201116 'ingredient' ,
1121- { properties : { name : 'string' } , dataSource : 'db ' }
1117+ { name : 'string' }
11221118 ) ;
1123- var photo = app . model (
1119+ app . model ( ingredient , { dataSource : 'db' } ) ;
1120+
1121+ var photo = app . registry . createModel (
11241122 'photo' ,
1125- { properties : { name : 'string' } , dataSource : 'db ' }
1123+ { name : 'string' }
11261124 ) ;
1125+ app . model ( photo , { dataSource : 'db' } ) ;
1126+
11271127 recipe . referencesMany ( ingredient ) ;
11281128 // contrived example for test:
11291129 recipe . hasOne ( photo , { as : 'picture' , options : {
@@ -1460,31 +1460,41 @@ describe('relations - integration', function() {
14601460 describe ( 'nested relations' , function ( ) {
14611461
14621462 before ( function defineModels ( ) {
1463- var Book = app . model (
1463+ var Book = app . registry . createModel (
14641464 'Book' ,
1465- { properties : { name : 'string' } , dataSource : 'db' ,
1466- plural : 'books' }
1465+ { name : 'string' } ,
1466+ { plural : 'books' }
14671467 ) ;
1468- var Page = app . model (
1468+ app . model ( Book , { dataSource : 'db' } ) ;
1469+
1470+ var Page = app . registry . createModel (
14691471 'Page' ,
1470- { properties : { name : 'string' } , dataSource : 'db' ,
1471- plural : 'pages' }
1472+ { name : 'string' } ,
1473+ { plural : 'pages' }
14721474 ) ;
1473- var Image = app . model (
1475+ app . model ( Page , { dataSource : 'db' } ) ;
1476+
1477+ var Image = app . registry . createModel (
14741478 'Image' ,
1475- { properties : { name : 'string' } , dataSource : 'db' ,
1476- plural : 'images' }
1479+ { name : 'string' } ,
1480+ { plural : 'images' }
14771481 ) ;
1478- var Note = app . model (
1482+ app . model ( Image , { dataSource : 'db' } ) ;
1483+
1484+ var Note = app . registry . createModel (
14791485 'Note' ,
1480- { properties : { text : 'string' } , dataSource : 'db' ,
1481- plural : 'notes' }
1486+ { text : 'string' } ,
1487+ { plural : 'notes' }
14821488 ) ;
1483- var Chapter = app . model (
1489+ app . model ( Note , { dataSource : 'db' } ) ;
1490+
1491+ var Chapter = app . registry . createModel (
14841492 'Chapter' ,
1485- { properties : { name : 'string' } , dataSource : 'db' ,
1486- plural : 'chapters' }
1493+ { name : 'string' } ,
1494+ { plural : 'chapters' }
14871495 ) ;
1496+ app . model ( Chapter , { dataSource : 'db' } ) ;
1497+
14881498 Book . hasMany ( Page ) ;
14891499 Book . hasMany ( Chapter ) ;
14901500 Page . hasMany ( Note ) ;
0 commit comments