3 require_once 'CiviTest/CiviUnitTestCase.php';
6 * Class CRM_Extension_InfoTest
8 class CRM_Extension_InfoTest
extends CiviUnitTestCase
{
9 public function setUp() {
14 public function tearDown() {
21 public function testGood_file() {
22 $this->file
= tempnam(sys_get_temp_dir(), 'infoxml-');
23 file_put_contents($this->file
, "<extension key='test.foo' type='module'><file>foo</file><typeInfo><extra>zamboni</extra></typeInfo></extension>");
25 $info = CRM_Extension_Info
::loadFromFile($this->file
);
26 $this->assertEquals('test.foo', $info->key
);
27 $this->assertEquals('foo', $info->file
);
28 $this->assertEquals('zamboni', $info->typeInfo
['extra']);
31 public function testBad_file() {
33 $this->file
= tempnam(sys_get_temp_dir(), 'infoxml-');
34 file_put_contents($this->file
, "<extension key='test.foo' type='module'>file>foo</file></extension>");
38 $info = CRM_Extension_Info
::loadFromFile($this->file
);
39 } catch (CRM_Extension_Exception
$e) {
42 $this->assertTrue(is_object($exc));
45 public function testGood_string() {
46 $data = "<extension key='test.foo' type='module'><file>foo</file><typeInfo><extra>zamboni</extra></typeInfo></extension>";
48 $info = CRM_Extension_Info
::loadFromString($data);
49 $this->assertEquals('test.foo', $info->key
);
50 $this->assertEquals('foo', $info->file
);
51 $this->assertEquals('zamboni', $info->typeInfo
['extra']);
54 public function testBad_string() {
56 $data = "<extension key='test.foo' type='module'>file>foo</file></extension>";
60 $info = CRM_Extension_Info
::loadFromString($data);
61 } catch (CRM_Extension_Exception
$e) {
64 $this->assertTrue(is_object($exc));