scheduledNodeRepo = new FakeScheduledNodeRepository; $this->planRepo = new FakePlanRepository; $this->planRepo->create(new CreatePlanDto( name: 'testplan', user: new User(0, new EmailAddress('test@test.com')), )); $this->useCase = new CreateScheduledNode( $this->scheduledNodeRepo, $this->planRepo, ); } public function test_create_scheduled_node(): void { $scheduledNode = $this->useCase->execute( new CreateScheduledNodeRequest( date: new DateTimeImmutable('now'), planId: 0, ) ); $this->assertInstanceOf(ScheduledNode::class, $scheduledNode); $this->assertInstanceOf( ScheduledNodeRepository::class, $this->scheduledNodeRepo ); } public function test_scheduled_node_belongs_to_plan(): void { $scheduledNode = $this->useCase->execute( new CreateScheduledNodeRequest( date: new DateTimeImmutable('now'), planId: 0, ) ); $this->assertInstanceOf(Plan::class, $scheduledNode->getPlan()); } }