assert_equal( 1, ORM::factory("item")->viewable()->where("id", $item->id)->count_all()); // We can't see the item when permissions are denied access::deny(Identity::everybody(), "view", $album); $this->assert_equal( 0, ORM::factory("item")->viewable()->where("id", $item->id)->count_all()); } public function validate_url_safe_test() { $input = new MockInput(); $input->value = "Ab_cd-ef-d9"; item::validate_url_safe($input); $this->assert_true(!isset($input->not_url_safe)); $input->value = "ab&cd"; item::validate_url_safe($input); $this->assert_equal(1, $input->not_url_safe); } public function convert_filename_to_slug_test() { $this->assert_equal("foo", item::convert_filename_to_slug("{[foo]}")); $this->assert_equal("foo-bar", item::convert_filename_to_slug("{[foo!@#!$@#^$@($!(@bar]}")); } private static function _create_random_item($album) { // Set all required fields (values are irrelevant) $item = ORM::factory("item"); $item->name = rand(); $item->type = "photo"; return $item->add_to_parent($album); } } class MockInput { function add_error($error, $value) { $this->$error = $value; } }