toBeInstanceOf(StockAmount::class) ->and($amount->value)->toBe($value); }); it('accepts a zero value', function (): void { // WHEN $amount = new StockAmount(0); // THEN expect($amount->value)->toBe(0); }); it('rejects a negative value', function (): void { // WHEN $action = fn (): StockAmount => new StockAmount(-1); // THEN expect($action)->toThrow(\DomainException::class, 'Stock Amount should be positive.'); }); });