tester = $tester; } public function testBaseAvailability(): void { $this->tester->amOnPage('/'); $this->tester->seeResponseCodeIs(200); } /** * @dataProvider dataDateForm */ public function testDateForm(Example $example): void { $this->tester->amOnPage('/'); $this->tester->fillField("//input[@id='weather_form_date']", $example['fillField']); $this->tester->click('Send'); $this->tester->seeCurrentUrlEquals('/'); $this->tester->seeResponseCodeIs(200); $this->tester->see($example['see']); } protected function dataDateForm(): array { return [ [ 'fillField' => (new DateTime())->format('Y-m-d'), 'see' => 'градусов', ], [ 'fillField' => '9999-01-01', 'see' => 'Температура за указанный день не указана', ], ]; } public function testWeatherTable(): void { $this->tester->amOnPage('/'); $this->tester->see('Погода за последние 30 дней'); $this->tester->see('Дата', '//th'); $this->tester->see('Температура', '//th'); } }