Skip to content

A complementary framework for PHPUnit that focuses on simplicity, reusability, and storytelling.

License

Notifications You must be signed in to change notification settings

thenlabs/pyramidal-tests

 
 

Repository files navigation

PyramidalTests

A complementary framework for PHPUnit that focuses on simplicity, reusability, and storytelling.

If you like this project gift us a ⭐.


Documentation.

Installation.

$ composer require --dev thenlabs/pyramidal-tests 2.0.x-dev

This project is still under development.

Example:

<?php
// tests/test-it-is-created-a-product.php

testCase('it is created a product', function () {
    setUp(function () {
        $this->product = new Product();
    });

    test('the product has not name', function () {
        $this->assertEmpty($this->product->getName());
    });

    test('not contains categories', function () {
        $this->assertCount(0, $this->product->getCategories());
    });

    testCase('adds a category to the product', function () {
        setUp(function () {
            $this->category = $this->createMock(Category::class);
            $this->product->addCategory($this->category);
        });

        test('the product contains the category', function () {
            $this->assertContains($this->category, $this->product->getCategories());
        });
    });
});

Executing:

$ ./vendor/bin/pyramidal --testdox

The --testdox argument is optional.

Result:

PyramidalTests 2.x.x by Andy Daniel Navarro Taño and contributors.
PHPUnit 9.5.x by Sebastian Bergmann and contributors.

it is created a product
✔ the product has not name
✔ not contains categories

    adds a category to the product
    ✔ the product contains the category

Time: 00:00.009, Memory: 6.00 MB

OK (3 tests, 3 assertions)

Development.

Running the tests.

$ composer test