[1904] | 1 | #!/usr/bin/perl -w
|
---|
| 2 | #
|
---|
| 3 | # Tests ProjectBuilder::Base functions
|
---|
| 4 |
|
---|
| 5 | use strict;
|
---|
[2275] | 6 | use ProjectBuilder::Version;
|
---|
[1904] | 7 | use ProjectBuilder::Base;
|
---|
| 8 | use ProjectBuilder::Conf;
|
---|
[1905] | 9 | use ProjectBuilder::Distribution;
|
---|
[1904] | 10 |
|
---|
[2275] | 11 | my $res;
|
---|
[1904] | 12 | eval
|
---|
| 13 | {
|
---|
| 14 | require Test::More;
|
---|
| 15 | Test::More->import();
|
---|
[2275] | 16 | $res = $@;
|
---|
[1904] | 17 | my ($tmv,$tmsv) = split(/\./,$Test::More::VERSION);
|
---|
| 18 | if ($tmsv lt 87) {
|
---|
| 19 | die "Test::More is not available in an appropriate version ($tmsv)";
|
---|
| 20 | }
|
---|
| 21 | };
|
---|
| 22 |
|
---|
| 23 | # Test::More appropriate version not found so no test will be performed here
|
---|
[2275] | 24 | if ($res) {
|
---|
[1904] | 25 | require Test;
|
---|
| 26 | Test->import();
|
---|
| 27 | plan(tests => 1);
|
---|
| 28 | print "# Faking tests as Test::More is not available in an appropriate version\n";
|
---|
| 29 | ok(1,1);
|
---|
| 30 | exit(0);
|
---|
| 31 | }
|
---|
| 32 |
|
---|
| 33 | my $nt = 0;
|
---|
| 34 |
|
---|
| 35 | $ENV{'TMPDIR'} = "/tmp";
|
---|
| 36 | pb_temp_init();
|
---|
| 37 |
|
---|
[2276] | 38 | my ($projectbuilderver,$projectbuilderrev,$projectbuilderconfver) = pb_version_init();
|
---|
| 39 |
|
---|
[1904] | 40 | pb_conf_init("test");
|
---|
[1905] | 41 | open(FILE,"> $ENV{'TMPDIR'}/conf.pb") || die "Unable to create $ENV{'TMPDIR'}/conf.pb";
|
---|
[2276] | 42 | if ($projectbuilderconfver < 1) {
|
---|
| 43 | # Old conf file format
|
---|
| 44 | # should be in alphabetic order
|
---|
| 45 | print FILE "truc mageia-4-x86_64 = la tete a toto\n";
|
---|
| 46 | print FILE "yorro mageia-3-x86_64 = tartampion\n";
|
---|
| 47 | print FILE "zz mageia-3-x86_64 = yy\n";
|
---|
| 48 | } else {
|
---|
| 49 | print FILE "---\n";
|
---|
| 50 | print FILE "truc:\n";
|
---|
| 51 | print FILE " mageia-4-x86_64: la tete a toto\n";
|
---|
| 52 | print FILE "yorro:\n";
|
---|
| 53 | print FILE " mageia-3-x86_64: tartampion\n";
|
---|
| 54 | print FILE "zz:\n";
|
---|
[2278] | 55 | print FILE " mageia-3-x86_64: ''\n";
|
---|
[2276] | 56 | }
|
---|
[1905] | 57 | close(FILE);
|
---|
| 58 | my $cnt = pb_get_content("$ENV{'TMPDIR'}/conf.pb");
|
---|
[1904] | 59 |
|
---|
[1905] | 60 | my %h;
|
---|
| 61 | my $h = \%h;
|
---|
| 62 | $h = pb_conf_cache("$ENV{'TMPDIR'}/conf.pb",$h);
|
---|
| 63 | pb_conf_write("$ENV{'TMPDIR'}/test.pb",$h);
|
---|
| 64 | my $content = pb_get_content("$ENV{'TMPDIR'}/test.pb");
|
---|
[1904] | 65 | is($cnt, $content, "pb_conf_write Test");
|
---|
| 66 | $nt++;
|
---|
[1905] | 67 | unlink("$ENV{'TMPDIR'}/conf.pb");
|
---|
| 68 | unlink("$ENV{'TMPDIR'}/test.pb");
|
---|
[1904] | 69 |
|
---|
| 70 | done_testing($nt);
|
---|