@@ -409,6 +409,30 @@ describe('framework APIs', () => {
409
409
) . toEqual ( [ 'b(1)' ] )
410
410
} )
411
411
412
+ it ( 'isRegisteredModule' , ( ) => {
413
+ framework . registerModules ( {
414
+ foo : [ 'a' , 'b' ] ,
415
+ bar : [
416
+ { name : 'x' , args : [ 'string' ] } ,
417
+ { name : 'y' , args : [ 'number' ] }
418
+ ]
419
+ } )
420
+ expect ( framework . isRegisteredModule ( 'foo' ) ) . toBe ( true )
421
+ expect ( framework . isRegisteredModule ( 'bar' ) ) . toBe ( true )
422
+ expect ( framework . isRegisteredModule ( 'foo' , 'a' ) ) . toBe ( true )
423
+ expect ( framework . isRegisteredModule ( 'foo' , 'b' ) ) . toBe ( true )
424
+ expect ( framework . isRegisteredModule ( 'bar' , 'x' ) ) . toBe ( true )
425
+ expect ( framework . isRegisteredModule ( 'bar' , 'y' ) ) . toBe ( true )
426
+ expect ( framework . isRegisteredModule ( 'FOO' ) ) . toBe ( false )
427
+ expect ( framework . isRegisteredModule ( ' bar ' ) ) . toBe ( false )
428
+ expect ( framework . isRegisteredModule ( 'unknown' ) ) . toBe ( false )
429
+ expect ( framework . isRegisteredModule ( '#}{)=}' ) ) . toBe ( false )
430
+ expect ( framework . isRegisteredModule ( 'foo' , '' ) ) . toBe ( false )
431
+ expect ( framework . isRegisteredModule ( 'foo' , 'c' ) ) . toBe ( false )
432
+ expect ( framework . isRegisteredModule ( 'bar' , 'z' ) ) . toBe ( false )
433
+ expect ( framework . isRegisteredModule ( 'unknown' , 'unknown' ) ) . toBe ( false )
434
+ } )
435
+
412
436
it ( 'registerComponents' , ( ) => {
413
437
framework . registerComponents ( [ 'foo' , { type : 'bar' } , 'text' ] )
414
438
const instance = new Instance ( runtime )
@@ -431,6 +455,42 @@ describe('framework APIs', () => {
431
455
} )
432
456
} )
433
457
458
+ it ( 'isRegisteredComponent' , ( ) => {
459
+ framework . registerComponents ( [ 'foo' , { type : 'bar' } , 'text' ] )
460
+ expect ( framework . isRegisteredComponent ( 'foo' ) ) . toBe ( true )
461
+ expect ( framework . isRegisteredComponent ( 'bar' ) ) . toBe ( true )
462
+ expect ( framework . isRegisteredComponent ( 'text' ) ) . toBe ( true )
463
+ expect ( framework . isRegisteredComponent ( 'FOO' ) ) . toBe ( false )
464
+ expect ( framework . isRegisteredComponent ( ' bar ' ) ) . toBe ( false )
465
+ expect ( framework . isRegisteredComponent ( '<text>' ) ) . toBe ( false )
466
+ expect ( framework . isRegisteredComponent ( '#}{)=}' ) ) . toBe ( false )
467
+ } )
468
+
469
+ it ( 'weex.supports' , ( ) => {
470
+ framework . registerComponents ( [ 'apple' , { type : 'banana' } ] )
471
+ framework . registerModules ( {
472
+ cat : [ 'eat' , 'sleep' ] ,
473
+ dog : [
474
+ { name : 'bark' , args : [ 'string' ] }
475
+ ]
476
+ } )
477
+ expect ( framework . supports ( '@component/apple' ) ) . toBe ( true )
478
+ expect ( framework . supports ( '@component/banana' ) ) . toBe ( true )
479
+ expect ( framework . supports ( '@module/cat' ) ) . toBe ( true )
480
+ expect ( framework . supports ( '@module/cat.eat' ) ) . toBe ( true )
481
+ expect ( framework . supports ( '@module/cat.sleep' ) ) . toBe ( true )
482
+ expect ( framework . supports ( '@module/dog.bark' ) ) . toBe ( true )
483
+ expect ( framework . supports ( '@component/candy' ) ) . toBe ( false )
484
+ expect ( framework . supports ( '@module/bird' ) ) . toBe ( false )
485
+ expect ( framework . supports ( '@module/bird.sing' ) ) . toBe ( false )
486
+ expect ( framework . supports ( '@module/dog.sleep' ) ) . toBe ( false )
487
+ expect ( framework . supports ( 'apple' ) ) . toBe ( null )
488
+ expect ( framework . supports ( '<banana>' ) ) . toBe ( null )
489
+ expect ( framework . supports ( 'cat' ) ) . toBe ( null )
490
+ expect ( framework . supports ( '@dog' ) ) . toBe ( null )
491
+ expect ( framework . supports ( '@component/dog#bark' ) ) . toBe ( null )
492
+ } )
493
+
434
494
it ( 'vm.$getConfig' , ( ) => {
435
495
const instance = new Instance ( runtime )
436
496
instance . $create ( `
0 commit comments