Chaining asserts with Beberlei Assert

Code
<?php

use Assert\AssertionChain;

$assertValue = function ($value) {
    try {
        
$assert = new AssertionChain($value);
        
$assert->integer()
            ->
choice([4207])
            ->
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 7.1, Zend 3.0, Symfony 3.2, Laravel 5.2, PHPUnit 5.6, Doctrine 2.6