From 648a45906007e9854aa42a040e357aa9d3260cee Mon Sep 17 00:00:00 2001 From: Sam Minnee Date: Mon, 10 Nov 2008 01:13:42 +0000 Subject: [PATCH] Ensure that Requirements backend instance is preserved between tests git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@65507 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- core/Requirements.php | 2 +- dev/SapphireTest.php | 5 +++++ tests/SSViewerTest.php | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/core/Requirements.php b/core/Requirements.php index 3755e9fa4..accf5de9f 100644 --- a/core/Requirements.php +++ b/core/Requirements.php @@ -13,7 +13,7 @@ class Requirements { * @var Requirements */ private static $backend = null; - protected static function backend() { + public static function backend() { if(!self::$backend) { self::$backend = new Requirements_Backend(); diff --git a/dev/SapphireTest.php b/dev/SapphireTest.php index 65737cb08..7afb4586e 100644 --- a/dev/SapphireTest.php +++ b/dev/SapphireTest.php @@ -21,6 +21,7 @@ class SapphireTest extends PHPUnit_Framework_TestCase { protected $originalMailer; protected $originalMemberPasswordValidator; + protected $originalRequirements; protected $mailer; @@ -32,6 +33,7 @@ class SapphireTest extends PHPUnit_Framework_TestCase { function setUp() { // Remove password validation $this->originalMemberPasswordValidator = Member::password_validator(); + $this->originalRequirements = Requirements::backend(); Member::set_password_validator(null); $className = get_class($this); @@ -122,6 +124,9 @@ class SapphireTest extends PHPUnit_Framework_TestCase { // Restore password validation Member::set_password_validator($this->originalMemberPasswordValidator); + + // Restore requirements + Requirements::set_backend($this->originalRequirements); } /** diff --git a/tests/SSViewerTest.php b/tests/SSViewerTest.php index f413bb37b..e2a7e1f42 100644 --- a/tests/SSViewerTest.php +++ b/tests/SSViewerTest.php @@ -21,7 +21,7 @@ class SSViewerTest extends SapphireTest { $requirements->expects($this->once())->method('javascript')->with($jsFile); $requirements->expects($this->once())->method('css')->with($cssFile); - Requirements::set_backend($requirements);; + Requirements::set_backend($requirements); $data = new ArrayData(array());