/** * @covers LoggerApp::hasError */ public function testHasError() { $this->assertFalse(LoggerApp::hasError()); Factory::log()->error('error'); $this->assertTrue(LoggerApp::hasError()); $this->assertTrue(LoggerApp::hasError('error')); $this->assertFalse(LoggerApp::hasError('warn')); //Invalid tests $this->assertEmpty(LoggerApp::getErrors('xyz')); }
public function testDatabase() { LoggerApp::clear(); $this->assertFalse(LoggerApp::hasError(), LoggerApp::getLastError()); $defaultDb = Factory::database(); $this->assertNotNull($defaultDb); $this->assertFalse(LoggerApp::hasError(), LoggerApp::getLastError()); $types = array('pgsql' => 'MyFrameWork\\DataBase\\PgDataBase', 'mysql' => 'MyFrameWork\\DataBase\\MyDataBase'); $this->assertTrue(is_a($defaultDb, $types[DATABASE_DRIVER]), 'Invalid class'); $this->assertEquals($defaultDb, Factory::database()); $this->assertSame($defaultDb, Factory::database()); $this->assertNull(Factory::database(array('dbname' => 'testxyz'))); $this->assertTrue(LoggerApp::hasError(), 'Conexão inválida não gerou um erro'); $this->assertNull(Factory::database(array('driver' => 'testxyz'))); $this->assertNull(Factory::database(array('driver' => 'testxyz', 'dbname' => 'test'))); $this->assertNull(Factory::database(array('driver' => 'testxyz', 'dbname' => 'test', 'user' => 'test'))); foreach ($types as $driver => $database) { $db = Factory::database(array('driver' => $driver, 'dbname' => 'xyz', 'user' => 'xyz')); $this->assertNull($db); } }
/** * @covers DataBase::delete * @covers Database::select * @covers Database::selectOne */ public function testDelete() { $this->db->select('name', 'test'); $this->assertEquals(3, $this->db->rowCount()); $this->assertEquals(1, $this->db->delete('test', array('id' => 1))); $this->assertEmpty($this->db->selectOne('name', 'test', array('id' => 1))); $this->db->select('name', 'test'); $this->assertEquals(2, $this->db->rowCount()); $result = $this->db->select('*', 'test'); $this->assertEquals(0, $this->db->delete('test', array('id' => 0))); $this->assertFalse(LoggerApp::hasError(), LoggerApp::getLastError()); $this->assertEquals(0, $this->db->delete('testinvalid', array('xyz' => 1))); $this->assertTrue(LoggerApp::hasError(), 'Não gerou o erro esperado'); //Update without where $this->assertEquals(0, $this->db->delete('test', array())); }