Download the PHP package nicolasguilloux/phpunit-dependency-injection-bundle without Composer

On this page you can find all versions of the php package nicolasguilloux/phpunit-dependency-injection-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package phpunit-dependency-injection-bundle

:toc: macro :toc-title: :toclevels: 2 :sectnums: :sectnumlevels: 2

image:https://img.shields.io/packagist/v/NicolasGuilloux/phpunit-dependency-injection-bundle[link="https://packagist.org/packages/NicolasGuilloux/phpunit-dependency-injection-bundle",window="_blank"] image:https://github.com/NicolasGuilloux/phpunit-dependency-injection-bundle/workflows/Tests/badge.svg[link="https://github.com/NicolasGuilloux/phpunit-dependency-injection-bundle/actions",window="_blank"] image:https://coveralls.io/repos/github/NicolasGuilloux/phpunit-dependency-injection-bundle/badge.svg?branch=master[link="https://coveralls.io/github/NicolasGuilloux/phpunit-dependency-injection-bundle?branch=master",window="_blank"] image:https://api.codeclimate.com/v1/badges/e919cdfbba03e591a67e/maintainability[link="https://codeclimate.com/github/NicolasGuilloux/phpunit-dependency-injection-bundle/maintainability",window="_blank"] image:https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat[link="https://github.com/NicolasGuilloux/phpunit-dependency-injection-bundle/issues",window="_blank"] image:https://img.shields.io/badge/license-MIT-blue.svg[link="LICENSE",window="_blank"] image:https://img.shields.io/badge/PHP-7.3%2B-yellow[] image:https://img.shields.io/badge/Symfony-4%2B-black[] image:https://img.shields.io/badge/Symfony-5%2B-black[]

Short description

[discrete] == Table of content

toc::[]

== Installation

Execute the composer command to install the bundle:

[source,bash]

composer require nicolasguilloux/phpunit-dependency-injection-bundle --dev

Now add the configuration for the test environment and change it to your needs:

[source,yaml]

phpunit_dependency_injection: tests_namespace: 'App\Tests'

Now, it is just a matter of implementing the trait in the corresponding test in the setUp method.

Warning: Note that the class is still a TestCase, so you won't be able to use the constructor to inject dependencies. This is where the Required annotation/attribute becomes handy. Checkout the link:https://symfony.com/doc/current/service_container/calls.html[Symfony's documentation^].

[source,php]

use NicolasGuilloux\PhpunitDependencyInjectionBundle\TestCase\AutowiringTestTrait; use Psr\Log\LoggerInterface; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; use Symfony\Contracts\Service\Attribute\Required;

final class RandomTest extends KernelTestCase { use AutowiringTestTrait;

#[Required]
public LoggerInterface $logger;

public function setUp(): void
{
    parent::setUp();

    self::bootKernel();
    $this->autowire(self::getContainer());
}

public function testSomething(): void
{
    self::assertInstanceOf(LoggerInterface::class, $this->logger);
}

}

== Motivations

Checkout the link:./docs/Motivations.adoc[Motivations article].

== Documentation

=== link:docs/Configuration.adoc[Configuration]

== Versioning

phpunit-dependency-injection-bundle follows link:https://semver.org/[semantic versioning^]. In short the scheme is MAJOR.MINOR.PATCH where

  1. MAJOR is bumped when there is a breaking change,
  2. MINOR is bumped when a new feature is added in a backward-compatible way,
  3. PATCH is bumped when a bug is fixed in a backward-compatible way.

Versions bellow 1.0.0 are considered experimental and breaking changes may occur at any time.

== Contributing

Contributions are welcomed! There are many ways to contribute, and we appreciate all of them. Here are some of the major ones:

As a reminder, all contributors are expected to follow our link:./CODE_OF_CONDUCT.md[Code of Conduct].

== License

phpunit-dependency-injection-bundle is distributed under the terms of the MIT license.

See link:./LICENSE[LICENSE] for details.

== Hacking

You might use Docker and docker-compose to hack the project. Check out the following commands.

[source,bash]

Start the project

docker-compose up -d

Install dependencies

docker-compose exec application composer install

Run tests

docker-compose exec application bin/phpunit

Run a bash within the container

docker-compose exec application bash


All versions of phpunit-dependency-injection-bundle with dependencies

PHP Build Version
Package Version
Requires php Version ^8.0 || ^7.4
haydenpierce/class-finder Version ^0.4
symfony/config Version ^3.0 || ^4.0 || ^5.0 || ^6.0
symfony/dependency-injection Version ^3.0 || ^4.0 || ^5.0 || ^6.0
symfony/http-kernel Version ^3.0 || ^4.0 || ^5.0 || ^6.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package nicolasguilloux/phpunit-dependency-injection-bundle contains the following files

Loading the files please wait ....