Fixed
Pinned fields
Click on the next to a field label to start pinning.
Created September 5, 2014 at 9:22 PM
Updated September 8, 2014 at 10:37 PM
Resolved September 6, 2014 at 5:11 PM
BoxLang: Our new JVM Dynamic Language made by Ortus! Check it out: https://www.boxlang.io
Right now there is no way to label debug output, resulting in an overwhelming amount of data if you debug from many tests, or just debug lots of data.
It would be nice if the debug method accepted a label attribute, and either defaulted the label to the spec name [ possibly a compiled spec name in the case of describe(describe(describe(it()))) ], or included both, such as:
debug("foo", function(){ debug("bar", function(){ it("does stuff", function(){ debug(1, "my label"); }); }); });
It would be nice if the cfdump label attribute was set to "foo / bar / stuff - my label"
Implementation Update
The debug() now accepts a label argument which will be used to render out a custom label on the data snapshot. However, we also added the capability to auto-calculate labels that will be added to the label if no custom label is defined. The pattern of the label is the complete path to the spec even if you are nested within describe blocks. This works on BDD and xUnit approaches
This auto-calculation only works in synchronous mode, due to that async testing has no control of what spec is currently executing. Maybe investigate at a later point in time how a label can be taken from the thread scope instead
We also added a few other telemetry elements to the debug output for info purposes: timestamp, thread. This tells you the timestamp of the debug snapshot and the status of threads.