Skip to content

patrickfroch/ctoadapter

 
 

Repository files navigation

Ctoadapter

PHP >= 8.1 Contao >= 4.13 PHPStan Level 9

Beschreibung

Bei dieser Software handelt es sich um eine Erweiterung für das Open Source CMS Contao. Sie fügt Adapter für die Klassen von Contao hinzu. Die Klassen mit statischen Methoden können in Tests schlecht injiziert werden und eignen sich deshalt nur bedingt für Softwaretests. Mit dieser Erweiterung können die statischen Methoden als Instanzmethoden genutzt und somit in Tests besser verwendet werden.

Autor

Patrick Froch hallo@patrick-froch.de

Lizenz

Die Software wird unter LGPL veröffentlicht. Details sind in der Datei LICENSE zu finden.

Voraussetzungen

  • php: ^8.1
  • contao/core-bundle: ~4.13|^5.0

Installation

Die Installation geschieht über den ContaoManager. Einfach nach esit/ctoadapter suchen und installieren. Aleternativ kann die Erweiterung mit folgendem Befehl über Composer installiert werden:

composer require esit/ctoadapter

Einrichtung

Die Klassen können einfach per Dependency Injection über den Container bezogen werden. Sie haben den gleichen Namen, wie die Originalklassen. Mittels autowiring können die Klassen automatisch injeziert werden.

Der Namespace lautet Esit\Ctoadapter\Classes\Services\Adapter.

Die folgenden Klassen stehen zur Verfügung:

  • Config
  • Controller
  • Database
  • Environment
  • FilesModel
  • Idna
  • Input
  • Message
  • ModuleModel
  • PageModel
  • StringUtil
  • System
  • Validator

Getestete Versionen

Die Erweiterung wurde erfolgreich mit folgenden Kombinationen aus PHP und Contao getestet:

Contao PHP 8.2 PHP 8.3 PHP 8.4 PHP 8.5
Contao 4.13
Contao 5.0
Contao 5.1
Contao 5.2
Contao 5.3
Contao 5.4
Contao 5.5

About

This software is an extension for the open-source CMS Contao. It adds adapters for Contao's classes. Classes with static methods are difficult to inject into tests and are therefore only partially suitable for software testing. This extension allows static methods to be used as instance methods, thus improving their suitability for testing.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • PHP 86.6%
  • Shell 13.4%