diff --git a/test/functional/TimeFractionPrecisionTest.php b/test/functional/TimeFractionPrecisionTest.php new file mode 100644 index 00000000..4cb0534d --- /dev/null +++ b/test/functional/TimeFractionPrecisionTest.php @@ -0,0 +1,61 @@ +format('U.u')); + + $token = $config->builder() + ->issuedAt($issuedAt) + ->getToken($config->signer(), $config->signingKey()); + + $parsedToken = $config->parser()->parse($token->toString()); + + self::assertInstanceOf(Plain::class, $parsedToken); + self::assertSame($timeFraction, $parsedToken->claims()->get('iat')->format('U.u')); + } + + /** @return iterable */ + public function datesWithPotentialRoundingIssues(): iterable + { + yield ['1613938511.017448']; + yield ['1613938511.023691']; + yield ['1613938511.018045']; + yield ['1616074725.008455']; + } +}