sven/laravel-view-assertions

Assert things about your Laravel views in your PHPUnit tests

v1.2.0 2023-07-25 14:34 UTC

This package is auto-updated.

Last update: 2024-03-26 15:45:05 UTC


README

Laravel View Assertions

Laravel View Assertions

Latest Version on Packagist Total Downloads Software License Build Status StyleCI

The missing assertions for your views in your Laravel applications.

Installation

You'll have to follow a couple of simple steps to install this package.

Downloading

Via composer:

$ composer require sven/laravel-view-assertions --dev

Or add the package to your dependencies in composer.json and run composer update on the command line to download the package:

{
    "require-dev": {
        "sven/laravel-view-assertions": "^1.1"
    }
}

Usage

This package exposes a single trait: \Sven\LaravelViewAssertions\InteractsWithViews. When you use this trait in your tests as below, you'll get access to several assertions:

<?php

use Sven\LaravelViewAssertions\InteractsWithViews;
use Illuminate\Foundation\Testing\TestCase;

class ExampleTest extends TestCase
{
    use InteractsWithViews;

    public function test_it_creates_a_view()
    {
        // ...
        
        $this->assertViewExists('some.view-file');
        $this->assertViewsExist(['posts.index', 'posts.show']);
    }

    public function test_it_does_not_create_a_view()
    {
        // ...
        
        $this->assertViewDoesNotExist('some.view-file');
        $this->assertViewsDoNotExist(['posts.edit', 'posts.create']);
    }

    public function test_the_view_equals()
    {
        // ...
        
        $this->assertViewEquals('The Expected Contents', 'index');
    }

    public function test_the_view_does_not_equal()
    {
        // ...
        
        $this->assertViewDoesNotEqual('This Is Not The Content You\'re Looking For', 'index');
    }
}

Contributing

All contributions (pull requests, issues and feature requests) are welcome. Make sure to read through the CONTRIBUTING.md first, though. See the contributors page for all contributors.

License

sven/laravel-view-assertions is licensed under the MIT License (MIT). Please see the license file for more information.