Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordiosmosis <benaka@piwik.pro>2015-12-25 20:27:03 +0300
committerdiosmosis <benaka@piwik.pro>2016-01-13 15:42:23 +0300
commit6fdf3c30b6eabef360b0158bd4abf137a0b2e79c (patch)
tree4ad255337a5104a5b7b9af819872e27d1cdc5db2
parent1a13eb84e573bc5612305084267be357830a1935 (diff)
When generating the OmniFixture dump, restore site properties to their initial values before setting up each initial fixture. Ensures that changes to site properties by fixtures are reset before setting up the next fixture.
-rw-r--r--tests/PHPUnit/Fixtures/OmniFixture.php45
-rw-r--r--tests/resources/OmniFixture-dump.sql.gzbin81192 -> 82980 bytes
2 files changed, 40 insertions, 5 deletions
diff --git a/tests/PHPUnit/Fixtures/OmniFixture.php b/tests/PHPUnit/Fixtures/OmniFixture.php
index c1a7fec433..f2b5aa9c44 100644
--- a/tests/PHPUnit/Fixtures/OmniFixture.php
+++ b/tests/PHPUnit/Fixtures/OmniFixture.php
@@ -8,12 +8,10 @@
namespace Piwik\Tests\Fixtures;
use Piwik\Date;
-use Piwik\Access;
use Piwik\Option;
use ReflectionClass;
-use Piwik\Plugins\VisitsSummary\API as VisitsSummaryAPI;
+use Piwik\Plugins\SitesManager\API as SitesManagerAPI;
use Piwik\Tests\Framework\Fixture;
-use Piwik\Tests\Framework\OverrideLogin;
/**
* This fixture is the combination of every other fixture defined by Piwik. Should be used
@@ -120,10 +118,15 @@ class OmniFixture extends Fixture
public function setUp()
{
+ $firstFixture = array_shift($this->fixtures);
+ $this->setUpFixture($firstFixture);
+
+ $initialSitesProperties = SitesManagerAPI::getInstance()->getAllSites();
+
foreach ($this->fixtures as $fixture) {
- echo "Setting up " . get_class($fixture) . "...\n";
+ $this->restoreSitesProperties($initialSitesProperties);
- $fixture->setUp();
+ $this->setUpFixture($fixture);
}
Option::set("Tests.forcedNowTimestamp", $this->now->getTimestamp());
@@ -137,4 +140,36 @@ class OmniFixture extends Fixture
$fixture->tearDown();
}
}
+
+ private function setUpFixture(Fixture $fixture)
+ {
+ echo "Setting up " . get_class($fixture) . "...\n";
+ $fixture->setUp();
+ }
+
+ private function restoreSitesProperties($initialSitesProperties)
+ {
+ foreach ($initialSitesProperties as $idSite => $properties) {
+ SitesManagerAPI::getInstance()->updateSite(
+ $idSite,
+ $siteName = $properties['name'],
+ $urls = $properties[''],
+ $ecommerce = $properties['ecommerce'],
+ $siteSearch = $properties['sitesearch'],
+ $searchKeywordParameters = $properties['sitesearch_keyword_parameters'],
+ $searchCategoryParameters = $properties['sitesearch_category_parameters'],
+ $excludedIps = $properties['excluded_ips'],
+ $excludedQueryParameters = $properties['excluded_parameters'],
+ $timezone = $properties['timezone'],
+ $currency = $properties['currency'],
+ $group = $properties['group'],
+ $startDate = $properties['ts_created'],
+ $excludedUserAgents = $properties['excluded_user_agents'],
+ $keepURLFragments = $properties['keep_url_fragment'],
+ $type = $properties['type'],
+ $settings = null,
+ $excludeUnknownUrls = $properties['exclude_unknown_urls']
+ );
+ }
+ }
} \ No newline at end of file
diff --git a/tests/resources/OmniFixture-dump.sql.gz b/tests/resources/OmniFixture-dump.sql.gz
index 75ca5eacba..ca5c1a7267 100644
--- a/tests/resources/OmniFixture-dump.sql.gz
+++ b/tests/resources/OmniFixture-dump.sql.gz
Binary files differ