This test in problem-specifications’ canonical_data.json does not test what the description claims it tests, at least to my eyes:
JSON of test "callbacks do not report already reported values"
{
"uuid": "ada17cb6-7332-448a-b934-e3d7495c13d3",
"description": "callbacks do not report already reported values",
"property": "react",
"input": {
"cells": [
{
"name": "input",
"type": "input",
"initial_value": 1
},
{
"name": "output",
"type": "compute",
"inputs": ["input"],
"compute_function": "inputs[0] + 1"
}
],
"operations": [
{
"type": "add_callback",
"cell": "output",
"name": "callback1"
},
{
"type": "set_value",
"cell": "input",
"value": 2,
"expect_callbacks": {
"callback1": 3
}
},
{
"type": "set_value",
"cell": "input",
"value": 3,
"expect_callbacks": {
"callback1": 4
}
}
]
},
"expected": {}
}
It looks like there is a missing step that would look like this:
{
"type": "set_value",
"cell": "input",
"value": 2,
"expect_callbacks_not_to_be_called": [ "callback1" ]
}
Since the test never checks to see if the callback is suppressed correctly.
Following this discussion on Github (+cc @senekor )