public function testGetThrottlingExceptionAttributes() { $checkpoint = new ThrottleCheckpoint($throttle = m::mock('Cartalyst\\Sentinel\\Throttling\\IlluminateThrottleRepository'), '127.0.0.1'); $throttle->shouldReceive('globalDelay')->once(); $throttle->shouldReceive('ipDelay')->once()->andReturn(0); $throttle->shouldReceive('userDelay')->once()->andReturn(10); try { $checkpoint->fail(m::mock('Cartalyst\\Sentinel\\Users\\EloquentUser')); } catch (ThrottlingException $e) { $this->assertEquals(10, $e->getDelay()); $this->assertEquals('user', $e->getType()); $this->assertEquals(Carbon::now()->addSeconds(10), $e->getFree()); } }