operation = new class() extends AbstractOperation { public function getResult(): ResultInterface { return new Result(); } public function process(): void { return; } }; } public function testConstructor(): void { $this->assertInstanceOf(Collection::class, $this->operation->getOperands()); } public function testOperands(): void { $operand = new class() implements OperandInterface { public function getResult(): ResultInterface { return new Result(); } }; $operands = new ArrayCollection(); $operands->add($operand); $this->operation->setOperands($operands); $this->assertEquals($operand, $this->operation->getOperands()->get(0)); } public function testResult() { $this->assertInstanceOf(ResultInterface::class, $this->operation->getResult()); } public function testProcess(): void { $this->assertEquals(null, $this->operation->process()); } }