PennController for IBEX › Forums › Support › Timeout in Filled Inputs with failure test › Reply To: Timeout in Filled Inputs with failure test
July 4, 2023 at 4:01 pm
#10729
Participant
I have solved the problem by using a dummy timer from this thread: https://www.pcibex.net/forums/topic/controller-or-timer-conditional/
I would be happy to know if there can be any improvement in this code.
Here’s the solution:
// Practice Trials
Template("PracticePreambles.csv", (row) =>
newTrial(
"practice",
newTimer(300).start().wait(), //white screen before the trial
newText("Preamble", row.preamble)
.center()
.cssContainer({ "margin-right": "1em" })
.print(),
newTimer("hurry", 3000).start(),
newTimer("dummy", 1)
.callback(
newTextInput("answer")
.settings.before(getText("Preamble"))
.log("validate")
.lines(1)
.cssContainer("display", "flex")
.print()
.wait(
getTextInput("answer")
.test.text(/^(.{10,500})$/)
.failure(
newText("<b>Please write more.</b>")
.settings.color("red")
.print()
)
),
getTimer("hurry").stop()
)
.start(),
getTimer("hurry").wait()
// add timelimit
)
.log("Preamble", row.preamble) // add these three columns to the results lines of these Template-based trials
.log("Condition", row.condition)
.log("ItemNumber", row.itemnum)
);