예제 #1
0
 /**
  * @expectedException \Exception
  * @expectedExceptionMessage Control code failed
  */
 public function testExperimentForwardsThrownExceptionsFromControl()
 {
     $experiment = Experiment::create()->control(function () {
         throw new \Exception('Control code failed');
     })->candidate(function () {
         return 'noop';
     });
     $experiment->run();
 }
예제 #2
0
파일: usage.php 프로젝트: LartTyler/Analyst
<?php

namespace DaybreakStudios\Analyst\Samples;

use DaybreakStudios\Analyst\Experiment;
require __DIR__ . '/bootstrap.php';
ob_start();
$fullName = 'Tyler Lartonoix';
$name = Experiment::create()->setThrowOnMismatch(true)->setContext(['name' => $fullName])->control(function ($name) {
    $name = trim($name);
    return [substr($name, 0, strpos($name, ' ')), substr($name, strpos($name, ' ') + 1) ?: null];
})->candidate(function ($name) {
    return [strtok(trim($name), ' '), strtok('') ?: null];
})->run();
printf(":: Results\nFull name: %s\nFirst name: %s\nLast name: %s", $fullName, $name[0], $name[1]);
echo ob_get_clean() . "\n";