How should our FR10 fixture-status mock reject a bad call?

HazelAli0223 · 1 Oct 2025, 21:49 UTC

Closed
HA
HazelAli0223
Our offline fixture-status mock returns true for everything. Even a misspelled call passes. What should it check?

21 replies

CA
CallumBennett0708
Replying to HazelAli0223

Make unknown calls fail instead of inventing a method for them, and match the documented argument and return shapes at the small interface your application actually uses

11 points
RI
RickShift
Replying to HazelAli0223

Does the screen distinguish no reading from a clear fixture?

21 points
RA
RachelBrooks0870
Replying to RickShift

Rick's distinction caught us in a screen review. Everything was green because the substitute only knew good news. We needed to see what the operator faced when nothing useful came back, not another successful pretend cycle.

13 points
TO
TobyArcher0405
Replying to CallumBennett0708

Give failures documented shapes too. Returning false for every failure can hide another parser mistake.

9 points
OM
OmarChen1187
Replying to TobyArcher0405

Toby, would you start with captured replies or the documentation? We have only a few examples on our teaching laptop, all successful.

8 points
HA
HazelAli0223
Replying to RickShift

Rick, no distinction yet. Programmer is adding explicit unavailable display cases. We have two captured successful replies.

9 points
TO
TobyArcher0405
Replying to OmarChen1187

Omar, use both, with their source and SDK version identified. Don't call constructed examples captures.

17 points
AM
AmaraBarnes0600
Replying to TobyArcher0405

Can someone taking over the teaching laptop find which examples are real and which were constructed, without opening every test file?

18 points
CA
CallumBennett0708
Replying to AmaraBarnes0600

Amara, put that beside the examples, and keep the mock narrow; building a cheerful substitute for the entire SDK is how you end up back at true for everything

23 points
RA
RachelBrooks0870
Replying to CallumBennett0708

I wouldn't make the screen tests too narrow, though. A stale last-good reading confused our reviewers more than a totally blank startup. Those are two different experiences for the person looking at it.

17 points
CA
CallumBennett0708
Replying to RachelBrooks0870

Narrow API, Rachel, not only one screen state; test the failed and stale cases through that same small interface

8 points
OM
OmarChen1187
Replying to TobyArcher0405

Thanks, Toby. That source label helps. I'd been calling our hand-built examples recordings, which is asking for confusion later.

8 points
HA
HazelAli0223
Replying to CallumBennett0708

Mock now rejects unknown methods and wrong arguments. Unexpected return shapes exercise the parser's unavailable path.

6 points
RI
RickShift
Replying to HazelAli0223

What does unavailable look like now?

14 points
RA
RachelBrooks0870
Replying to HazelAli0223

And Hazel, can a reviewer tell whether there has never been a valid reading or the latest request failed after one? That was the awkward bit in ours.

18 points
HA
HazelAli0223
Replying to RachelBrooks0870

Rick and Rachel, current status becomes unavailable; details show the last valid reading and its age, when one exists.

19 points
AM
AmaraBarnes0600
Replying to HazelAli0223

That sounds easier to hand over than a green state which secretly means yesterday, though I would still show it to somebody who has not helped design it.

7 points
TO
TobyArcher0405
Replying to HazelAli0223

Are delayed replies included, or only immediate returns?

25 points
OM
OmarChen1187
Replying to TobyArcher0405

Toby, that's the bit I'd struggle with. Our simple mock just answers when called. Would a controlled event queue be appropriate for an asynchronous interface?

8 points
HA
HazelAli0223
Replying to TobyArcher0405

Delay cases are next, Toby. Current tests cover calls and parsing only, not the physical fixture or robot.

21 points

Discussion closed

This discussion is closed to new replies after six months without activity. Last activity: .