2008-10-03 04:26:23 +02:00
|
|
|
<?php
|
2009-03-22 23:58:18 +01:00
|
|
|
/**
|
|
|
|
* @package cms
|
|
|
|
* @subpackage tests
|
|
|
|
*/
|
2008-10-03 04:26:23 +02:00
|
|
|
class SecurityAdminTest extends FunctionalTest {
|
|
|
|
static $fixture_file = 'cms/tests/CMSMainTest.yml';
|
|
|
|
|
|
|
|
function testGroupExport() {
|
|
|
|
$this->session()->inst_set('loggedInAs', $this->idFromFixture('Member', 'admin'));
|
|
|
|
|
|
|
|
/* First, open the applicable group */
|
|
|
|
$this->get('admin/security/getitem?ID=' . $this->idFromFixture('Group','admin'));
|
|
|
|
$this->assertRegExp('/<input[^>]+id="Form_EditForm_Title"[^>]+value="Administrators"[^>]*>/',$this->content());
|
|
|
|
|
|
|
|
/* Then load the export page */
|
|
|
|
$this->get('admin/security//EditForm/field/Members/export');
|
2009-09-10 07:02:47 +02:00
|
|
|
$lines = preg_split('/\n/', $this->content());
|
2008-10-03 04:26:23 +02:00
|
|
|
|
2009-09-10 07:02:47 +02:00
|
|
|
$this->assertEquals(count($lines), 3, "Export with members has one content row");
|
|
|
|
$this->assertRegExp('/"","","admin@example.com"/', $lines[1], "Member values are correctly exported");
|
2008-10-03 04:26:23 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
function testEmptyGroupExport() {
|
|
|
|
$this->session()->inst_set('loggedInAs', $this->idFromFixture('Member', 'admin'));
|
|
|
|
|
|
|
|
/* First, open the applicable group */
|
|
|
|
$this->get('admin/security/getitem?ID=' . $this->idFromFixture('Group','empty'));
|
|
|
|
$this->assertRegExp('/<input[^>]+id="Form_EditForm_Title"[^>]+value="Empty Group"[^>]*>/',$this->content());
|
|
|
|
|
|
|
|
/* Then load the export page */
|
|
|
|
$this->get('admin/security//EditForm/field/Members/export');
|
2009-09-10 07:02:47 +02:00
|
|
|
$lines = preg_split('/\n/', $this->content());
|
2008-10-03 04:26:23 +02:00
|
|
|
|
2009-09-10 07:02:47 +02:00
|
|
|
$this->assertEquals(count($lines), 2, "Empty export only has header fields and an empty row");
|
|
|
|
$this->assertEquals($lines[1], '', "Empty export only has no content row");
|
2008-10-03 04:26:23 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
?>
|