source: ProjectBuilder/0.15.3/pb-modules/t/Conf.t@ 2608

Last change on this file since 2608 was 2608, checked in by Bruno Cornec, 4 years ago

Improve cleanup for tests

File size: 2.0 KB
Line 
1#!/usr/bin/perl -w
2#
3# Tests ProjectBuilder::Conf functions
4
5use strict;
6use ProjectBuilder::Version;
7use ProjectBuilder::Base;
8use ProjectBuilder::Conf;
9use ProjectBuilder::Distribution;
10
11my $res;
12eval
13{
14 require Test::More;
15 Test::More->import();
16 $res = $@;
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
24if ($res) {
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
33my $nt = 0;
34
35$ENV{'TMPDIR'} = "/tmp";
36pb_temp_init();
37
38my ($projectbuilderver,$projectbuilderrev,$projectbuilderconfver) = pb_version_init();
39
40pb_conf_init("test");
41open(FILE,"> $ENV{'TMPDIR'}/conf.yml") || die "Unable to create $ENV{'TMPDIR'}/conf.yml";
42if ($projectbuilderconfver < 1) {
43 # Old conf file format
44 # should be in alphabetic order
45 print FILE "colon mageia-3-x86_64 = ex: test\n";
46 print FILE "percent mageia-3-x86_64 = %check\n";
47 print FILE "truc mageia-4-x86_64 = la tete a toto\n";
48 print FILE "yorro mageia-3-x86_64 = tartampion\n";
49 print FILE "zz mageia-3-x86_64 =\n";
50} else {
51 print FILE "---\n";
52 print FILE "colon:\n";
53 print FILE " mageia-3-x86_64: 'ex: test'\n";
54 print FILE "percent:\n";
55 print FILE " mageia-3-x86_64: '%check'\n";
56 print FILE "truc:\n";
57 print FILE " mageia-4-x86_64: la tete a toto\n";
58 print FILE "yorro:\n";
59 print FILE " mageia-3-x86_64: tartampion\n";
60 print FILE "zz:\n";
61 print FILE " mageia-3-x86_64: ''\n";
62}
63close(FILE);
64my $cnt = pb_get_content("$ENV{'TMPDIR'}/conf.yml");
65
66my %h;
67my $h = \%h;
68$h = pb_conf_cache("$ENV{'TMPDIR'}/conf.yml",$h);
69pb_conf_write("$ENV{'TMPDIR'}/test.yml",$h);
70my $content = pb_get_content("$ENV{'TMPDIR'}/test.yml");
71is($cnt, $content, "pb_conf_write Test");
72$nt++;
73unlink("$ENV{'TMPDIR'}/conf.yml");
74unlink("$ENV{'TMPDIR'}/test.yml");
75
76done_testing($nt);
Note: See TracBrowser for help on using the repository browser.