FIX Update tests API implementations, add missing fixture namespaces

This commit is contained in:
Robbie Averill 2017-08-29 17:22:32 +12:00
parent 8d8ee14cc2
commit 7ffaf61aeb
14 changed files with 70 additions and 89 deletions

View File

@ -7,8 +7,7 @@ use SilverStripe\Subsites\Model\Subsite;
class BaseSubsiteTest extends SapphireTest
{
public function setUp()
protected function setUp()
{
parent::setUp();
@ -18,14 +17,14 @@ class BaseSubsiteTest extends SapphireTest
/**
* Avoid subsites filtering on fixture fetching.
* @param string $class
* @param string $id
* @param string $className
* @param string $identifier
* @return \SilverStripe\ORM\DataObject
*/
public function objFromFixture($class, $id)
protected function objFromFixture($className, $identifier)
{
Subsite::disable_subsite_filter(true);
$obj = parent::objFromFixture($class, $id);
$obj = parent::objFromFixture($className, $identifier);
Subsite::disable_subsite_filter(false);
return $obj;

View File

@ -11,22 +11,15 @@ use SilverStripe\Subsites\Model\Subsite;
class FileSubsitesTest extends BaseSubsiteTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
/**
* Disable other file extensions
*
* @var array
*/
protected $illegalExtensions = [
'File' => [
'SecureFileExtension',
'VersionedFileExtension'
],
'SiteTree' => [
'Translatable',
]
protected static $illegal_extensions = [
SiteTree::class => ['Translatable'], // @todo implement namespace for Translatable
];
public function testTrivialFeatures()
@ -45,7 +38,7 @@ class FileSubsitesTest extends BaseSubsiteTest
public function testWritingSubsiteID()
{
$this->objFromFixture(Member::class, 'admin')->logIn();
$this->logInAs('admin');
$subsite = $this->objFromFixture(Subsite::class, 'domaintest1');
FileSubsites::$default_root_folders_global = true;
@ -84,7 +77,7 @@ class FileSubsitesTest extends BaseSubsiteTest
public function testSubsitesFolderDropdown()
{
$this->objFromFixture(Member::class, 'admin')->logIn();
$this->logInAs('admin');
$file = new Folder();

View File

@ -9,7 +9,7 @@ use SilverStripe\Subsites\Model\Subsite;
class GroupSubsitesTest extends BaseSubsiteTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
protected $requireDefaultRecordsFrom = [GroupSubsites::class];

View File

@ -13,18 +13,18 @@ use SilverStripe\Subsites\Model\Subsite;
class LeftAndMainSubsitesTest extends FunctionalTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
/**
* Avoid subsites filtering on fixture fetching.
* @param string $class
* @param string $id
* @param string $className
* @param string $identifier
* @return \SilverStripe\ORM\DataObject
*/
public function objFromFixture($class, $id)
protected function objFromFixture($className, $identifier)
{
Subsite::disable_subsite_filter(true);
$obj = parent::objFromFixture($class, $id);
$obj = parent::objFromFixture($classname, $identifier);
Subsite::disable_subsite_filter(false);
return $obj;
@ -55,8 +55,7 @@ class LeftAndMainSubsitesTest extends FunctionalTest
public function testAccessChecksDontChangeCurrentSubsite()
{
$admin = $this->objFromFixture(Member::class, 'admin');
$this->logInAs($admin);
$this->logInAs('admin');
$ids = [];
$subsite1 = $this->objFromFixture(Subsite::class, 'domaintest1');

View File

@ -8,7 +8,7 @@ use SilverStripe\Subsites\Model\Subsite;
class SiteConfigSubsitesTest extends BaseSubsiteTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
public function testEachSubsiteHasAUniqueSiteConfig()
{

View File

@ -11,7 +11,6 @@ use SilverStripe\Control\Director;
use SilverStripe\Control\Session;
use SilverStripe\Core\Config\Config;
use SilverStripe\Core\Convert;
use SilverStripe\Dev\TestOnly;
use SilverStripe\Forms\FieldList;
use SilverStripe\Security\Member;
use SilverStripe\SiteConfig\SiteConfig;
@ -26,7 +25,7 @@ use SilverStripe\View\SSViewer;
class SiteTreeSubsitesTest extends BaseSubsiteTest
{
protected static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
protected static $extra_dataobjects = [
TestClassA::class,

View File

@ -12,14 +12,14 @@ use SilverStripe\Subsites\Model\Subsite;
class SubsiteAdminFunctionalTest extends FunctionalTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
public static $use_draft_site = true;
protected static $fixture_file = 'SubsiteTest.yml';
protected static $use_draft_site = true;
protected $autoFollowRedirection = false;
/**
* Helper: FunctionalTest is only able to follow redirection once, we want to go all the way.
* @param $url
* @param string $url
* @return \SilverStripe\Control\HTTPResponse
*/
public function getAndFollowAll($url)
@ -58,8 +58,7 @@ class SubsiteAdminFunctionalTest extends FunctionalTest
*/
public function testAdminCanAccessAllSubsites()
{
$member = $this->objFromFixture(Member::class, 'admin');
Session::set('loggedInAs', $member->ID);
$this->logInAs('admin');
$this->getAndFollowAll('admin/pages/?SubsiteID=0');
$this->assertEquals(Subsite::currentSubsiteID(), '0', 'Can access main site.');
@ -80,8 +79,7 @@ class SubsiteAdminFunctionalTest extends FunctionalTest
public function testAdminIsRedirectedToObjectsSubsite()
{
$member = $this->objFromFixture(Member::class, 'admin');
Session::set('loggedInAs', $member->ID);
$this->logInAs('admin');
$mainSubsitePage = $this->objFromFixture('Page', 'mainSubsitePage');
$subsite1Home = $this->objFromFixture('Page', 'subsite1_home');
@ -125,8 +123,7 @@ class SubsiteAdminFunctionalTest extends FunctionalTest
*/
public function testEditorCanAccessAllSubsites()
{
$member = $this->objFromFixture(Member::class, 'editor');
Session::set('loggedInAs', $member->ID);
$this->logInAs('editor');
$this->getAndFollowAll('admin/pages/?SubsiteID=0');
$this->assertEquals(Subsite::currentSubsiteID(), '0', 'Can access main site.');

View File

@ -10,9 +10,9 @@ use SilverStripe\Subsites\Model\Subsite;
class SubsiteAdminTest extends BaseSubsiteTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
public function adminLoggedInSession()
protected function adminLoggedInSession()
{
return new Session([
'loggedInAs' => $this->idFromFixture(Member::class, 'admin')
@ -50,8 +50,7 @@ class SubsiteAdminTest extends BaseSubsiteTest
*/
public function testMainsiteAdminCanAccessAllSubsites()
{
$member = $this->objFromFixture(Member::class, 'admin');
Session::set('loggedInAs', $member->ID);
$this->logInAs('admin');
$cmsMain = new CMSMain();
foreach ($cmsMain->Subsites() as $subsite) {

View File

@ -9,7 +9,7 @@ use SilverStripe\View\SSViewer;
class SubsiteFunctionalTest extends FunctionalTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
/**
* @todo: remove test from SiteTreeSubsitesTest when this one works. Seems domain lookup is broken atm

View File

@ -13,7 +13,7 @@ use SilverStripe\Subsites\Model\SubsiteDomain;
class SubsiteTest extends BaseSubsiteTest
{
public static $fixture_file = 'subsites/tests/php/SubsiteTest.yml';
protected static $fixture_file = 'SubsiteTest.yml';
/**
* Original value of {@see SubSite::$strict_subdomain_matching}
@ -29,7 +29,7 @@ class SubsiteTest extends BaseSubsiteTest
*/
protected $origServer = [];
public function setUp()
protected function setUp()
{
parent::setUp();
@ -39,7 +39,7 @@ class SubsiteTest extends BaseSubsiteTest
Subsite::$strict_subdomain_matching = false;
}
public function tearDown()
protected function tearDown()
{
$_SERVER = $this->origServer;
Subsite::$strict_subdomain_matching = $this->origStrictSubdomainMatching;

View File

@ -112,14 +112,14 @@ Page:
SubsiteID: =>SilverStripe\Subsites\Model\Subsite.subsite2
URLSegment: contact-us
PermissionRoleCode:
SilverStripe\Security\PermissionRoleCode:
roleCode1:
Code: CMS_ACCESS_CMSMain
PermissionRole:
SilverStripe\Security\PermissionRole:
role1:
Title: role1
Codes: =>PermissionRoleCode.roleCode1
Group:
Codes: =>SilverStripe\Security\PermissionRoleCode.roleCode1
SilverStripe\Security\Group:
admin:
Title: Admin
Code: admin
@ -151,71 +151,71 @@ Group:
Title: subsite1_group_via_role
Code: subsite1_group_via_role
AccessAllSubsites: 1
Roles: =>PermissionRole.role1
Permission:
Roles: =>SilverStripe\Security\PermissionRole.role1
SilverStripe\Security\Permission:
admin:
Code: ADMIN
GroupID: =>Group.admin
GroupID: =>SilverStripe\Security\Group.admin
editor1:
Code: CMS_ACCESS_CMSMain
GroupID: =>Group.editor
GroupID: =>SilverStripe\Security\Group.editor
editor2:
Code: SITETREE_VIEW_ALL
GroupID: =>Group.editor
GroupID: =>SilverStripe\Security\Group.editor
editor3:
Code: VIEW_DRAFT_CONTENT
GroupID: =>Group.editor
GroupID: =>SilverStripe\Security\Group.editor
accesscmsmain1:
Code: CMS_ACCESS_CMSMain
GroupID: =>Group.subsite1_group
GroupID: =>SilverStripe\Security\Group.subsite1_group
accesscmsmain2:
Code: CMS_ACCESS_CMSMain
GroupID: =>Group.subsite2_group
GroupID: =>SilverStripe\Security\Group.subsite2_group
accesscmsmain3:
Code: CMS_ACCESS_CMSMain
GroupID: =>Group.subsite1admins
GroupID: =>SilverStripe\Security\Group.subsite1admins
accesscmsmain4:
Code: CMS_ACCESS_CMSMain
GroupID: =>Group.allsubsitesauthors
GroupID: =>SilverStripe\Security\Group.allsubsitesauthors
securityaccess1:
Code: CMS_ACCESS_SecurityAdmin
GroupID: =>Group.subsite1_group
GroupID: =>SilverStripe\Security\Group.subsite1_group
securityaccess2:
Code: CMS_ACCESS_SecurityAdmin
GroupID: =>Group.subsite2_group
GroupID: =>SilverStripe\Security\Group.subsite2_group
adminsubsite1:
Code: ADMIN
GroupID: =>Group.subsite1admins
GroupID: =>SilverStripe\Security\Group.subsite1admins
Member:
SilverStripe\Security\Member:
admin:
FirstName: Admin
Surname: User
Email: admin@test.com
Password: rangi
Groups: =>Group.admin
Groups: =>SilverStripe\Security\Group.admin
editor:
FirstName: Editor
Surname: User
Email: editor@test.com
Password: rangi
Groups: =>Group.editor
Groups: =>SilverStripe\Security\Group.editor
subsite1member:
Email: subsite1member@test.com
Groups: =>Group.subsite1_group
Groups: =>SilverStripe\Security\Group.subsite1_group
subsite2member:
Email: subsite2member@test.com
Groups: =>Group.subsite2_group
Groups: =>SilverStripe\Security\Group.subsite2_group
subsite1admin:
Email: subsite1admin@test.com
Groups: =>Group.subsite1admins
Groups: =>SilverStripe\Security\Group.subsite1admins
allsubsitesauthor:
Email: allsubsitesauthor@test.com
Groups: =>Group.allsubsitesauthors
Groups: =>SilverStripe\Security\Group.allsubsitesauthors
subsite1member2:
Email: subsite1member2@test.com
Groups: =>Group.subsite1_group_via_role
Groups: =>SilverStripe\Security\Group.subsite1_group_via_role
SiteConfig:
SilverStripe\SiteConfig\SiteConfig:
config:
CanCreateTopLevelType: LoggedInUsers

View File

@ -5,12 +5,6 @@ namespace SilverStripe\Subsites\Tests;
use SilverStripe\Control\Session;
use SilverStripe\Dev\FunctionalTest;
/**
* Created by PhpStorm.
* User: dmooyman
* Date: 27/05/16
* Time: 3:10 PM
*/
class SubsiteXHRControllerTest extends FunctionalTest
{
protected static $fixture_file = 'SubsiteTest.yml';
@ -18,7 +12,8 @@ class SubsiteXHRControllerTest extends FunctionalTest
public function testCanView()
{
// Test unauthenticated access
Session::clear('MemberID');
$this->logOut();
$result = $this->get('SubsiteXHRController', null, [
'X-Pjax' => 'SubsiteList',
'X-Requested-With' => 'XMLHttpRequest'

View File

@ -16,16 +16,16 @@ use SilverStripe\Versioned\Versioned;
class SubsitesVirtualPageTest extends BaseSubsiteTest
{
public static $fixture_file = [
'subsites/tests/php/SubsiteTest.yml',
'subsites/tests/php/SubsitesVirtualPageTest.yml',
protected static $fixture_file = [
'SubsiteTest.yml',
'SubsitesVirtualPageTest.yml',
];
protected $illegalExtensions = [
'SiteTree' => ['Translatable']
protected static $illegal_extensions = [
SiteTree::class => ['Translatable'] // @todo implement Translatable namespace
];
public function setUp()
protected function setUp()
{
parent::setUp();
@ -61,7 +61,7 @@ class SubsitesVirtualPageTest extends BaseSubsiteTest
Subsite::changeSubsite($subsite->ID);
Subsite::$disable_subsite_filter = false;
$linky = $this->objFromFixture('Page', 'linky');
$linky = $this->objFromFixture(Page::class, 'linky');
$svp = new SubsitesVirtualPage();
$svp->CopyContentFromID = $linky->ID;
@ -303,7 +303,7 @@ class SubsitesVirtualPageTest extends BaseSubsiteTest
);
}
public function fixVersionNumberCache($page)
protected function fixVersionNumberCache($page)
{
$pages = func_get_args();
foreach ($pages as $p) {

View File

@ -1,11 +1,11 @@
# These need to come first so that SiteTree has the link meta-data written.
File:
SilverStripe\Assets\File:
file1:
FileFilename: testscript-test-file.pdf
FileHash: 464dedb70af0dc7f8f3360e7f3ae43cbbf1cdf4e
Name: testscript-test-file.pdf
SiteTree:
SilverStripe\CMS\Model\SiteTree:
page1:
Title: page1
URLSegment: page1