11
22var AdaptableController = require ( "../src/Controllers/AdaptableController" ) . AdaptableController ;
33var FilesAdapter = require ( "../src/Adapters/Files/FilesAdapter" ) . default ;
4+ var FilesController = require ( "../src/Controllers/FilesController" ) . FilesController ;
5+
6+ var MockController = function ( options ) {
7+ AdaptableController . call ( this , options ) ;
8+ }
9+ MockController . prototype = Object . create ( AdaptableController . prototype ) ;
10+ MockController . prototype . constructor = AdaptableController ;
411
512describe ( "AdaptableController" , ( ) => {
6-
7- it ( "should instantiate an adapter from string in object" , ( done ) => {
8- var adapterPath = require ( 'path' ) . resolve ( "./spec/MockAdapter" ) ;
9- var controller = new AdaptableController ( {
10- adapter : adapterPath ,
11- key : "value" ,
12- foo : "bar"
13- } ) ;
14-
15- expect ( controller . adapter instanceof Object ) . toBe ( true ) ;
16- expect ( controller . options . key ) . toBe ( "value" ) ;
17- expect ( controller . options . foo ) . toBe ( "bar" ) ;
18- expect ( controller . adapter . options . key ) . toBe ( "value" ) ;
19- expect ( controller . adapter . options . foo ) . toBe ( "bar" ) ;
20- done ( ) ;
21- } ) ;
22-
23- it ( "should instantiate an adapter from string" , ( done ) => {
24- var adapterPath = require ( 'path' ) . resolve ( "./spec/MockAdapter" ) ;
25- var controller = new AdaptableController ( adapterPath ) ;
26-
27- expect ( controller . adapter instanceof Object ) . toBe ( true ) ;
28- done ( ) ;
29- } ) ;
30-
31- it ( "should instantiate an adapter from string that is module" , ( done ) => {
32- var adapterPath = require ( 'path' ) . resolve ( "./src/Adapters/Files/FilesAdapter" ) ;
33- var controller = new AdaptableController ( {
34- adapter : adapterPath
35- } ) ;
36-
37- expect ( controller . adapter instanceof FilesAdapter ) . toBe ( true ) ;
38- done ( ) ;
39- } ) ;
4013
41- it ( "should instantiate an adapter from function/Class" , ( done ) => {
42- var controller = new AdaptableController ( {
43- adapter : FilesAdapter
44- } ) ;
45- expect ( controller . adapter instanceof FilesAdapter ) . toBe ( true ) ;
14+ it ( "should use the provided adapter" , ( done ) => {
15+ var adapter = new FilesAdapter ( ) ;
16+ var controller = new FilesController ( adapter ) ;
17+ expect ( controller . adapter ) . toBe ( adapter ) ;
4618 done ( ) ;
4719 } ) ;
4820
49- it ( "should instantiate the default adapter from Class" , ( done ) => {
50- AdaptableController . setDefaultAdapter ( FilesAdapter ) ;
51- var controller = new AdaptableController ( ) ;
52- expect ( controller . adapter instanceof FilesAdapter ) . toBe ( true ) ;
21+ it ( "should throw when creating a new mock controller" , ( done ) => {
22+ var adapter = new FilesAdapter ( ) ;
23+ expect ( ( ) => {
24+ new MockController ( adapter ) ;
25+ } ) . toThrow ( ) ;
5326 done ( ) ;
5427 } ) ;
5528
56- it ( "should use the default adapter" , ( done ) => {
57- var adapter = new FilesAdapter ( ) ;
58- AdaptableController . setDefaultAdapter ( adapter ) ;
59- var controller = new AdaptableController ( ) ;
60- expect ( controller . adapter ) . toBe ( adapter ) ;
29+ it ( "should fail to instantiate a controller with wrong adapter" , ( done ) => {
30+ function WrongAdapter ( ) { } ;
31+ var adapter = new WrongAdapter ( ) ;
32+ expect ( ( ) => {
33+ new FilesController ( adapter ) ;
34+ } ) . toThrow ( ) ;
6135 done ( ) ;
6236 } ) ;
6337
64- it ( "should use the provided adapter" , ( done ) => {
65- var adapter = new FilesAdapter ( ) ;
66- var controller = new AdaptableController ( adapter ) ;
67- expect ( controller . adapter ) . toBe ( adapter ) ;
38+ it ( "should fail to instantiate a controller without an adapter" , ( done ) => {
39+ expect ( ( ) => {
40+ new FilesController ( ) ;
41+ } ) . toThrow ( ) ;
6842 done ( ) ;
6943 } ) ;
7044} ) ;
0 commit comments