@@ -607,6 +607,134 @@ mod tests {
607607 ) ;
608608 }
609609
610+ #[ test]
611+ fn test_get_suffix ( ) {
612+ let json = r#"
613+ {
614+ "name": "testrepo",
615+ "sources": {
616+ "dir": "src",
617+ "subdirs": true
618+ },
619+ "package-specs": [
620+ {
621+ "module": "es6",
622+ "in-source": true
623+ }
624+ ],
625+ "suffix": ".mjs"
626+ }
627+ "# ;
628+
629+ let config = serde_json:: from_str :: < Config > ( json) . unwrap ( ) ;
630+ assert_eq ! (
631+ config. get_suffix( & config. get_package_specs( ) . first( ) . unwrap( ) ) ,
632+ ".mjs"
633+ ) ;
634+ }
635+
636+ #[ test]
637+ fn test_dependencies ( ) {
638+ let json = r#"
639+ {
640+ "name": "testrepo",
641+ "sources": {
642+ "dir": "src",
643+ "subdirs": true
644+ },
645+ "package-specs": [
646+ {
647+ "module": "es6",
648+ "in-source": true
649+ }
650+ ],
651+ "suffix": ".mjs",
652+ "bs-dependencies": [ "@testrepo/main" ]
653+ }
654+ "# ;
655+
656+ let config = serde_json:: from_str :: < Config > ( json) . unwrap ( ) ;
657+ assert_eq ! ( config. bs_dependencies, Some ( vec![ "@testrepo/main" . to_string( ) ] ) ) ;
658+ }
659+
660+ #[ test]
661+ fn test_dependencies_alias ( ) {
662+ let json = r#"
663+ {
664+ "name": "testrepo",
665+ "sources": {
666+ "dir": "src",
667+ "subdirs": true
668+ },
669+ "package-specs": [
670+ {
671+ "module": "es6",
672+ "in-source": true
673+ }
674+ ],
675+ "suffix": ".mjs",
676+ "dependencies": [ "@testrepo/main" ]
677+ }
678+ "# ;
679+
680+ let config = serde_json:: from_str :: < Config > ( json) . unwrap ( ) ;
681+ assert_eq ! ( config. bs_dependencies, Some ( vec![ "@testrepo/main" . to_string( ) ] ) ) ;
682+ }
683+
684+ #[ test]
685+ fn test_dev_dependencies ( ) {
686+ let json = r#"
687+ {
688+ "name": "testrepo",
689+ "sources": {
690+ "dir": "src",
691+ "subdirs": true
692+ },
693+ "package-specs": [
694+ {
695+ "module": "es6",
696+ "in-source": true
697+ }
698+ ],
699+ "suffix": ".mjs",
700+ "bs-dev-dependencies": [ "@testrepo/main" ]
701+ }
702+ "# ;
703+
704+ let config = serde_json:: from_str :: < Config > ( json) . unwrap ( ) ;
705+ assert_eq ! (
706+ config. bs_dev_dependencies,
707+ Some ( vec![ "@testrepo/main" . to_string( ) ] )
708+ ) ;
709+ }
710+
711+ #[ test]
712+ fn test_dev_dependencies_alias ( ) {
713+ let json = r#"
714+ {
715+ "name": "testrepo",
716+ "sources": {
717+ "dir": "src",
718+ "subdirs": true
719+ },
720+ "package-specs": [
721+ {
722+ "module": "es6",
723+ "in-source": true
724+ }
725+ ],
726+ "suffix": ".mjs",
727+ "dev-dependencies": [ "@testrepo/main" ]
728+ }
729+ "# ;
730+
731+ let config = serde_json:: from_str :: < Config > ( json) . unwrap ( ) ;
732+ assert_eq ! (
733+ config. bs_dev_dependencies,
734+ Some ( vec![ "@testrepo/main" . to_string( ) ] )
735+ ) ;
736+ }
737+
610738 #[ test]
611739 fn test_check_if_rescript11_or_higher ( ) {
612740 assert_eq ! ( check_if_rescript11_or_higher( "11.0.0" ) , Ok ( true ) ) ;
0 commit comments