2014-02-24 2 views
5

Wenn ./Build testcover ausgeführt wird, um die Codeabdeckung zu testen, gibt es eine Möglichkeit, dass ich eine Art Option für die Verwendung meines eigenen Stylesheets übergeben kann, vielleicht als Überschreibung?Wie kann ich das CSS von Devel :: Cover in Perl ändern?

Ich habe dieCPAN-Dokumentation vergeblich angeschaut.

Antwort

4

Mit Blick auf die Quelle von Devel::Cover::Report::Html_minimal scheint es, dass Sie Ihr eigenes Berichtsformat erstellen müssten, indem Sie das Unterklassen bilden und print_stylesheet() überschreiben, um zu tun, was Sie wollen. Das ist der "einfache" Teil ...

Als nächstes müssten Sie Module::Build verwenden, um Ihr benutzerdefiniertes Berichtsformat zu verwenden, wenn cover ausgeführt wird. Erneut betrachtet die Aktion in Module::Build einfach $self->do_system('cover') und da das Skript cover nicht erlaubt, das Berichtsformat mit einer Umgebungsvariablen zu überschreiben, müssten Sie ACTION_testcover() in der Bauklasse für das angegebene Modul überschreiben .

Es scheint, als ob nur die Standard-CSS-Datei nach dem Ausführen von ./Build testcover gemangelt wird, wie in einer anderen Antwort vorgeschlagen, ist eine viel einfachere Lösung.

+0

Dies als die richtige Antwort zu markieren, seit ich mit Unterklassen und Überschreiben ging. – ardavis

5

Die CSS-Datei lautet cover_db/cover.css. Änderung nach Belieben.

+0

Ja, das habe ich mir schon gedacht, aber es scheint klebrig zu sein, die erzeugte CSS-Datei zu ändern. Es wäre schön, wenn 'Devel :: Cover' ein zusätzliches Override-Stylesheet akzeptieren würde. – ardavis

+0

Sie könnten die HTML-Dateien immer in ein Verzeichnis mit der korrigierten CSS-Datei kopieren. – ikegami

Verwandte Themen