HumHub Documentation (unofficial)

RunBefore extends Extension
in package

Extension for execution of some processes before running tests.

Processes can be independent and dependent. Independent processes run independently of each other. Dependent processes run sequentially one by one.

Can be configured in suite config:

# acceptance.suite.yml
extensions:
    enabled:
        - Codeception\Extension\RunBefore:
            - independent_process_1
            -
                - dependent_process_1_1
                - dependent_process_1_2
            - independent_process_2
            -
                - dependent_process_2_1
                - dependent_process_2_2

HINT: you can use different configurations per environment.

Table of Contents

Properties

$config  : mixed
$events  : mixed
$globalConfig  : mixed
$options  : mixed
$output  : mixed
$modules  : mixed
$processes  : array<string|int, array<string|int, mixed>>

Methods

__construct()  : mixed
_initialize()  : mixed
You can do all preparations here. No need to override constructor.
_reconfigure()  : mixed
Pass config variables that should be injected into global config.
getCurrentModuleNames()  : mixed
getDataDir()  : mixed
getGlobalConfig()  : mixed
getLogDir()  : mixed
getModule()  : mixed
getRootDir()  : mixed
getSubscribedEvents()  : array<string, string|array{0: string, 1: int}|array<int, array{0: string, 1?: int}>>
Returns an array of event names this subscriber wants to listen to.
getTestsDir()  : mixed
hasModule()  : mixed
receiveModuleContainer()  : mixed
runBefore()  : mixed
write()  : mixed
writeln()  : mixed
addProcessToMonitoring()  : mixed
checkProcesses()  : mixed
isRunning()  : mixed
processMonitoring()  : mixed
removeProcessFromMonitoring()  : mixed
runFollowingCommand()  : mixed
runProcess()  : Process
runProcesses()  : mixed

Properties

$events

protected static mixed $events = [\Codeception\Events::SUITE_BEFORE => 'runBefore']

$processes

private array<string|int, array<string|int, mixed>> $processes = []

Methods

__construct()

public __construct(mixed $config, mixed $options) : mixed
Parameters
$config : mixed
$options : mixed

_initialize()

You can do all preparations here. No need to override constructor.

public _initialize() : mixed

Also you can skip calling _reconfigure if you don't need to.

_reconfigure()

Pass config variables that should be injected into global config.

public _reconfigure([array<string|int, mixed> $config = [] ]) : mixed
Parameters
$config : array<string|int, mixed> = []

getCurrentModuleNames()

public getCurrentModuleNames() : mixed

getGlobalConfig()

public getGlobalConfig() : mixed

getModule()

public getModule(mixed $name) : mixed
Parameters
$name : mixed

getSubscribedEvents()

Returns an array of event names this subscriber wants to listen to.

public static getSubscribedEvents() : array<string, string|array{0: string, 1: int}|array<int, array{0: string, 1?: int}>>

The array keys are event names and the value can be:

  • The method name to call (priority defaults to 0)
  • An array composed of the method name to call and the priority
  • An array of arrays composed of the method names to call and respective priorities, or 0 if unset

For instance:

  • ['eventName' => 'methodName']
  • ['eventName' => ['methodName', $priority]]
  • ['eventName' => [['methodName1', $priority], ['methodName2']]]

The code must not depend on runtime state as it will only be called at compile time. All logic depending on runtime state must be put into the individual methods handling the events.

Return values
array<string, string|array{0: string, 1: int}|array<int, array{0: string, 1?: int}>>

hasModule()

public hasModule(mixed $name) : mixed
Parameters
$name : mixed

write()

protected write(mixed $message) : mixed
Parameters
$message : mixed

writeln()

protected writeln(mixed $message) : mixed
Parameters
$message : mixed

addProcessToMonitoring()

private addProcessToMonitoring(Process $process, array<string|int, string> $followingCommands) : mixed
Parameters
$process : Process
$followingCommands : array<string|int, string>

checkProcesses()

private checkProcesses() : mixed

processMonitoring()

private processMonitoring() : mixed

removeProcessFromMonitoring()

private removeProcessFromMonitoring(int $index) : mixed
Parameters
$index : int

runFollowingCommand()

private runFollowingCommand(array<string|int, string> $followingCommands) : mixed
Parameters
$followingCommands : array<string|int, string>

runProcesses()

private runProcesses() : mixed

        
On this page

Search results