All pastes #709115 Raw Edit

Unnamed

public text v1 · immutable
#709115 ·published 2007-09-24 12:11 UTC
rendered paste body
<?php

//(string)$mode = 'default'; 
(string)$mode = 'single'; 

if($mode == 'single')  
{
	define('LIBDIR', './../../../lib');
	define('LOG4PHP_DIR', '../../../lib/Log4Php');
	define('DBUSER', 'root');
	define('DBPASS', '');
	define('DEFAULT_DB', 'goodstorm_www_v4');
	define('DBHOST', 'localhost');	
	define('LOG4PHP_CONFIGURATION', LIBDIR . '/../t/log4php.properties');
	require_once(LIBDIR. '/simpletest/unit_tester.php');
	include_once(LIBDIR. '/Db/Db.php.class');
	require_once(LIBDIR. '/Log4Php/LoggerManager.php');
	global $logger;
	(object)$logger =& LoggerManager::getLogger('TEST SUITE - ' . __FILE__);
	$logger->debug("Starting Test Run..");
}

if(file_exists(LIBDIR . '/../t/local_developer_config.php')) 
{
	include_once(LIBDIR . '/../t/local_developer_config.php');
}


include_once(LIBDIR .'/Album/Album.php.class');

class AlbumUnitTester extends UnitTestCase 
{


	function setUp() 
	{
		(object)$db = new Db( DBUSER, DBPASS, DEFAULT_DB );
		//insert temp data to album
		$res = $db->query("INSERT into albums values ('', '1', 'Sample SKU', 'Sample UPC','2','3','4')", array());
		
		
		global $new_album_id;
		$new_album_id = mysql_insert_id();
		
		//insert temp tracks
		$res = $db->query("INSERT into albums_tracks values ('', '$new_album_id', '1', '1','1','1')", array());
		$res = $db->query("INSERT into tracks_versions values ('', '1', '1', '1','1','title1', 'length 1', 'genre 1', 'image 1', 'play1', '10.5', 'preview 1', 'full 1', 'right 1' , 'language 1', 'parental 1', 'copyright 1', 'isrc 1')", array());
		
		
		$res = $db->query("INSERT into albums_tracks values ('', '$new_album_id', '2', '1','2', '2')", array());
		$res = $db->query("INSERT into tracks_versions values ('', '2', '1', '1','1','title2', 'length 2', 'genre 2', 'image 2', 'play2', '11.5', 'preview 2', 'full 2', 'right 2' , 'language 2', 'parental 2', 'copyright 2', 'isrc 2')", array());
	}



	function testConstructor() 
	{
	
		//echo __FILE__ . " TODO - ADD A setUp to create some test albums to test code with\n";
	
		
		global $new_album_id;
	
		(object)$db = new Db( DBUSER, DBPASS, DEFAULT_DB );
		(object)$album = new Album($db, $new_album_id);
	
		$this->assertIsA($album, 'Album','Not an Album class');
		$this->assertEqual($album->albumid,$new_album_id);
		$this->assertEqual($album->uid,1,'Not 1 as set');
		$this->assertEqual($album->SKU,'Sample SKU', 'Not a Sample SKU value');
		$this->assertEqual($album->upc,'Sample UPC', 'Not a Sample UPC value');
		$this->assertEqual($album->artistid,2, 'Not 2 as set');
		$this->assertEqual($album->vid,3, 'Not 3 as set');
		$this->assertEqual($album->downloads,4, 'Not 4 as set');
		
		$this->assertNotNull($album->AlbumTracks(),'array not created');
		$arrTest=$album->AlbumTracks();
		//print_r($arrTest);
		
		$this->assertEqual($arrTest[0][trackid] , '1', '');
		$this->assertEqual($arrTest[0][vid] , '1', '');
		$this->assertEqual($arrTest[0][uid] , '1', '');
		$this->assertEqual($arrTest[0][artistid] , '1', '');
		$this->assertEqual($arrTest[0][title] , 'title1', '');
		$this->assertEqual($arrTest[0][length] , 'length 1', '');
		$this->assertEqual($arrTest[0][genre] , 'genre 1', '');
		$this->assertEqual($arrTest[0][image] , 'image 1', '');
		$this->assertEqual($arrTest[0][playmode] , 'play1' , '');
		$this->assertEqual($arrTest[0][price] , '10.50', '');
		$this->assertEqual($arrTest[0][previewfile] , 'preview 1', '');
		$this->assertEqual($arrTest[0][fullfile] , 'full 1', '');
		$this->assertEqual($arrTest[0][rights] , 'right 1', '');
		$this->assertEqual($arrTest[0][language] , 'language 1', '');
		$this->assertEqual($arrTest[0][parental_advisory] , 'parental 1', '');
		$this->assertEqual($arrTest[0][copyright] , 'copyright 1', '');
		$this->assertEqual($arrTest[0][isrc] , 'isrc 1' , '');
		$this->assertEqual($arrTest[0][albumid] , $new_album_id, '');
		$this->assertEqual($arrTest[0][tracknum] , '1', '');
		$this->assertEqual($arrTest[0][discnum] , '1', '');

		$this->assertEqual($arrTest[1][trackid] , '2', '');
		$this->assertEqual($arrTest[1][vid] , '1', '');
		$this->assertEqual($arrTest[1][uid] , '1', '');
		$this->assertEqual($arrTest[1][artistid] , '1', '');
		$this->assertEqual($arrTest[1][title] , 'title2', '');
		$this->assertEqual($arrTest[1][length] , 'length 2', '');
		$this->assertEqual($arrTest[1][genre] , 'genre 2', '');
		$this->assertEqual($arrTest[1][image] , 'image 2', '');
		$this->assertEqual($arrTest[1][playmode] , 'play2' , '');
		$this->assertEqual($arrTest[1][price] , '11.50', '');
		$this->assertEqual($arrTest[1][previewfile] , 'preview 2', '');
		$this->assertEqual($arrTest[1][fullfile] , 'full 2', '');
		$this->assertEqual($arrTest[1][rights] , 'right 2', '');
		$this->assertEqual($arrTest[1][language] , 'language 2', '');
		$this->assertEqual($arrTest[1][parental_advisory] , 'parental 2', '');
		$this->assertEqual($arrTest[1][copyright] , 'copyright 2', '');
		$this->assertEqual($arrTest[1][isrc] , 'isrc 2' , '');
		$this->assertEqual($arrTest[1][albumid] , $new_album_id, '');
		$this->assertEqual($arrTest[1][tracknum] , '2', '');
		$this->assertEqual($arrTest[1][discnum] , '2', '');		
		
		(object)$failed_album = new Album($db, '999999999999999999');
		$this->assertNull($failed_album->albumid);
		
		//$album
		
		//Next to test is the AlbumTracks function :-)
		
				
	}	

	function tearDown() 
	{
		global $new_album_id;
		(object)$db = new Db( DBUSER, DBPASS, DEFAULT_DB );
        $res = $db->query("DELETE from albums "); // blow away all the albums
		$res = $db->query("DELETE from albums_tracks "); // blow away all the album_tracks
		$res = $db->query("DELETE from tracks_versions "); // blow away all the track_version
	}
}






if($mode == 'single') {
		
	(object)$t = new AlbumUnitTester();
	$t->run(new TextReporter());

}





?>