From 20e1bb12ba105af046fb103ce2c534b901a05a1f Mon Sep 17 00:00:00 2001 From: Angie Byron Date: Mon, 3 Aug 2009 22:18:59 +0000 Subject: #339406 by dropcube and boombatower: Add an assertion to check if a checkbox is checked. --- modules/simpletest/drupal_web_test_case.php | 30 +++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'modules/simpletest/drupal_web_test_case.php') diff --git a/modules/simpletest/drupal_web_test_case.php b/modules/simpletest/drupal_web_test_case.php index 6df78fbf2..4af15d36a 100644 --- a/modules/simpletest/drupal_web_test_case.php +++ b/modules/simpletest/drupal_web_test_case.php @@ -2360,6 +2360,36 @@ class DrupalWebTestCase extends DrupalTestCase { return $this->assertNoFieldByXPath($this->constructFieldXpath('id', $id), $value, $message ? $message : t('Did not find field by id @id', array('@id' => $id)), t('Browser')); } + /** + * Assert that a checkbox field in the current page is checked. + * + * @param $id + * Id of field to assert. + * @param $message + * Message to display. + * @return + * TRUE on pass, FALSE on fail. + */ + protected function assertFieldChecked($id, $message = '') { + $elements = $this->xpath('//input[@id="' . $id . '"]'); + return $this->assertTrue(isset($elements[0]) && !empty($elements[0]['checked']), $message ? $message : t('Checkbox field @id is checked.', array('@id' => $id)), t('Browser')); + } + + /** + * Assert that a checkbox field in the current page is not checked. + * + * @param $id + * Id of field to assert. + * @param $message + * Message to display. + * @return + * TRUE on pass, FALSE on fail. + */ + protected function assertNoFieldChecked($id, $message = '') { + $elements = $this->xpath('//input[@id="' . $id . '"]'); + return $this->assertTrue(isset($elements[0]) && empty($elements[0]['checked']), $message ? $message : t('Checkbox field @id is not checked.', array('@id' => $id)), t('Browser')); + } + /** * Assert that a field exists with the given name or id. * -- cgit v1.2.3