import { Arr } from '@ephox/katamari';
import type { DieFn, NextFn } from '../pipe/Pipe';
import { Step } from './Step';
import type { TestLogs } from './TestLogs';
export const compose = (sab: Step, sbc: Step): Step =>
// don't Pipe them - assume that the base actions have already been piped
({
runStep: (a: A, next: NextFn, die: DieFn, logs: TestLogs): void =>
sab.runStep(a, (b: B, blogs) => sbc.runStep(b, next, die, blogs), die, logs)
});
/*
Code partly generated in GHCi:
:m + Data.List
:m + Control.Monad
putStrLn $ intercalate " |\n" $ (\n -> (\x -> "[" ++ x ++ ", Step]") $ intercalate ", " $ (\m -> "Step") <$> [1..n-1]) <$> [1..100]
*/
/* eslint-disable max-len */
export const sequence =
(steps:
[] |
[Step] |
[Step, Step] |
[Step, Step, Step] |
[Step, Step, Step, Step] |
[Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step] |
[Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step, Step