@@ -491,7 +491,7 @@ z = 15
491
491
REQUIRE (15 == resolved->get_int (" item1.n.o.p" ));
492
492
}
493
493
494
- TEST_CASE (" (pending HC-78) fetch known value from delayed merge object" , " [!shouldfail] " ) {
494
+ TEST_CASE (" Fetch known value from delayed merge object" ) {
495
495
auto obj = parse_object (R"(
496
496
defaults {
497
497
a = 1
@@ -509,7 +509,7 @@ defaults {
509
509
REQUIRE (3 == obj->to_config ()->get_config (" item1" )->get_int (" b" ));
510
510
}
511
511
512
- TEST_CASE (" (peding HC-78) fail to fetch from delayed merge object needs full resolve" , " [!shouldfail] " ) {
512
+ TEST_CASE (" Fail to fetch from delayed merge object needs full resolve" ) {
513
513
auto obj = parse_object (R"(
514
514
defaults {
515
515
a = 1
@@ -674,15 +674,15 @@ TEST_CASE("optional override of object provided") {
674
674
REQUIRE_FALSE (resolved->has_path (" a.b" ));
675
675
}
676
676
677
- // TODO: Uncomment this test and write optionalUsedInArray when config::get_*_list are implemented: HC-75
678
- TEST_CASE (" pending HC-75: optional vanishes from array (pending)" , " [!shouldfail]" ) {
677
+ TEST_CASE (" optional vanishes from array" ) {
679
678
auto obj = parse_object (" { a : [ 1, 2, 3, ${?NOT_HERE} ] }" );
680
679
auto resolved = resolve (obj);
681
680
auto list = vector<int > {1 ,2 ,3 };
682
681
REQUIRE (list == resolved->get_int_list (" a" ));
683
682
}
684
683
685
- TEST_CASE (" subst self references (pending)" , " [!shouldfail]" ) {
684
+
685
+ TEST_CASE (" subst self references" ) {
686
686
SECTION (" subst self reference" ) {
687
687
auto obj = parse_object (" a=1, a=${a}" );
688
688
auto resolved = resolve (obj);
@@ -764,14 +764,6 @@ TEST_CASE("subst self references (pending)", "[!shouldfail]") {
764
764
REQUIRE (2u == resolved->get_int (" a" ));
765
765
}
766
766
767
- // TODO: this test legitimately fails: HC-76
768
- SECTION (" pending HC-76: subst self reference object middle of stack" , " [!shouldfail]" ) {
769
- auto obj = parse_object (" a={b=5}, a=${a}, a={c=6}" );
770
- auto resolved = resolve (obj);
771
- REQUIRE (5u == resolved->get_int (" a.b" ));
772
- REQUIRE (6u == resolved->get_int (" a.c" ));
773
- }
774
-
775
767
SECTION (" subst optional self reference middle of stack" ) {
776
768
auto obj = parse_object (" a=1, a=${?a}, a=2" );
777
769
auto resolved = resolve (obj);
@@ -867,19 +859,6 @@ TEST_CASE("subst self references (pending)", "[!shouldfail]") {
867
859
REQUIRE (3u == resolved->get_int (" foo.c" ));
868
860
}
869
861
870
- // TODO: these tests legitimately fail: HC-77
871
- SECTION (" pending HC-77: subst self reference multiple times" , " [!shouldfail]" ) {
872
- auto obj = parse_object (" a=1,a=${a},a=${a},a=${a}" );
873
- auto resolved = resolve (obj);
874
- REQUIRE (1u == resolved->get_int (" a" ));
875
- }
876
-
877
- SECTION (" pending HC-77: subst self reference in concat multiple times" , " [!shouldfail]" ) {
878
- auto obj = parse_object (" a=1,a=${a}x,a=${a}y,a=${a}z" );
879
- auto resolved = resolve (obj);
880
- REQUIRE (" 1xyz" == resolved->get_string (" a" ));
881
- }
882
-
883
862
SECTION (" subst self reference in array" ) {
884
863
// never "look back" from "inside" an array
885
864
bool thrown = false ;
@@ -892,4 +871,27 @@ TEST_CASE("subst self references (pending)", "[!shouldfail]") {
892
871
}
893
872
REQUIRE (thrown);
894
873
}
895
- }
874
+ }
875
+
876
+ TEST_CASE (" subst self references (pending)" , " [!shouldfail]" ) {
877
+ // TODO: this test legitimately fails: HC-76
878
+ SECTION (" pending HC-76: subst self reference object middle of stack" , " [!shouldfail]" ) {
879
+ auto obj = parse_object (" a={b=5}, a=${a}, a={c=6}" );
880
+ auto resolved = resolve (obj);
881
+ REQUIRE (5u == resolved->get_int (" a.b" ));
882
+ REQUIRE (6u == resolved->get_int (" a.c" ));
883
+ }
884
+
885
+ // TODO: these tests legitimately fail: HC-77
886
+ SECTION (" pending HC-77: subst self reference multiple times" , " [!shouldfail]" ) {
887
+ auto obj = parse_object (" a=1,a=${a},a=${a},a=${a}" );
888
+ auto resolved = resolve (obj);
889
+ REQUIRE (1u == resolved->get_int (" a" ));
890
+ }
891
+
892
+ SECTION (" pending HC-77: subst self reference in concat multiple times" , " [!shouldfail]" ) {
893
+ auto obj = parse_object (" a=1,a=${a}x,a=${a}y,a=${a}z" );
894
+ auto resolved = resolve (obj);
895
+ REQUIRE (" 1xyz" == resolved->get_string (" a" ));
896
+ }
897
+ }
0 commit comments