feat(content): function signatures + test cases
This commit is contained in:
@@ -12,6 +12,30 @@ categories:
|
||||
patterns:
|
||||
- backtracking
|
||||
|
||||
function_signature: "def basic_calculator_iv(expression: str, evalvars: list[str], evalints: list[int]) -> list[str]:"
|
||||
|
||||
test_cases:
|
||||
visible:
|
||||
- input: { expression: "e + 8 - a + 5", evalvars: ["e"], evalints: [1] }
|
||||
expected: ["-1*a", "14"]
|
||||
- input: { expression: "e - 8 + temperature - pressure", evalvars: ["e", "temperature"], evalints: [1, 12] }
|
||||
expected: ["-1*pressure", "5"]
|
||||
- input: { expression: "(e + 8) * (e - 8)", evalvars: [], evalints: [] }
|
||||
expected: ["1*e*e", "-64"]
|
||||
hidden:
|
||||
- input: { expression: "0", evalvars: [], evalints: [] }
|
||||
expected: []
|
||||
- input: { expression: "a * b", evalvars: [], evalints: [] }
|
||||
expected: ["1*a*b"]
|
||||
- input: { expression: "a * b * c", evalvars: ["a"], evalints: [2] }
|
||||
expected: ["2*b*c"]
|
||||
- input: { expression: "(a + b) * (a - b)", evalvars: [], evalints: [] }
|
||||
expected: ["1*a*a", "-1*b*b"]
|
||||
- input: { expression: "a + b + c", evalvars: ["a", "b", "c"], evalints: [1, 2, 3] }
|
||||
expected: ["6"]
|
||||
- input: { expression: "a * a * a - a * a + a - 1", evalvars: [], evalints: [] }
|
||||
expected: ["1*a*a*a", "-1*a*a", "1*a", "-1"]
|
||||
|
||||
description: |
|
||||
Given an expression such as `expression = "e + 8 - a + 5"` and an evaluation map such as `{"e": 1}` (given in terms of `evalvars = ["e"]` and `evalints = [1]`), return a list of tokens representing the **simplified expression**, such as `["-1*a","14"]`.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user