Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Async Test Utilities Laravel Package

wyrihaximus/async-test-utilities

Async test utilities for PHP that provide a TestCase with random namespaces and directories, fiber-based test execution with a configurable TimeOut attribute, and callable expectation helpers for ReactPHP async tests.

View on GitHub
Deep Wiki
Context7
14.1.0

14.1.0

  • Total issues resolved: 0
  • Total pull requests resolved: 3
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

14.0.0

14.0.0

  • Total issues resolved: 0
  • Total pull requests resolved: 3
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

13.5.2

13.5.2

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

13.5.1

13.5.1

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

13.4.1

13.4.1

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

13.4.0

13.4.0

  • Total issues resolved: 0
  • Total pull requests resolved: 3
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

13.3.0

13.3.0

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

13.2.0

13.2.0

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

13.1.0

13.1.0

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

10.6.0

10.6.0

  • Total issues resolved: 0
  • Total pull requests resolved: 3
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

10.4.0

10.4.0

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

10.3.0

10.3.0

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

10.2.0

10.2.0

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

10.0.0

Starting this major release when adding running composer install/update with this package, and wyrihaximus/makefiles in your require-dev. The following bit in composer.json:

  "scripts": {
    "post-install-cmd": [
      "composer normalize",
      "composer update --lock --no-scripts"
    ],
    "post-update-cmd": [
      "composer normalize",
      "composer update --lock --no-scripts"
    ]
  }

Will be replaced with:

  "scripts": {
    "post-install-cmd": [
      "composer normalize",
      "make on-install-or-update || true"
    ],
    "post-update-cmd": [
      "composer normalize",
      "make on-install-or-update || true"
    ]
  }

If neither of those scripts blocks are found, they will be created and make on-install-or-update || true will be put in each of those.

AFAIK I'm the only one using this package, plus the orgs I use it in. Adding this here to make sure that other that use it are aware of this impactful change.

10.0.0

  • Total issues resolved: 0
  • Total pull requests resolved: 8
  • Total contributors: 3

Dependencies ๐Ÿ“ฆ

9.4.2

9.4.2

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

9.4.1

9.4.1

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

9.4.0

9.4.0

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

9.3.0

9.3.0

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

9.2.0

9.2.0

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 2

Dependencies ๐Ÿ“ฆ

9.1.0

9.1.0

  • Total issues resolved: 0
  • Total pull requests resolved: 3
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

8.0.5

8.0.5

  • Total issues resolved: 0
  • Total pull requests resolved: 6
  • Total contributors: 2

Dependencies ๐Ÿ“ฆ

8.0.4

8.0.4

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 2

Dependencies ๐Ÿ“ฆ

Enhancement โœจ

8.0.3

8.0.3

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

8.0.2

8.0.2

  • Total issues resolved: 0
  • Total pull requests resolved: 2
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

8.0.1

8.0.1

  • Total issues resolved: 0
  • Total pull requests resolved: 4
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ

7.2.0

:tada: Promise v3 :tada:

7.2.0

  • Total issues resolved: 0
  • Total pull requests resolved: 4
  • Total contributors: 2

Bug ๐Ÿž,Dependencies ๐Ÿ“ฆ

Dependencies ๐Ÿ“ฆ

Dependencies ๐Ÿ“ฆ,Enhancement โœจ

7.1.0

7.1.0

  • Total issues resolved: 0
  • Total pull requests resolved: 4
  • Total contributors: 2

Dependencies ๐Ÿ“ฆ

Enhancement โœจ

7.0.3

7.0.3

  • Total issues resolved: 0
  • Total pull requests resolved: 3
  • Total contributors: 2

Dependencies ๐Ÿ“ฆ

Enhancement โœจ

7.0.2

7.0.2

  • Total issues resolved: 0
  • Total pull requests resolved: 11
  • Total contributors: 3

Dependencies ๐Ÿ“ฆ,JSON ๐Ÿ‘จโ€๐Ÿ’ผ,PHP ๐Ÿ˜

CI ๐Ÿšง,Configuration โš™,YAML ๐Ÿ„

Dependencies ๐Ÿ“ฆ,PHP ๐Ÿ˜

Dependencies ๐Ÿ“ฆ,JSON ๐Ÿ‘จโ€๐Ÿ’ผ,NEON ๐Ÿฆนโ€โ™‚๏ธ,PHP ๐Ÿ˜,Source ๐Ÿ”ฎ,Tests ๐Ÿงช

Configuration โš™,YAML ๐Ÿ„

Configuration โš™,JSON ๐Ÿ‘จโ€๐Ÿ’ผ

7.0.1

7.0.1

  • Total issues resolved: 0
  • Total pull requests resolved: 1
  • Total contributors: 1

Dependencies ๐Ÿ“ฆ,JSON ๐Ÿ‘จโ€๐Ÿ’ผ,PHP ๐Ÿ˜

7.0.0

This release drops all deprecated await methods. Use the await and other related functions directly.

Major new feature in this release:

Since all tests are executed inside a fiber, there is a default timeout of 30 seconds. To lower or raise that timeout this package comes with a TimeOut attribute. It can be set on the class and method level. When set on both the method level it takes priority over the class level.

<?php

declare(strict_types=1);

namespace WyriHaximus\Tests\AsyncTestUtilities;

use ReactventLoop\Loop;
use WyriHaximus\AsyncTestUtilities\AsyncTestCase;
use WyriHaximus\AsyncTestUtilities\TimeOut;

use function React\Asyncsync;
use function React\Asyncwait;
use function React\Promise
esolve;
use function React\Promise\Timer\sleep;
use function time;

#[TimeOut(0.3)]
final class AsyncTestCaseTest extends AsyncTestCase
{
    #[TimeOut(1)]
    public function testAllTestsAreRanInAFiber(): void
    {
        self::expectOutputString('ab');

        Loop::futureTick(async(static function (): void {
            echo 'a';
        }));

        await(sleep(1));

        echo 'b';
    }

    public function testExpectCallableExactly(): void
    {
        $callable = $this->expectCallableExactly(3);

        Loop::futureTick($callable);
        Loop::futureTick($callable);
        Loop::futureTick($callable);
    }

    public function testExpectCallableOnce(): void
    {
        Loop::futureTick($this->expectCallableOnce());
    }
}

7.0.0

  • Total issues resolved: 0
  • Total pull requests resolved: 4
  • Total contributors: 1

Deprecations ๐Ÿ‘‹,NEON ๐Ÿฆนโ€โ™‚๏ธ,PHP ๐Ÿ˜,Source ๐Ÿ”ฎ

Configuration โš™,YAML ๐Ÿ„

Deprecations ๐Ÿ‘‹,NEON ๐Ÿฆนโ€โ™‚๏ธ,PHP ๐Ÿ˜,Source ๐Ÿ”ฎ,Tests ๐Ÿงช

Dependencies ๐Ÿ“ฆ,Documentation ๐Ÿ“š,Enhancement โœจ,Feature ๐Ÿ—,JSON ๐Ÿ‘จโ€๐Ÿ’ผ,MarkDown ๐Ÿ“,NEON ๐Ÿฆนโ€โ™‚๏ธ,PHP ๐Ÿ˜,Source ๐Ÿ”ฎ,Tests ๐Ÿงช

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core