Metadata
- Source
- FLUID-6428
- Type
- Bug
- Priority
- Major
- Status
- Open
- Resolution
- N/A
- Assignee
- Antranig Basman
- Reporter
- Antranig Basman
- Created
2019-11-19T11:49:10.592-0500 - Updated
2019-11-20T07:15:07.062-0500 - Versions
- N/A
- Fixed Versions
- N/A
- Component
-
- IoC System
Description
It looks like this is an issue that only appears in the in-progress branch implementing immutable options for FLUID-6426. The Syllabification enactor tests at https://github.com/fluid-project/infusion/blob/master/tests/framework-tests/preferences/js/SyllabificationEnactorTests.js#L293 contain some blocks which actually fail to resolve at all as a result of escaping issues:
combined: {
".flc-syllabification-injectWhenDisabled": "{that}.options.testOpts.injected.disabled.\.flc-syllabification-injectWhenDisabled",
".flc-syllabification-injectWhenEnabled": "{that}.options.testOpts.injected.disabled.\.flc-syllabification-injectWhenEnabled"
}
However, whilst they fail to resolve they now leave "mouse droppings" at the site where they are directed during initial observation, and {that}.options.testOptions.injected.disabled ends up with an mouse dropping of
"": undefined
It seems our modifications to the options evaluation workflow have hoisted the widespread ability to leave mouse droppings of "undefined" across the source of blocks into their target.
Comments
-
Antranig Basman commented
2019-11-20T07:14:47.865-0500 The first variety of this caused a failure during PanelsTests.js "FLUID-5203: support multiple text field sliders in one composite panel". The attempt to invoke
updateSliderAttributes: { "this": "{that}.container", method: "attr", args: [{ "min": "{that}.model.range.min", "max": "{that}.model.range.max", "step": "{that}.model.step", "type": "range", "value": "{that}.model.value", "aria-labelledby": "{that}.options.attrs.aria-labelledby", "aria-label": "{that}.options.attrs.aria-label" }] }
via
"onCreate.initSliderAttributes": "{that}.updateSliderAttributes",
caused a read of "{that}.options.attrs.aria-labelledby" which was undefined. The failure was in fluid.makeExpandStrategy's "deliverer" which attempted to set the undefined value explicitly in the target. We need a system both which freezes values after full observation, but also does not leave mouse dropping tracking in the target, even during observation.