assert_true(!empty($item->created)); $this->assert_true(!empty($item->updated)); } private function create_random_item() { $item = ORM::factory("item"); /* Set all required fields (values are irrelevant) */ $item->name = rand(); $item->type = "photo"; $item->left = 1; $item->right = 1; $item->level = 1; $item->parent_id = 1; $item->save(); return $item; } public function updating_doesnt_change_created_date_test() { $item = self::create_random_item(); // Force the creation date to something well known $db = Database::instance(); $db->query("UPDATE `items` SET `created` = 0 WHERE `id` = $item->id"); $db->query("UPDATE `items` SET `updated` = 0 WHERE `id` = $item->id"); $item->reload(); $item->title = "foo"; // force a change $item->save(); $this->assert_true(empty($item->created)); $this->assert_true(!empty($item->updated)); } public function updating_view_count_only_doesnt_change_updated_date_test() { $item = self::create_random_item(); $item->reload(); $this->assert_same(0, $item->view_count); // Force the updated date to something well known $db = Database::instance(); $db->query("UPDATE `items` SET `updated` = 0 WHERE `id` = $item->id"); $item->reload(); $item->view_count++; $item->save(); $this->assert_same(1, $item->view_count); $this->assert_true(empty($item->updated)); } }