/** * @dataProvider provideConstructorArguments */ public function testCreate($user, $type, $expiration, $data) { $user = $user ? self::$DI['user'] : null; $manipulator = new TokenManipulator(self::$DI['app']['orm.em'], self::$DI['app']['random.low'], self::$DI['app']['repo.tokens'], self::$DI['app']['tmp.download.path']); $token = $manipulator->create($user, $type, $expiration, $data); $this->assertSame($user, $token->getUser()); $this->assertSame($type, $token->getType()); $this->assertSame($expiration, $token->getExpiration()); $this->assertSame($data, $token->getData()); $this->assertInternalType('string', $token->getValue()); $this->assertEquals(32, strlen($token->getValue())); }