4 require_once('ISSO/Register.php');
10 * @copyright Copyright ©2002 - 2007, Blue Static
14 class RegisterTest
extends UnitTestCase
16 public function testLoadModule()
18 $this->assertTrue(BSRegister
::LoadModule('Input') instanceof BSInput
);
21 public function testLoadBadModule()
23 BSRegister
::LoadModule('nonExistentModule');
27 public function testSetGetAppPath()
29 BSRegister
::SetAppPath(getcwd());
30 $this->assertEqual(getcwd() . DIRECTORY_SEPARATOR
, BSRegister
::GetAppPath());
33 public function testSetGetAppVersion()
35 BSRegister
::SetAppVersion('1.0-test');
36 $this->assertEqual('1.0-test', BSRegister
::GetAppVersion());
39 public function testSetGetApplication()
41 BSRegister
::SetApplication('ISSO Tests');
42 $this->assertEqual('ISSO Tests', BSRegister
::GetApplication());
45 public function testSetGetWebPath()
47 $path = DIRECTORY_SEPARATOR
. 'Server' . DIRECTORY_SEPARATOR
. 'htdocs' . DIRECTORY_SEPARATOR
. 'ISSO';
48 BSRegister
::SetWebPath($path);
49 $this->assertEqual($path . DIRECTORY_SEPARATOR
, BSRegister
::GetWebPath());
52 public function testSetGetDebug()
54 BSRegister
::SetDebug(true
);
55 $this->assertIdentical(true
, BSRegister
::GetDebug());
58 public function testDebugList()
60 $this->assertEqual('<select><option>Debug Notices (0)</option></select>', BSRegister
::GetDebugList());
62 BSRegister
::Debug('dbg');
63 $this->assertEqual('<select><option>Debug Notices (1)</option><option>--- dbg</option></select>', BSRegister
::GetDebugList());
66 public function testRegisterValue()
68 BSRegister
::Register('someKey', 'someValue');
70 $registry = BSRegister
::GetAll();
71 $this->assertEqual($registry['someKey'], 'someValue');
74 public function testGetAll()
76 BSRegister
::Register('test', 1);
77 $this->assertIsA(BSRegister
::GetAll(), 'array');
78 $this->assertEqual(sizeof(BSRegister
::GetAll()), 2);
81 public function testOverWriteRegister()
83 BSRegister
::Register('valueToOverWrite', 1);
84 BSRegister
::Register('valueToOverWrite', 2);
86 $this->assertEqual(1, BSRegister
::Get('valueToOverWrite'));
89 public function testGet()
91 BSRegister
::Register('testGet', 123);
92 $this->assertEqual(123, BSRegister
::Get('testGet'));
95 public function testUnregister()
97 BSRegister
::Register('testUnregister', 1);
98 BSRegister
::Unregister('testUnregister');
99 BSRegister
::Register('testUnregister', 2);
100 $this->assertNoErrors();
101 $this->assertEqual(2, BSRegister
::Get('testUnregister'));
104 public function testGetNoExist()
106 BSRegister
::Get('doesNotExist');
107 $this->assertError();
110 public function testUnregisterNoExist()
112 BSRegister
::Unregister('keyThatWontExist');
113 $this->assertError();
116 public function testGetType()
118 $input = BSRegister
::LoadModule('Input');
119 BSRegister
::Register('input', $input);
120 $this->assertReference($input, BSRegister
::GetType('Input'));
122 $this->assertEqual(null
, BSRegister
::GetType('Date'));
125 public function testRequiredModules()
127 BSRegister
::RequiredModules(array('Input'));
128 $this->assertNoErrors();
130 BSRegister
::RequiredModules(array('Input', 'Db'));
131 $this->assertError();
133 BSRegister
::RequiredModules(array('Date'));
134 $this->assertError();