Skip to content

Commit 2963573

Browse files
committed
write more tests for the bsconfig aliases
1 parent cb72b39 commit 2963573

File tree

1 file changed

+128
-0
lines changed

1 file changed

+128
-0
lines changed

src/config.rs

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -552,6 +552,134 @@ mod tests {
552552
);
553553
}
554554

555+
#[test]
556+
fn test_get_suffix() {
557+
let json = r#"
558+
{
559+
"name": "testrepo",
560+
"sources": {
561+
"dir": "src",
562+
"subdirs": true
563+
},
564+
"package-specs": [
565+
{
566+
"module": "es6",
567+
"in-source": true
568+
}
569+
],
570+
"suffix": ".mjs"
571+
}
572+
"#;
573+
574+
let config = serde_json::from_str::<Config>(json).unwrap();
575+
assert_eq!(
576+
config.get_suffix(&config.get_package_specs().first().unwrap()),
577+
".mjs"
578+
);
579+
}
580+
581+
#[test]
582+
fn test_dependencies() {
583+
let json = r#"
584+
{
585+
"name": "testrepo",
586+
"sources": {
587+
"dir": "src",
588+
"subdirs": true
589+
},
590+
"package-specs": [
591+
{
592+
"module": "es6",
593+
"in-source": true
594+
}
595+
],
596+
"suffix": ".mjs",
597+
"bs-dependencies": [ "@testrepo/main" ]
598+
}
599+
"#;
600+
601+
let config = serde_json::from_str::<Config>(json).unwrap();
602+
assert_eq!(config.bs_dependencies, Some(vec!["@testrepo/main".to_string()]));
603+
}
604+
605+
#[test]
606+
fn test_dependencies_alias() {
607+
let json = r#"
608+
{
609+
"name": "testrepo",
610+
"sources": {
611+
"dir": "src",
612+
"subdirs": true
613+
},
614+
"package-specs": [
615+
{
616+
"module": "es6",
617+
"in-source": true
618+
}
619+
],
620+
"suffix": ".mjs",
621+
"dependencies": [ "@testrepo/main" ]
622+
}
623+
"#;
624+
625+
let config = serde_json::from_str::<Config>(json).unwrap();
626+
assert_eq!(config.bs_dependencies, Some(vec!["@testrepo/main".to_string()]));
627+
}
628+
629+
#[test]
630+
fn test_dev_dependencies() {
631+
let json = r#"
632+
{
633+
"name": "testrepo",
634+
"sources": {
635+
"dir": "src",
636+
"subdirs": true
637+
},
638+
"package-specs": [
639+
{
640+
"module": "es6",
641+
"in-source": true
642+
}
643+
],
644+
"suffix": ".mjs",
645+
"bs-dev-dependencies": [ "@testrepo/main" ]
646+
}
647+
"#;
648+
649+
let config = serde_json::from_str::<Config>(json).unwrap();
650+
assert_eq!(
651+
config.bs_dev_dependencies,
652+
Some(vec!["@testrepo/main".to_string()])
653+
);
654+
}
655+
656+
#[test]
657+
fn test_dev_dependencies_alias() {
658+
let json = r#"
659+
{
660+
"name": "testrepo",
661+
"sources": {
662+
"dir": "src",
663+
"subdirs": true
664+
},
665+
"package-specs": [
666+
{
667+
"module": "es6",
668+
"in-source": true
669+
}
670+
],
671+
"suffix": ".mjs",
672+
"dev-dependencies": [ "@testrepo/main" ]
673+
}
674+
"#;
675+
676+
let config = serde_json::from_str::<Config>(json).unwrap();
677+
assert_eq!(
678+
config.bs_dev_dependencies,
679+
Some(vec!["@testrepo/main".to_string()])
680+
);
681+
}
682+
555683
#[test]
556684
fn test_check_if_rescript11_or_higher() {
557685
assert_eq!(check_if_rescript11_or_higher("11.0.0"), Ok(true));

0 commit comments

Comments
 (0)