}), 'Piwik\\Plugins\\Marketplace\\Plugins\\InvalidLicenses' => DI\decorate(function ($previous, ContainerInterface $c) { $pluginNames = $c->get('test.vars.mockMarketplaceAssumePluginNamesActivated'); if (!empty($pluginNames)) { /** @var \Piwik\Plugins\Marketplace\Plugins\InvalidLicenses $previous */ $previous->setActivatedPluginNames($pluginNames); $previous->clearCache(); } return $previous; }), 'Piwik\\Plugins\\Marketplace\\Api\\Service' => DI\decorate(function ($previous, ContainerInterface $c) { if (!$c->get('test.vars.mockMarketplaceApiService')) { return $previous; } // for ui tests $service = new MockService(); $key = new LicenseKey(); $accessToken = $key->get(); $service->authenticate($accessToken); function removeReviewsUrl($content) { $content = json_decode($content, true); if (!empty($content['shop']['reviews']['embedUrl'])) { $content['shop']['reviews']['embedUrl'] = ''; } return json_encode($content); } $isExceededUser = $c->get('test.vars.consumer') === 'exceededLicense'; $isExpiredUser = $c->get('test.vars.consumer') === 'expiredLicense'; $isValidUser = $c->get('test.vars.consumer') === 'validLicense'; $service->setOnDownloadCallback(function ($action, $params) use($service, $isExceededUser, $isValidUser, $isExpiredUser) { if ($action === 'info') { return $service->getFixtureContent('v2.0_info.json');