public function MongoDbSessionHandlerTest::testGc

File

drupal/core/vendor/symfony/http-foundation/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/MongoDbSessionHandlerTest.php, line 149

Class

MongoDbSessionHandlerTest
@author Markus Bachmann <markus.bachmann@bachi.biz>

Namespace

Symfony\Component\HttpFoundation\Tests\Session\Storage\Handler

Code

public function testGc() {
  $collection = $this
    ->getMockBuilder('MongoCollection')
    ->disableOriginalConstructor()
    ->getMock();
  $this->mongo
    ->expects($this
    ->once())
    ->method('selectCollection')
    ->with($this->options['database'], $this->options['collection'])
    ->will($this
    ->returnValue($collection));
  $that = $this;
  $collection
    ->expects($this
    ->once())
    ->method('remove')
    ->will($this
    ->returnCallback(function ($criteria) use ($that) {
    $that
      ->assertInstanceOf('MongoDate', $criteria[$that->options['time_field']]['$lt']);
    $that
      ->assertGreaterThanOrEqual(time() - -1, $criteria[$that->options['time_field']]['$lt']->sec);
  }));
  $this
    ->assertTrue($this->storage
    ->gc(-1));
}