Skip to content

Commit 2d26693

Browse files
committed
Adds more tests
1 parent 0c67af5 commit 2d26693

File tree

1 file changed

+24
-13
lines changed

1 file changed

+24
-13
lines changed

tests/SerializerTest.php

Lines changed: 24 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
<?php
22

3+
use Carbon\Carbon;
4+
use Carbon\CarbonImmutable;
35
use Laravel\SerializableClosure\SerializableClosure;
46
use Laravel\SerializableClosure\Serializers\Signed;
57
use Laravel\SerializableClosure\Support\ReflectionClosure;
@@ -401,31 +403,40 @@ function () {
401403
expect($f(new Model))->toBeInstanceOf(Model::class);
402404
})->with('serializers');
403405

404-
test('serializes carbon objects', function () {
405-
$carbon = new \Carbon\Carbon('now');
406-
407-
$closure = function () use ($carbon) {
408-
return $carbon;
406+
test('serializes used dates', function ($_, $date) {
407+
$closure = function () use ($date) {
408+
return $date;
409409
};
410410

411411
$u = s($closure);
412412
$r = $u();
413413

414-
expect($r)->toEqual($carbon);
415-
})->with('serializers');
414+
expect($r)->toEqual($date);
415+
})->with('serializers')->with([
416+
new DateTime,
417+
new DateTimeImmutable,
418+
new Carbon,
419+
new CarbonImmutable,
420+
]);
416421

417-
test('serializes carbon immutable objects', function () {
418-
$carbon = new \Carbon\CarbonImmutable('now');
422+
test('serializes with used object date properties', function ($_, $date) {
423+
$obj = new ObjSelf;
424+
$obj->o = $date;
419425

420-
$closure = function () use ($carbon) {
421-
return $carbon;
426+
$closure = function () use ($obj) {
427+
return $obj;
422428
};
423429

424430
$u = s($closure);
425431
$r = $u();
426432

427-
expect($r)->toEqual($carbon);
428-
})->with('serializers');
433+
expect($r->o)->toEqual($date);
434+
})->with('serializers')->with([
435+
new DateTime,
436+
new DateTimeImmutable,
437+
new Carbon,
438+
new CarbonImmutable,
439+
]);
429440

430441
class A
431442
{

0 commit comments

Comments
 (0)