Skip to content

Commit

Permalink
Merge pull request #118 from open-sausages/pulls/4.0/namespace-security
Browse files Browse the repository at this point in the history
API Apply SilverStripe\Security namespace
  • Loading branch information
Sam Minnée committed Jul 7, 2016
2 parents 6ea51d4 + 8d6de53 commit b6ee213
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 26 deletions.
22 changes: 12 additions & 10 deletions src/SilverStripe/BehatExtension/Context/FixtureContext.php
Expand Up @@ -10,6 +10,8 @@
use SilverStripe\ORM\DB;
use SilverStripe\ORM\DataObject;
use SilverStripe\ORM\Versioning\Versioned;
use SilverStripe\Security\Permission;



// PHPUnit
Expand Down Expand Up @@ -379,10 +381,10 @@ public function stepThereAreTheFollowingRecords($dataObject, PyStringNode $strin
* @Given /^(?:(an|a|the) )"member" "(?<id>[^"]+)" belonging to "(?<groupId>[^"]+)"$/
*/
public function stepCreateMemberWithGroup($id, $groupId) {
$group = $this->fixtureFactory->get('Group', $groupId);
if(!$group) $group = $this->fixtureFactory->createObject('Group', $groupId);
$group = $this->fixtureFactory->get('SilverStripe\\Security\\Group', $groupId);
if(!$group) $group = $this->fixtureFactory->createObject('SilverStripe\\Security\\Group', $groupId);

$member = $this->fixtureFactory->createObject('Member', $id);
$member = $this->fixtureFactory->createObject('SilverStripe\\Security\\Member', $id);
$member->Groups()->add($group);
}

Expand All @@ -392,7 +394,7 @@ public function stepCreateMemberWithGroup($id, $groupId) {
* @Given /^(?:(an|a|the) )"member" "(?<id>[^"]+)" belonging to "(?<groupId>[^"]+)" with (?<data>.*)$/
*/
public function stepCreateMemberWithGroupAndData($id, $groupId, $data) {
$class = 'Member';
$class = 'SilverStripe\\Security\\Member';
preg_match_all(
'/"(?<key>[^"]+)"\s*=\s*"(?<value>[^"]+)"/',
$data,
Expand All @@ -403,8 +405,8 @@ public function stepCreateMemberWithGroupAndData($id, $groupId, $data) {
array_combine($matches['key'], $matches['value'])
);

$group = $this->fixtureFactory->get('Group', $groupId);
if(!$group) $group = $this->fixtureFactory->createObject('Group', $groupId);
$group = $this->fixtureFactory->get('SilverStripe\\Security\\Group', $groupId);
if(!$group) $group = $this->fixtureFactory->createObject('SilverStripe\\Security\\Group', $groupId);

$member = $this->fixtureFactory->createObject($class, $id, $fields);
$member->Groups()->add($group);
Expand All @@ -419,10 +421,10 @@ public function stepCreateGroupWithPermissions($id, $permissionStr) {
// Convert natural language permissions to codes
preg_match_all('/"([^"]+)"/', $permissionStr, $matches);
$permissions = $matches[1];
$codes = \Permission::get_codes(false);
$codes = Permission::get_codes(false);

$group = $this->fixtureFactory->get('Group', $id);
if(!$group) $group = $this->fixtureFactory->createObject('Group', $id);
$group = $this->fixtureFactory->get('SilverStripe\\Security\\Group', $id);
if(!$group) $group = $this->fixtureFactory->createObject('SilverStripe\\Security\\Group', $id);

foreach($permissions as $permission) {
$found = false;
Expand All @@ -431,7 +433,7 @@ public function stepCreateGroupWithPermissions($id, $permissionStr) {
$permission == $code
|| $permission == $details['name']
) {
\Permission::grant($group->ID, $code);
Permission::grant($group->ID, $code);
$found = true;
}
}
Expand Down
30 changes: 14 additions & 16 deletions src/SilverStripe/BehatExtension/Context/LoginContext.php
Expand Up @@ -2,14 +2,12 @@

namespace SilverStripe\BehatExtension\Context;

use Behat\Behat\Context\ClosuredContextInterface,
Behat\Behat\Context\TranslatedContextInterface,
Behat\Behat\Context\BehatContext,
Behat\Behat\Context\Step,
Behat\Behat\Exception\PendingException;
use Behat\Gherkin\Node\PyStringNode,
Behat\Gherkin\Node\TableNode;
use Behat\Behat\Context\BehatContext;
use Behat\Behat\Context\Step;
use SilverStripe\ORM\DataObject;
use SilverStripe\Security\Group;
use SilverStripe\Security\Member;



// PHPUnit
Expand Down Expand Up @@ -75,35 +73,35 @@ public function stepIAmLoggedIn()
function iAmLoggedInWithPermissions($permCode)
{
if (!isset($this->cache_generatedMembers[$permCode])) {
$group = \Group::get()->filter('Title', "$permCode group")->first();
$group = Group::get()->filter('Title', "$permCode group")->first();
if (!$group) {
$group = \Injector::inst()->create('Group');
$group = \Injector::inst()->create('SilverStripe\\Security\\Group');
}

$group->Title = "$permCode group";
$group->write();

$permission = \Injector::inst()->create('Permission');
$permission = \Injector::inst()->create('SilverStripe\\Security\\Permission');
$permission->Code = $permCode;
$permission->write();
$group->Permissions()->add($permission);

$member = DataObject::get_one('Member', sprintf('"Email" = \'%s\'', "$permCode@example.org"));
$member = DataObject::get_one('SilverStripe\\Security\\Member', sprintf('"Email" = \'%s\'', "$permCode@example.org"));
if (!$member) {
$member = \Injector::inst()->create('Member');
$member = \Injector::inst()->create('SilverStripe\\Security\\Member');
}

// make sure any validation for password is skipped, since we're not testing complexity here
$validator = \Member::password_validator();
\Member::set_password_validator(null);
$validator = Member::password_validator();
Member::set_password_validator(null);
$member->FirstName = $permCode;
$member->Surname = "User";
$member->Email = "$permCode@example.org";
$member->PasswordEncryption = "none";
$member->changePassword('Secret!123');
$member->write();
$group->Members()->add($member);
\Member::set_password_validator($validator);
Member::set_password_validator($validator);

$this->cache_generatedMembers[$permCode] = $member;
}
Expand Down Expand Up @@ -183,7 +181,7 @@ public function stepIWillSeeALogInMessage($type)
*/
public function stepPasswordForEmailShouldBe($id, $password)
{
$member = \Member::get()->filter('Email', $id)->First();
$member = Member::get()->filter('Email', $id)->First();
assertNotNull($member);
assertTrue($member->checkPassword($password)->valid());
}
Expand Down

0 comments on commit b6ee213

Please sign in to comment.