Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add testWorkflow to WorkflowResourceService #70

Merged
merged 4 commits into from
Nov 13, 2024

Added test, fixed request path, added registerWorkflowDef to Metadata…

7ff4598
Select commit
Loading
Failed to load commit list.
Sign in for the full log view
Merged

Add testWorkflow to WorkflowResourceService #70

Added test, fixed request path, added registerWorkflowDef to Metadata…
7ff4598
Select commit
Loading
Failed to load commit list.
GitHub Actions / Test report succeeded Nov 13, 2024 in 1s

80 passed, 0 failed and 0 skipped

Tests passed successfully

✅ reports/jest-junit.xml

80 tests were completed in 37s with 80 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
src/test/readme.test.ts 3✅ 12s
src/common/open-api/test/WorkflowResourceService.test.ts 1✅ 320ms
src/core/test/executor.test.ts 6✅ 723ms
src/core/test/MetadataClient.test.ts 3✅ 579ms
src/core/test/schedulerExecutor.test.ts 6✅ 6s
src/core/generators/test/generators.test.ts 12✅ 188ms
src/core/sdk/test/factory.test.ts 21✅ 2s
src/orkes/request/fetchCatchDns/test/DnsCache.test.ts 2✅ 98ms
src/orkes/request/fetchCatchDns/test/DnsResolver.test.ts 2✅ 411ms
src/orkes/request/fetchCatchDns/test/FetchCatchDns.test.ts 4✅ 734ms
src/task/tests/helpers.test.ts 3✅ 81ms
src/task/tests/Poller.test.ts 7✅ 4s
src/task/tests/TaskManager.test.ts 7✅ 8s
src/task/tests/TaskRunner.test.ts 2✅ 151ms
src/task/tests/TaskRunnerIntTest.test.ts 1✅ 2s

✅ src/test/readme.test.ts

TaskManager
  ✅ worker example
  ✅ update task example
  ✅ Should create and run a workflow that sums two numbers

✅ src/common/open-api/test/WorkflowResourceService.test.ts

WorkflowResourceService
  ✅ Should test a workflow

✅ src/core/test/executor.test.ts

Executor
  ✅ Should be able to register a workflow
  ✅ Should be able to start a workflow
  ✅ Should be able to execute workflow synchronously
  ✅ Should be able to get workflow execution status
  ✅ Should return workflow status detail
  ✅ Should execute a workflow with indempotency key

✅ src/core/test/MetadataClient.test.ts

MetadataClient
  ✅ Should register a task definition
  ✅ Should update a task definition
  ✅ Should unregister a task definition

✅ src/core/test/schedulerExecutor.test.ts

ScheduleExecutor
  ✅ Should be able to register a workflow and retrieve it
  ✅ Should be able to resume the schedule
  ✅ Should be able to see the result in executed schedule
  ✅ Should be able to pause the schedule
  ✅ Should be able to delete the schedule
  ✅ Should be able to retrieve  next (default 3) execution times for a scheduler

✅ src/core/generators/test/generators.test.ts

Generate › DoWhileTask
  ✅ Should generate a DoWhileTask with default values
  ✅ Should generate a DoWhileTask filling in the blanks for loopOver
Generate › SubWorkflowTask
  ✅ Should generate default input parameters
Generate › InlineTask › InputParameters 
  ✅ Should generate default inputParameters
  ✅ Should generate a javascript with defaults inputParameters
  ✅ Should generate the expression if passed javascript code
Generate › InlineTask
  ✅ Should generate an empty inline task
  ✅ Should generate an inline task with name, and javascript as code
Generate
  ✅ Should generate an empty workflow
  ✅ Should generate a workflow with 3 simple tasks
  ✅ Should generate a workflow and take into account nested tasks
  ✅ Should generate a workflow with a fork join and an additional join. result should only contain one join task

✅ src/core/sdk/test/factory.test.ts

doWhileTask
  ✅ Should generate a doWhile task
  ✅ Should generate the template for a common loop task
dynamicForkTask
  ✅ Should generate a dynamic task
eventTask
  ✅ Should generate an eventTask
  ✅ Should generate an sqsEvent task
  ✅ Should generate an conductorEventTask task
forkTask
  ✅ Should generate a fork task
  ✅ Should return a tuple with both fork and join
httpTask
  ✅ Should generate an http task
inlineTask
  ✅ Should generate inline task
joinTask
  ✅ Should generate join task
jsonJqTask
  ✅ Should generate jsonJqTask
  ✅ Should generate jsonJqTask
kafkaPublishTask
  ✅ Should generate kafkaPublishTask
setVariableTask
  ✅ Should generate setVariableTask
subWorkflowTask
  ✅ Should generate subWorkflowTask
switchTask
  ✅ Should generate switchTask
terminateTask
  ✅ Should generate terminateTask
wait
  ✅ Should generate waitTaskDuration
  ✅ Should generate waitTaskUntil
workflow
  ✅ Should generate a workflow with tasks

✅ src/orkes/request/fetchCatchDns/test/DnsCache.test.ts

dnsResolver
  ✅ Should resolve dns
  ✅ Should return empty if domain could not be resolved

✅ src/orkes/request/fetchCatchDns/test/DnsResolver.test.ts

dnsResolver
  ✅ should resolve dns
  ✅ Should return empty if domain could not be resolved

✅ src/orkes/request/fetchCatchDns/test/FetchCatchDns.test.ts

fetchCatchDns
  ✅ Should call original fetch if the target is an ip, no param modification
  ✅ Should call fetch with modified params if the target is a hostname that can be resolves
  ✅ Should use fetch directly if host could not be resolved
  ✅ Should call with cache if ETIMEDOUT throw exception but remove host from cache

✅ src/task/tests/helpers.test.ts

helpers
  ✅ Should return true if both options are equals
  ✅ Should return true if both options are equals
  ✅ Should return false if options are only equal in some properties

✅ src/task/tests/Poller.test.ts

Poller
  ✅ Should run the poll function once for each interval if concurrency is just one
  ✅ Should run the poll function 1 for each task. but handle two tasks concurrently
  ✅ Should be able to keep the poller with work if tasks take too long
  ✅ Should be able to change add concurrency dynamically
  ✅ Should be able to change remove concurrency dynamically
  ✅ Should be able to change the pollInterval
  ✅ Should get warning if unable to poll tasks after threshold

✅ src/task/tests/TaskManager.test.ts

TaskManager
  ✅ Should run workflow with worker
  ✅ On error it should call the errorHandler provided
  ✅ If no error handler provided. it should just update the task
  ✅ multi worker example
  ✅ Should not be able to startPolling if TaskManager has no workers
  ✅ Should not be able to startPolling if duplicate workers
  ✅ Updates single worker properties

✅ src/task/tests/TaskRunner.test.ts

✅ polls tasks
✅ Should set the task as failed if the task has an error

✅ src/task/tests/TaskRunnerIntTest.test.ts

TaskManager
  ✅ worker example