Re: [PATCH v6] gitweb: add test suite with Test::WWW::Mechanize::CGI
- From
Jakub Narebski <jnareb@gmail.com>
- Date
- Jun 24, 2008, 09:23 UTC
- Message-ID
- <200806241123.42456.jnareb@gmail.com>
- In-Reply-To
- <7vtzfjea64.fsf@gitster.siamese.dyndns.org>
On Tue, 24 Jun 2008, Junio C Hamano wrote:
> About the Test::WWW::Mechanize::CGI thing, how widely available is it? > I do not think it is packaged for Debian nor Ubuntu, for example.
Not very widely; practically you have to install it from CPAN. Test::WWW::Mechanize::CGI is at v0.1, WWW::Mechanize::CGI is at v0.3.
But if Test::WWW::Mechanize::CGI is not installed, test would be not run. If you are gitweb developer, then installing locally in $HOME from CPAN is I guess viable option; if you are not gitweb developer, we still have t/t9500-gitweb-standalone-no-errors.sh
The whole point of using those packages was that it makes it _easy_ to write those tests. This consist of two parts:
1). running gitweb as if it was CGI application, which otherwise would either require deep knowledge of how CGI application is invoked (what it is in WWW::Mechanize::CGI and required dependence HTTP::Request::AsCGI which I think does all the work) or working web server, done a la "git instaweb",
2.) accessing and testing gitweb output (what Test::WWW::Mechanize, WWW::Mechanize does; we could do the same with LWP* modules from libwww-perl / perl-libwww-perl package and Test::More from Perl, but it would be repeating Test::WWW::Mechanize work).
-- Jakub Narebski Poland