[devel] test perl packages [2]
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Ср Авг 4 03:18:57 MSD 2004
У меня созрела ещё одна процедура, которая до некоторой степени
позволяет убдиться в том, что после обновления перла ничего не
сломается.
0) будем использовать макрос myrpm, который работает с каталогом ~/MYRPM
вместо ~/RPM.
$ alias myrpm='rpm --define "_topdir %homedir/MYRPM"'
1) Ставим в систему (почти) все перловые модули, примерно вот так вот:
$ cd ~Sisyphus/files/i586/RPMS
$ sudo apt-get install `rpm -qp --qf '%{NAME}\n' perl-*.rpm | grep -v GD1 | grep -v LibXML-Common`
2) Распаковываем все перловые исходные пакеты:
$ cd ~Sisyphus/files/SRPMS
$ myrpm -ivh perl-*.rpm
3) Разворачиваем исходники:
$ cd ~/MYRPM/SPECS
$ rm -f perl58.spec
$ myrpm -bp --nodeps *.spec
4) Запускаем скрипт run-perl-tests и сохраняем его вывод.
$ cd ~/MYRPM/BUILD
$ DISPLAY=:0 run-perl-tests 2>&1 | tee perl-tests-5.8.4
5) Обновлям перл.
6) Запускаем скрипт run-perl-tests и сохраняем его вывод.
$ cd ~/MYRPM/BUILD
$ DISPLAY=:0 run-perl-tests 2>&1 | tee perl-tests-5.8.5
7) Смотрим, отвалилось ли что-нибудь, на основе diff'а от двух выводов скрипта
$ cd ~/MYRPM/BUILD
$ vimdiff perl-tests-5.8.{4,5}
Скрипт run-perl-tests ищет каталоги t, файлы test.pl и выполняет
соответствующие тестовые процедуры.
----------- следующая часть -----------
#!/usr/bin/perl
use strict;
use File::Find qw(find);
$ENV{PERL_DL_NONLAZY} = $ENV{LD_BIND_NOW} = 1;
my $RC;
sub wanted {
my $rc;
if ($_ eq "t" && -d $_) {
my @tests = <t/*.t>;
@tests or return;
print "TestDir $File::Find::name\n";
system "mkdir -p blib/lib blib/arch";
$rc = system $^X,
qw(-MExtUtils::Command::MM -e test_harness) , @tests;
} elsif ($_ eq "test.pl" && -f $_) {
print "TestFile $File::Find::name\n";
system "mkdir -p blib/lib blib/arch";
$rc = system $^X, "test.pl";
}
$RC ||= $rc;
}
find \&wanted => ".";
exit $RC;
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20040804/ad83050e/attachment-0001.bin>
Подробная информация о списке рассылки Devel