mirror of
https://github.com/silverstripe/silverstripe-framework
synced 2024-10-01 05:39:10 +02:00
MINOR Fixed SiteTreeTest and SiteTreePermissionsTest to work alongside subsites module (SiteTreeSubsites changes the canEdit() behaviour) (from r104798)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@112384 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
parent
689494d55e
commit
2341f3fdd3
@ -9,6 +9,10 @@
|
|||||||
class SiteTreePermissionsTest extends FunctionalTest {
|
class SiteTreePermissionsTest extends FunctionalTest {
|
||||||
static $fixture_file = "sapphire/tests/SiteTreePermissionsTest.yml";
|
static $fixture_file = "sapphire/tests/SiteTreePermissionsTest.yml";
|
||||||
|
|
||||||
|
protected $illegalExtensions = array(
|
||||||
|
'SiteTree' => array('SiteTreeSubsites')
|
||||||
|
);
|
||||||
|
|
||||||
static function set_up_once() {
|
static function set_up_once() {
|
||||||
SiteTreeTest::set_up_once();
|
SiteTreeTest::set_up_once();
|
||||||
|
|
||||||
|
@ -6,6 +6,10 @@
|
|||||||
class SiteTreeTest extends SapphireTest {
|
class SiteTreeTest extends SapphireTest {
|
||||||
static $fixture_file = 'sapphire/tests/SiteTreeTest.yml';
|
static $fixture_file = 'sapphire/tests/SiteTreeTest.yml';
|
||||||
|
|
||||||
|
protected $illegalExtensions = array(
|
||||||
|
'SiteTree' => array('SiteTreeSubsites')
|
||||||
|
);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @todo Necessary because of monolithic Translatable design
|
* @todo Necessary because of monolithic Translatable design
|
||||||
*/
|
*/
|
||||||
@ -102,20 +106,20 @@ class SiteTreeTest extends SapphireTest {
|
|||||||
$this->assertTrue($obj->doPublish());
|
$this->assertTrue($obj->doPublish());
|
||||||
|
|
||||||
$this->assertEquals('asdfasdf', DB::query("SELECT \"MetaTitle\" FROM \"SiteTree_Live\" WHERE \"ID\" = '$obj->ID'")->value());
|
$this->assertEquals('asdfasdf', DB::query("SELECT \"MetaTitle\" FROM \"SiteTree_Live\" WHERE \"ID\" = '$obj->ID'")->value());
|
||||||
|
|
||||||
$obj->MetaTitle = null;
|
$obj->MetaTitle = null;
|
||||||
$obj->write();
|
$obj->write();
|
||||||
$this->assertTrue($obj->doPublish());
|
$this->assertTrue($obj->doPublish());
|
||||||
|
|
||||||
$this->assertNull(DB::query("SELECT \"MetaTitle\" FROM \"SiteTree_Live\" WHERE \"ID\" = '$obj->ID'")->value());
|
$this->assertNull(DB::query("SELECT \"MetaTitle\" FROM \"SiteTree_Live\" WHERE \"ID\" = '$obj->ID'")->value());
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function testParentNodeCachedInMemory() {
|
function testParentNodeCachedInMemory() {
|
||||||
$parent = new SiteTree();
|
$parent = new SiteTree();
|
||||||
$parent->Title = 'Section Title';
|
$parent->Title = 'Section Title';
|
||||||
$child = new SiteTree();
|
$child = new SiteTree();
|
||||||
$child->Title = 'Page Title';
|
$child->Title = 'Page Title';
|
||||||
$child->setParent($parent);
|
$child->setParent($parent);
|
||||||
|
|
||||||
$this->assertType("SiteTree", $child->Parent);
|
$this->assertType("SiteTree", $child->Parent);
|
||||||
@ -125,7 +129,7 @@ class SiteTreeTest extends SapphireTest {
|
|||||||
function testParentModelReturnType() {
|
function testParentModelReturnType() {
|
||||||
$parent = new SiteTreeTest_PageNode();
|
$parent = new SiteTreeTest_PageNode();
|
||||||
$child = new SiteTreeTest_PageNode();
|
$child = new SiteTreeTest_PageNode();
|
||||||
|
|
||||||
$child->setParent($parent);
|
$child->setParent($parent);
|
||||||
$this->assertType('SiteTreeTest_PageNode', $child->Parent);
|
$this->assertType('SiteTreeTest_PageNode', $child->Parent);
|
||||||
}
|
}
|
||||||
@ -147,7 +151,7 @@ class SiteTreeTest extends SapphireTest {
|
|||||||
|
|
||||||
$checkSiteTree = DataObject::get_one("SiteTree", "\"URLSegment\" = 'get-one-test-page'");
|
$checkSiteTree = DataObject::get_one("SiteTree", "\"URLSegment\" = 'get-one-test-page'");
|
||||||
$this->assertEquals("V1", $checkSiteTree->Title);
|
$this->assertEquals("V1", $checkSiteTree->Title);
|
||||||
|
|
||||||
Versioned::set_reading_mode($oldMode);
|
Versioned::set_reading_mode($oldMode);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -166,16 +170,16 @@ class SiteTreeTest extends SapphireTest {
|
|||||||
$this->assertContains('Home', $stageChildren);
|
$this->assertContains('Home', $stageChildren);
|
||||||
$this->assertContains('Products', $stageChildren);
|
$this->assertContains('Products', $stageChildren);
|
||||||
$this->assertNotContains('Staff', $stageChildren);
|
$this->assertNotContains('Staff', $stageChildren);
|
||||||
|
|
||||||
$this->assertContains('Home', $liveChildren);
|
$this->assertContains('Home', $liveChildren);
|
||||||
$this->assertContains('Products', $liveChildren);
|
$this->assertContains('Products', $liveChildren);
|
||||||
$this->assertNotContains('Staff', $liveChildren);
|
$this->assertNotContains('Staff', $liveChildren);
|
||||||
|
|
||||||
$this->assertContains('Home', $allChildren);
|
$this->assertContains('Home', $allChildren);
|
||||||
$this->assertContains('Products', $allChildren);
|
$this->assertContains('Products', $allChildren);
|
||||||
$this->assertNotContains('Staff', $allChildren);
|
$this->assertNotContains('Staff', $allChildren);
|
||||||
}
|
}
|
||||||
|
|
||||||
function testCanSaveBlankToHasOneRelations() {
|
function testCanSaveBlankToHasOneRelations() {
|
||||||
/* DataObject::write() should save to a has_one relationship if you set a field called (relname)ID */
|
/* DataObject::write() should save to a has_one relationship if you set a field called (relname)ID */
|
||||||
$page = new SiteTree();
|
$page = new SiteTree();
|
||||||
@ -183,7 +187,7 @@ class SiteTreeTest extends SapphireTest {
|
|||||||
$page->ParentID = $parentID;
|
$page->ParentID = $parentID;
|
||||||
$page->write();
|
$page->write();
|
||||||
$this->assertEquals($parentID, DB::query("SELECT \"ParentID\" FROM \"SiteTree\" WHERE \"ID\" = $page->ID")->value());
|
$this->assertEquals($parentID, DB::query("SELECT \"ParentID\" FROM \"SiteTree\" WHERE \"ID\" = $page->ID")->value());
|
||||||
|
|
||||||
/* You should then be able to save a null/0/'' value to the relation */
|
/* You should then be able to save a null/0/'' value to the relation */
|
||||||
$page->ParentID = null;
|
$page->ParentID = null;
|
||||||
$page->write();
|
$page->write();
|
||||||
@ -255,8 +259,8 @@ class SiteTreeTest extends SapphireTest {
|
|||||||
$this->assertEquals($pageID, $requeriedPage->ID);
|
$this->assertEquals($pageID, $requeriedPage->ID);
|
||||||
$this->assertEquals('About Us', $requeriedPage->Title);
|
$this->assertEquals('About Us', $requeriedPage->Title);
|
||||||
$this->assertEquals('Page', $requeriedPage->class);
|
$this->assertEquals('Page', $requeriedPage->class);
|
||||||
|
|
||||||
|
|
||||||
$page2 = $this->objFromFixture('Page', 'products');
|
$page2 = $this->objFromFixture('Page', 'products');
|
||||||
$page2ID = $page2->ID;
|
$page2ID = $page2->ID;
|
||||||
$page2->doUnpublish();
|
$page2->doUnpublish();
|
||||||
@ -268,7 +272,7 @@ class SiteTreeTest extends SapphireTest {
|
|||||||
$deletedPage = Versioned::get_latest_version('SiteTree', $page2ID);
|
$deletedPage = Versioned::get_latest_version('SiteTree', $page2ID);
|
||||||
$deletedPage->doRestoreToStage();
|
$deletedPage->doRestoreToStage();
|
||||||
$this->assertTrue(!Versioned::get_one_by_stage("Page", "Live", "\"SiteTree\".\"ID\" = " . $page2ID));
|
$this->assertTrue(!Versioned::get_one_by_stage("Page", "Live", "\"SiteTree\".\"ID\" = " . $page2ID));
|
||||||
|
|
||||||
Versioned::reading_stage('Stage');
|
Versioned::reading_stage('Stage');
|
||||||
$requeriedPage = DataObject::get_by_id("Page", $page2ID);
|
$requeriedPage = DataObject::get_by_id("Page", $page2ID);
|
||||||
$this->assertEquals('Products', $requeriedPage->Title);
|
$this->assertEquals('Products', $requeriedPage->Title);
|
||||||
|
Loading…
Reference in New Issue
Block a user