public static function get($payload)
{
switch ($payload) {
case 'OK':
case 'QUEUED':
if (isset(self::${$payload})) {
return self::${$payload};
}
return self::${$payload} = new self($payload);
default:
return new self($payload);
}
}
/** * @group disconnected */ public function testStaticGetMethodCachesOnlyCommonStatuses() { $response = Status::get('OK'); $this->assertSame($response, Status::get('OK')); $response = Status::get('QUEUED'); $this->assertSame($response, Status::get('QUEUED')); $response = Status::get('PONG'); $this->assertNotSame($response, Status::get('PONG')); }