- $this->assertGreaterThan(1, $alert = $crawler->filter('div.messages.success')->extract(['_text']));
- $this->assertContains('flashes.config.notice.tagging_rules_updated', $alert[0]);
+ $this->assertContains('flashes.config.notice.tagging_rules_updated', $crawler->filter('body')->extract(['_text'])[0]);
+
+ $editLink = $crawler->filter('.mode_edit')->last()->link();
+
+ $crawler = $client->click($editLink);
+ $this->assertEquals(302, $client->getResponse()->getStatusCode());
+ $this->assertContains('?tagging-rule=', $client->getResponse()->headers->get('location'));
+
+ $crawler = $client->followRedirect();
+
+ $form = $crawler->filter('button[id=tagging_rule_save]')->form();
+
+ $data = [
+ 'tagging_rule[rule]' => 'readingTime <= 30',
+ 'tagging_rule[tags]' => 'short reading',
+ ];
+
+ $client->submit($form, $data);
+
+ $this->assertEquals(302, $client->getResponse()->getStatusCode());
+
+ $crawler = $client->followRedirect();
+
+ $this->assertContains('flashes.config.notice.tagging_rules_updated', $crawler->filter('body')->extract(['_text'])[0]);
+
+ $this->assertContains('readingTime <= 30', $crawler->filter('body')->extract(['_text'])[0]);