for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
declare(strict_types=1);
/*
* Copyright (C) 2020-2025 Iain Cambridge
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE as published by
* the Free Software Foundation, either version 2.1 of the License, or
* (at your option) any later version.
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <https://www.gnu.org/licenses/>.
*/
namespace Parthenon\AbTesting\Experiment;
use Optimizely\Optimizely;
use Parthenon\User\Entity\UserInterface;
final class OptimizelyDecider implements DeciderInterface
{
public function __construct(private Optimizely $optimizely)
}
public function doExperiment(string $experimentName, ?UserInterface $user = null, array $options = []): string
$userId = ($user) ? $user->getId() : null;
return $this->optimizely->activate($experimentName, $userId, $options);
return $this->optimizely...ame, $userId, $options)
null
string