Chaining asserts with Beberlei Assert

Code
<?php

use Assert\AssertionChain;

$assertValue = function ($value) {
    try {
        $assert = new AssertionChain($value);
        $assert->integer()
            ->choice([42, 0, 7])
            ->same(42);
        echo $value . ' is okay. You shall pass' . PHP_EOL;
    } catch (Exception $e) {
        echo $e->getMessage() . PHP_EOL;
    }
};

$assertValue(42);
$assertValue(7);
$assertValue(9);
$assertValue('42');
Result
42 is okay. You shall pass
Value "7" is not the same as expected value "42".
Value "9" is not an element of the valid values: 42, 0, 7
Value "42" is not an integer.
Used Versions
PHP 8.3, Laminas MVC 3.2, Symfony 5.2, Laravel 8.28, PHPUnit 9.5, Doctrine ORM 2.8