41 require_once(
"vendor/composer/vendor/autoload.php");
49 #[BackupGlobals(false)] 50 #[BackupStaticProperties(false)] 51 #[PreserveGlobalState(false)] 52 #[RunTestsInSeparateProcesses] 55 public function testPlusTask():
void 69 $t1 = $factory->createInstance(PlusJob::class);
70 $t1->setInput([
$a,
$b]);
73 $t2 = $factory->createInstance(PlusJob::class);
74 $t2->setInput([$t1,
$c]);
76 $this->assertTrue($t2->getOutputType()->equals(
new SingleType(IntegerValue::class)));
80 $finalValue = $taskManager->executeTask($t2,
new MockObserver());
81 $this->assertEquals($finalValue->getValue(), 6);
84 public function testValueWrapper():
void 87 $dic[Bucket::class] = (fn(
$c): BucketMock =>
new BucketMock());
90 $t = $factory->createInstance(PlusJob::class);
95 $finalValue = $taskManager->executeTask($t,
new MockObserver());
96 $this->assertEquals($finalValue->getValue(), 5);
99 public function testTypeCheck():
void 101 $this->expectException(InvalidArgumentException::class);
104 $dic[Bucket::class] = (fn(
$c): BucketMock =>
new BucketMock());
111 $t1 = $factory->createInstance(PlusJob::class);
112 $t1->setInput([
$a,
$b]);
115 public function testAggregation():
void 121 $list->setValue([1,
"hello", 3.0]);
124 $t1 = $factory->createInstance(ConcatenationJob::class);
125 $t1->setInput([$list]);
128 $this->assertEquals($output->getValue(),
"1, hello, 3");
131 public function testUnfoldTask():
void 141 $t0 = $factory->createInstance(PlusJob::class);
142 $t0->setInput([1, 1]);
145 $t1 = $factory->createInstance(PlusJob::class);
146 $t1->setInput([$t0, 2]);
149 $t25 = $factory->createInstance(PlusJob::class);
150 $t25->setInput([2, 2]);
153 $t2 = $factory->createInstance(PlusJob::class);
154 $t2->setInput([$t1, $t25]);
156 $this->assertTrue($t2->getOutputType()->equals(
new SingleType(IntegerValue::class)));
158 $list = $t2->unfoldTask();
159 $this->assertEquals($list, [$t2, $t1, $t0, $t25]);
164 $finalValue = $taskManager->executeTask($t2,
new MockObserver());
165 $this->assertEquals($finalValue->getValue(), 8);
Customizing of pimple-DIC for ILIAS.
Class BackgroundTaskTest.
$a
thx to https://mlocati.github.io/php-cs-fixer-configurator for the examples