Skip to content

Make labeled tuple not need parens in display #5951

Make labeled tuple not need parens in display

Make labeled tuple not need parens in display #5951

GitHub Actions / Test Report failed Oct 14, 2024 in 0s

41 passed, 2 failed and 0 skipped

Tests failed

❌ junit_tests.xml

43 tests were completed in 0ms with 41 passed, 2 failed and 0 skipped.

Test suite Passed Failed Skipped Time
Dynamics 41✅ 2❌ 0ms

❌ Dynamics

Dynamics.Elaboration
  ✅ Single integer
  ✅ Empty hole
  ✅ Free variable
  ✅ Let expression
  ✅ Inconsistent binary operation
  ✅ Consistent if statement
  ✅ An unapplied function
  ✅ Application of function on free variable
  ✅ Inconsistent case statement
  ✅ Let expression for a function
  ✅ Function application with a deferred argument
  ✅ Labeled tuple elaboration
  ✅ Rearranged labeled tuple
  ✅ Singleton labeled tuple
  ❌ Singleton labeld tuple analysis adds label
	Alcotest assertion failure
Dynamics.LabeledTuple
  ✅ Singleton unlabeled
  ✅ Singleton labeled
  ✅ unlabeled remains same order
  ✅ fully labeled retains ordering
  ✅ Missing labels get added
  ✅ Present labels get reordered
  ✅ Partial labels get reordered
  ✅ Extra labels get reordered
  ✅ pair labeled, unlabled
  ✅ Independent label sets with some overlap
Dynamics.Statics
  ✅ Function with unknown param
  ✅ Function with known param
  ✅ Function with labeled param
  ✅ bifunction
  ✅ bifunction
  ✅ function application
  ✅ function deferral
  ✅ Typechecking fails for unlabeled variable being assigned to labeled tuple
  ✅ Typechecking fails for unlabeled variable being assigned to labeled tuple
  ✅ Assigning labeled tuple to variable
  ❌ Singleton Labled Tuple ascription in let
	Alcotest assertion failure
  ✅ Labeled tuple with multiple labels
Dynamics.Evaluator
  ✅ Integer literal
  ✅ Integer sum
  ✅ Labeled tuple projection
Dynamics.MakeTerm
  ✅ Singleton Labled Tuple ascription in let
  ✅ Assigning labeled tuple to variable
  ✅ Multiple labels in tuple

Annotations

Check failure on line 0 in junit_tests.xml

See this annotation in the file changed.

@github-actions github-actions / Test Report

Dynamics ► Dynamics.Elaboration ► Singleton labeld tuple analysis adds label

Failed test found in:
  junit_tests.xml
Error:
  Alcotest assertion failure
Raw output
Alcotest assertion failure
FAIL Singleton labeld tuple analysis adds label

   Expected: `{ ids = <opaque>; copied = <opaque>;
  term =
  (Let (
     { ids = <opaque>; copied = <opaque>;
       term =
       (Cast ({ ids = <opaque>; copied = <opaque>; term = (Var "x") },
          { ids = <opaque>; copied = <opaque>;
            term =
            (Parens
               { ids = <opaque>; copied = <opaque>;
                 term =
                 (Prod
                    [{ ids = <opaque>; copied = <opaque>;
                       term =
                       (TupLabel (
                          { ids = <opaque>; copied = <opaque>;
                            term = (Label "l") },
                          { ids = <opaque>; copied = <opaque>; term = String
                            }
                          ))
                       }
                      ])
                 })
            },
          { ids = <opaque>; copied = <opaque>; term = (Unknown Internal) }))
       },
     { ids = <opaque>; copied = <opaque>;
       term =
       (Parens
          { ids = <opaque>; copied = <opaque>;
            term =
            (Tuple
               [{ ids = <opaque>; copied = <opaque>; term = (String "a") }])
            })
       },
     { ids = <opaque>; copied = <opaque>; term = (Var "x") }))
  }'

   Received: `{ ids = <opaque>; copied = <opaque>;
  term =
  (Let ({ ids = <opaque>; copied = <opaque>; term = (Var "x") },
     { ids = <opaque>; copied = <opaque>;
       term =
       (Cast (
          { ids = <opaque>; copied = <opaque>;
            term =
            (FailedCast (
               { ids = <opaque>; copied = <opaque>; term = (String "a") },
               { ids = <opaque>; copied = <opaque>; term = String },
               { ids = <opaque>; copied = <opaque>;
                 term =
                 (Prod
                    [{ ids = <opaque>; copied = <opaque>;
                       term = (Unknown Internal) }
                      ])
                 }
               ))
            },
          { ids = <opaque>; copied = <opaque>;
            term =
            (Prod
               [{ ids = <opaque>; copied = <opaque>;
                  term = (Unknown Internal) }
                 ])
            },
          { ids = <opaque>; copied = <opaque>;
            term =
            (Parens
               { ids = <opaque>; copied = <opaque>;
                 term =
                 (Prod
                    [{ ids = <opaque>; copied = <opaque>;
                       term =
                       (TupLabel (
                          { ids = <opaque>; copied = <opaque>;
                            term = (Label "l") },
                          { ids = <opaque>; copied = <opaque>; term = String
                            }
                          ))
                       }
                      ])
                 })
            }
          ))
       },
     { ids = <opaque>; copied = <opaque>; term = (Var "x") }))
  }'

Check failure on line 0 in junit_tests.xml

See this annotation in the file changed.

@github-actions github-actions / Test Report

Dynamics ► Dynamics.Statics ► Singleton Labled Tuple ascription in let

Failed test found in:
  junit_tests.xml
Error:
  Alcotest assertion failure
Raw output
Alcotest assertion failure
FAIL Static Errors

   Expected: `[]'
   Received: `[(InHole
   (Common
      (Inconsistent
         Expectation {
           ana =
           { ids = <opaque>; copied = <opaque>;
             term =
             (Parens
                { ids = <opaque>; copied = <opaque>;
                  term =
                  (Prod
                     [{ ids = <opaque>; copied = <opaque>;
                        term =
                        (TupLabel (
                           { ids = <opaque>; copied = <opaque>;
                             term = (Label "l") },
                           { ids = <opaque>; copied = <opaque>; term = String
                             }
                           ))
                        }
                       ])
                  })
             };
           syn = { ids = <opaque>; copied = <opaque>; term = String }})))]'