I’m running into the following failing test issue when attempting Part D of Hands-On Exercise #2: Testing the Translation Workflow.
3 passing (2s)
1 failing1) SayHelloGoodbye workflow
“before all” hook for “successfully completes French translation”:
Error: Timeout of 2000ms exceeded. For async tests and hooks, ensure “done()” is called; if returning a Promise, ensure it resolves. (/home/rgroves/dev/edu-102-typescript-code/exercises/testing-code/practice/src/mocha/workflows.test.ts)
at listOnTimeout (node:internal/timers:573:17)
at processTimers (node:internal/timers:514:7)
I found a possibly related thread here, but no resolution was given within. I had actually done similar to what the user David_Clark did in that thread, adding console.logs before and after the call to createTimeSkipping
, but the second log is never hit.
before(async () => {
console.log('Setting up test environment...');
testEnv = await TestWorkflowEnvironment.createTimeSkipping();
console.log('Test environment set up successfully.');
});
I noticed in the docs for createTimeSkipping
it states:
This environment will be powered by the Temporal Time Skipping Test Server (part of the Java SDK)
Which makes me wonder if I need to do anything explicitly with the Java SDK? My environment does have openjdk v21.0.7 installed.
Also see that the docs mention:
IMPORTANT: At this time, the Time Skipping Test Server is not supported on ARM platforms.
I’ve ruled that out as an issue though. Some details about my environment if helpful:
OS: Ubuntu 22.04.5 LTS via Windows 11 WSL2
CPU: x86_64 architecture
It looks like options can be passed that include a way specify a path to an EphemeralServerExecutable
. Is there a downloadable binary for this? Or can it somehow be built via the Temporal Java SDK?
Any guidance would be much appreciated.