fix: package lock fingerprint

This commit is contained in:
nuno maduro
2026-07-18 01:10:01 +01:00
parent 9e79e491e2
commit 820fa08313
237 changed files with 2409 additions and 2100 deletions
+23 -24
View File
@@ -1,73 +1,72 @@
<?php
it('can access methods', function () {
it('can access methods', function (): void {
expect(new HasMethods)
->name()->toBeString()->toEqual('Has Methods');
});
it('can access multiple methods', function () {
it('can access multiple methods', function (): void {
expect(new HasMethods)
->name()->toBeString()->toEqual('Has Methods')
->quantity()->toBeInt()->toEqual(20);
});
it('works with not', function () {
it('works with not', function (): void {
expect(new HasMethods)
->name()->not->toEqual('world')->toEqual('Has Methods')
->quantity()->toEqual(20)->not()->toEqual('bar')->not->toBeNull;
});
it('can accept arguments', function () {
it('can accept arguments', function (): void {
expect(new HasMethods)
->multiply(5, 4)->toBeInt->toEqual(20);
});
it('works with each', function () {
it('works with each', function (): void {
expect(new HasMethods)
->attributes()->toBeArray->each->not()->toBeNull
->attributes()->each(function ($attribute) {
->attributes()->each(function ($attribute): void {
$attribute->not->toBeNull();
});
});
it('works inside of each', function () {
it('works inside of each', function (): void {
expect(new HasMethods)
->books()->each(function ($book) {
->books()->each(function ($book): void {
$book->title->not->toBeNull->cost->toBeGreaterThan(19);
});
});
it('works with sequence', function () {
it('works with sequence', function (): void {
expect(new HasMethods)
->books()->sequence(
function ($book) {
function ($book): void {
$book->title->toEqual('Foo')->cost->toEqual(20);
},
function ($book) {
function ($book): void {
$book->title->toEqual('Bar')->cost->toEqual(30);
},
);
});
it('can compose complex expectations', function () {
it('can compose complex expectations', function (): void {
expect(new HasMethods)
->toBeObject()
->name()->toEqual('Has Methods')->not()->toEqual('bar')
->quantity()->not->toEqual('world')->toEqual(20)->toBeInt
->multiply(3, 4)->not->toBeString->toEqual(12)
->attributes()->toBeArray()
->books()->toBeArray->each->not->toBeEmpty
->books()->sequence(
function ($book) {
function ($book): void {
$book->title->toEqual('Foo')->cost->toEqual(20);
},
function ($book) {
function ($book): void {
$book->title->toEqual('Bar')->cost->toEqual(30);
},
);
});
it('can handle nested method calls', function () {
it('can handle nested method calls', function (): void {
expect(new HasMethods)
->newInstance()->newInstance()->name()->toEqual('Has Methods')->toBeString()
->newInstance()->name()->toEqual('Has Methods')->not->toBeInt
@@ -82,7 +81,7 @@ it('works with higher order tests')
->name()->toEqual('Has Methods')
->books()->each->toBeArray;
it('can use the scoped method to lock into the given level for expectations', function () {
it('can use the scoped method to lock into the given level for expectations', function (): void {
expect(new HasMethods)
->attributes()->scoped(fn ($attributes) => $attributes
->name->toBe('Has Methods')
@@ -99,7 +98,7 @@ it('can use the scoped method to lock into the given level for expectations', fu
);
});
it('works consistently with the json expectation method', function () {
it('works consistently with the json expectation method', function (): void {
expect(new HasMethods)
->jsonString()->json()->id->toBe(1)
->jsonString()->json()->name->toBe('Has Methods')->toBeString()
@@ -113,22 +112,22 @@ class HasMethods
return '{ "id": 1, "name": "Has Methods", "quantity": 20 }';
}
public function name()
public function name(): string
{
return 'Has Methods';
}
public function quantity()
public function quantity(): int
{
return 20;
}
public function multiply($x, $y)
public function multiply($x, $y): int|float
{
return $x * $y;
}
public function attributes()
public function attributes(): array
{
return [
'name' => $this->name(),
@@ -136,7 +135,7 @@ class HasMethods
];
}
public function books()
public function books(): array
{
return [
[
@@ -150,7 +149,7 @@ class HasMethods
];
}
public function newInstance()
public function newInstance(): static
{
return new static;
}
@@ -1,24 +1,24 @@
<?php
it('can access methods and properties', function () {
it('can access methods and properties', function (): void {
expect(new HasMethodsAndProperties)
->name->toEqual('Has Methods and Properties')->not()->toEqual('bar')
->multiply(3, 4)->not->toBeString->toEqual(12)
->posts->each(function ($post) {
->posts->each(function ($post): void {
$post->is_published->toBeTrue;
})->books()->toBeArray()
->posts->toBeArray->each->not->toBeEmpty
->books()->sequence(
function ($book) {
function ($book): void {
$book->title->toEqual('Foo')->cost->toEqual(20);
},
function ($book) {
function ($book): void {
$book->title->toEqual('Bar')->cost->toEqual(30);
},
);
});
it('can handle nested methods and properties', function () {
it('can handle nested methods and properties', function (): void {
expect(new HasMethodsAndProperties)
->meta->foo->bar->toBeString()->toEqual('baz')->not->toBeInt
->newInstance()->meta->foo->toBeArray()
@@ -33,15 +33,14 @@ it('works with higher order tests')
->newInstance()->multiply(2, 2)->toEqual(4)->not->toEqual(5)
->newInstance()->books()->toBeArray();
it('can start a new higher order expectation using the and syntax', function () {
it('can start a new higher order expectation using the and syntax', function (): void {
expect(new HasMethodsAndProperties)
->toBeInstanceOf(HasMethodsAndProperties::class)
->meta->toBeArray
->and(['foo' => 'bar'])
->toBeArray()
->foo->toEqual('bar');
expect(static::getCount())->toEqual(4);
->foo->toEqual('bar')
->and(static::getCount())->toEqual(4);
});
it('can start a new higher order expectation using the and syntax in higher order tests')
@@ -52,12 +51,12 @@ it('can start a new higher order expectation using the and syntax in higher orde
->toBeArray()
->foo->toEqual('bar');
it('can start a new higher order expectation using the and syntax without nesting expectations', function () {
it('can start a new higher order expectation using the and syntax without nesting expectations', function (): void {
expect(new HasMethodsAndProperties)
->toBeInstanceOf(HasMethodsAndProperties::class)
->meta
->sequence(
function ($value, $key) {
function ($value, $key): void {
$value->toBeArray()->and($key)->toBe('foo');
},
);
@@ -80,7 +79,7 @@ class HasMethodsAndProperties
],
];
public function books()
public function books(): array
{
return [
[
@@ -94,12 +93,12 @@ class HasMethodsAndProperties
];
}
public function multiply($x, $y)
public function multiply($x, $y): int|float
{
return $x * $y;
}
public function newInstance()
public function newInstance(): static
{
return new static;
}
@@ -1,50 +1,50 @@
<?php
it('allows properties to be accessed from the value', function () {
it('allows properties to be accessed from the value', function (): void {
expect(['foo' => 1])->foo->toBeInt()->toEqual(1);
});
it('can access multiple properties from the value', function () {
it('can access multiple properties from the value', function (): void {
expect(['foo' => 'bar', 'hello' => 'world'])
->foo->toBeString()->toEqual('bar')
->hello->toBeString()->toEqual('world');
});
it('works with not', function () {
it('works with not', function (): void {
expect(['foo' => 'bar', 'hello' => 'world'])
->foo->not->not->toEqual('bar')
->foo->not->toEqual('world')->toEqual('bar')
->hello->toEqual('world')->not()->toEqual('bar')->not->toBeNull;
});
it('works with each', function () {
it('works with each', function (): void {
expect(['numbers' => [1, 2, 3, 4], 'words' => ['hey', 'there']])
->numbers->toEqual([1, 2, 3, 4])->each->toBeInt->toBeLessThan(5)
->words->each(function ($word) {
->words->each(function ($word): void {
$word->toBeString()->not->toBeInt();
});
});
it('works inside of each', function () {
it('works inside of each', function (): void {
expect(['books' => [['title' => 'Foo', 'cost' => 20], ['title' => 'Bar', 'cost' => 30]]])
->books->each(function ($book) {
->books->each(function ($book): void {
$book->title->not->toBeNull->cost->toBeGreaterThan(19);
});
});
it('works with sequence', function () {
it('works with sequence', function (): void {
expect(['books' => [['title' => 'Foo', 'cost' => 20], ['title' => 'Bar', 'cost' => 30]]])
->books->sequence(
function ($book) {
function ($book): void {
$book->title->toEqual('Foo')->cost->toEqual(20);
},
function ($book) {
function ($book): void {
$book->title->toEqual('Bar')->cost->toEqual(30);
},
);
});
it('can compose complex expectations', function () {
it('can compose complex expectations', function (): void {
expect(['foo' => 'bar', 'numbers' => [1, 2, 3, 4]])
->toContain('bar')->toBeArray()
->numbers->toEqual([1, 2, 3, 4])->not()->toEqual('bar')->each->toBeInt
@@ -52,23 +52,23 @@ it('can compose complex expectations', function () {
->numbers->toBeArray();
});
it('works with objects', function () {
it('works with objects', function (): void {
expect(new HasProperties)
->name->toEqual('foo')->not->toEqual('world')
->posts->toHaveCount(2)->each(function ($post) {
->posts->toHaveCount(2)->each(function ($post): void {
$post->is_published->toBeTrue();
})
->posts->sequence(
function ($post) {
function ($post): void {
$post->title->toEqual('Foo');
},
function ($post) {
function ($post): void {
$post->title->toEqual('Bar');
},
);
});
it('works with nested properties', function () {
it('works with nested properties', function (): void {
expect(new HasProperties)
->nested->foo->bar->toBeString()->toEqual('baz')
->posts->toBeArray()->toHaveCount(2);