public function test_belongs_to() { MemoryStore::flush(); Page::delete_all(); User::delete_all(); $user = new User(); $user->email = "*****@*****.**"; $user->first_name = "Ben"; $user->last_name = "Copsey"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date(); $user->first_name = "Ben"; $user->save(); $page1 = new Page(); $page1->title = "This is page 1"; $page1->last_modified = new Date(); $page1->body = "This is the content"; $page1->url = "page-1"; $page1->author = $user; $page1->save(); FuzzyTest::assert_equal($page1->author_id, $user->id, "Author not set correctly"); $user->delete(); $page = Page::find_by_url('page-1'); FuzzyTest::assert_true(isset($page), "Page deleted when it should have been preserved"); FuzzyTest::assert_equal($page->author_id, 0, "Page deleted when it should have been preserved"); $user->save(); $page->author = $user; $page->save(); $matches = $user->pages; FuzzyTest::assert_equal(count($matches), 1, "Page count should be 1"); }
public function test_validation() { MemoryStore::flush(); UserLogin::delete_all(); User::delete_all(); $user = new User(); FuzzyTest::assert_false($user->validate(), "User write should fail because required properties were not set"); FuzzyTest::assert_true(key_exists("email", $user->validation_errors), "Email validation error not set"); FuzzyTest::assert_true(key_exists("password", $user->validation_errors), "Password validation error not set"); FuzzyTest::assert_true(key_exists("accepted_terms_and_conditions", $user->validation_errors), "Boolean validation error not set"); FuzzyTest::assert_true(key_exists("registration_date", $user->validation_errors), "Required validation error not set"); $user->accepted_terms_and_conditions = true; $user->validate(); FuzzyTest::assert_false(key_exists("accepted_terms_and_conditions", $user->validation_errors), "Boolean validation error erroneously set"); $user->email = "*****@*****.**"; $user->validate(); FuzzyTest::assert_false(key_exists("email", $user->validation_errors), "Email validation error erroneously set"); $user->password = "******"; $user->validate(); FuzzyTest::assert_false(key_exists("password", $user->validation_errors), "Password validation error erroneously set"); $user->registration_date = new Date(); $user->validate(); FuzzyTest::assert_false(key_exists("registration_date", $user->validation_errors), "Required validation error erroneously set"); $user->first_name = "Ben"; $user->last_name = "Copsey"; $user->validate(); FuzzyTest::assert_false(key_exists("first_name", $user->validation_errors), "Length validation error erroneously set"); FuzzyTest::assert_false(key_exists("last_name", $user->validation_errors), "Length validation error erroneously set"); FuzzyTest::assert_true($user->validate(), "Validate should succeed because required properties were set"); }
public function test_simple_write() { MemoryStore::flush(); UserLogin::delete_all(); User::delete_all(); $user = new User(); $user->email = "*****@*****.**"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date("2008-12-12"); $user->first_name = "Ben"; $user->last_name = "Copsey"; FuzzyTest::assert_true($user->write_new(), "Write should succeed because required properties were set"); $user = new User(); $user->email = "*****@*****.**"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date(); $user->first_name = "Ben"; $user->last_name = "Copsey"; FuzzyTest::assert_false($user->write_new(), "Write should fail because we have a duplicate for a unique property"); $user = new User(); $user->email = "*****@*****.**"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date(); $user->first_name = "Ben"; $user->last_name = "Copsey"; FuzzyTest::assert_true($user->save(), "Save should succeed as a write_new"); }
public function __construct() { MemoryStore::flush(); UserLogin::delete_all(); User::delete_all(); $user = new User(); $user->email = "*****@*****.**"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date(); $user->first_name = "Ben"; $user->last_name = "Copsey"; $user->save(); $user = new User(); $user->email = "*****@*****.**"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date(); $user->first_name = "Ben"; $user->last_name = "Copsey"; $user->save(); $user = new User(); $user->email = "*****@*****.**"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date(); $user->first_name = "Benjamus"; $user->last_name = "Copso"; $user->save(); Page::delete_all(); $page = new Page(); $page->title = "test page"; $page->url = "test-page"; $page->body = "thing"; $page->save(); $page = new Page(); $page->title = "test page 2"; $page->url = "test-page-2"; $page->body = "thing 2"; $page->save(); $page = new Page(); $page->title = "test page 3"; $page->url = "test-page-3"; $page->body = "thing 3"; $page->save(); }
public function __construct() { MemoryStore::flush(); Document::delete_all(); CustomDocument::delete_all(); User::delete_all(); $text = "This is the content of the file"; $file = new File(); $file->contents = $text; $file->write("/tmp/test.txt"); $user = new User(); $user->email = "*****@*****.**"; $user->password = "******"; $user->accepted_terms_and_conditions = true; $user->registration_date = new Date(); $user->first_name = "Ben"; $user->last_name = "Copsey"; $user->save(); }
public function __construct() { MemoryStore::flush(); Page::delete_all(); $page1 = new Page(); $page1->title = "This is page 1"; $page1->last_modified = new Date(); $page1->body = "This is the content"; $page1->url = "page-1"; $page1->save(); $page2 = new Page(); $page2->title = "This is page 2"; $page2->last_modified = new Date(); $page2->body = "This is the content for page 2"; $page2->url = "page-2"; $page2->save(); $page3 = new Page(); $page3->title = "This is page 3"; $page3->last_modified = new Date(); $page3->body = "This is the content for page 3"; $page3->url = "page-3"; $page3->save(); }
protected static function memcached_connect() { if (!MemoryStore::$use_memcache_store) { return false; } elseif (isset(MemoryStore::$shared_memcache_store)) { return true; } if (!extension_loaded('memcache')) { MemoryStore::$use_memcache_store = false; error_log("MEMCACHE: Cannot use memcache store because memcache extension is not loaded", 0); return false; } MemoryStore::$shared_memcache_store = new Memcache(); $connected_to_a_server = false; foreach (MemoryStore::$memcache_servers as $server) { if (MemoryStore::$shared_memcache_store->addServer($server['host'], $server['port'], true)) { //print_r(MemoryStore::$shared_memcache_store->getExtendedStats()); //Make sure server is up if (MemoryStore::$shared_memcache_store->getServerStatus($server['host'], $server['port']) !== 0) { $connected_to_a_server = true; } } } if (!$connected_to_a_server) { MemoryStore::$use_memcache_store = false; //Failed to connect to any servers error_log("MEMCACHE: Failed to connect to memcache store, will ignore for the rest of this request", 0); return false; } else { return true; } }
public function remove_from_memory_cache() { if (!$this->should_cache) { return false; } return MemoryStore::delete($this->identifier()); }
<?php define("SITE_PATH", "/Users/ben/Sites/fuzzyrecord"); define("DB_SERVER", "127.0.0.1"); define("DB_USER", ""); define("DB_PASSWORD", ""); define("DB_DATABASE", "fuzzy-record-test"); define("DB_TYPE", "pdo-mysql"); // valid options are 'pdo-mysql' and 'pdo-pgsql' MemoryStore::$use_in_memory_store = true; MemoryStore::$use_memcache_store = false; //MemoryStore::$memcache_servers = array(array("host" => '127.0.0.1', "port" => 11211)); // This is used by the Document and CustomDocument example classes define("DOCUMENT_SAVE_PATH", "/Users/ben/Sites/fuzzyrecord/htdocs/documents");