]> diplodocus.org Git - flac-archive/blob - t/mp3cd/plan.t
4e1343d2e9c0437074fde71777f2a5899c218b49
[flac-archive] / t / mp3cd / plan.t
1 use v5.12;
2 use warnings;
3
4 use Test::More tests => 3;
5
6 use Test::Differences;
7
8 use FindBin;
9
10 use lib "$FindBin::Bin/../..";
11
12 require 'fa-mp3cd';
13
14 my @Rising = (
15 { TITLE => ['Tarot Woman'] },
16 { TITLE => ['Run With the Wolf'] },
17 );
18 for (my $i = 0; $i < @Rising; $i++) {
19 my $n = $i + 1;
20 $Rising[$i] = [
21 "$n.flac",
22 {
23 TRACKNUMBER => [$n],
24 ARTIST => ['Rainbow'],
25 ALBUM => ['Rising'],
26 DATE => ['1976-05-17'],
27 %{$Rising[$i]},
28 }];
29 }
30
31 eq_or_diff
32 [
33 {
34 dir => './Rising',
35 flac => '1.flac',
36 filename => '01_Tarot_Woman.mp3',
37 tags => {
38 artist => 'Rainbow',
39 album => 'Rising',
40 date => '1976-05-17',
41 discnumber => [],
42 tracknumber => 1,
43 title => 'Tarot Woman',
44 }
45 },
46 {
47 dir => './Rising',
48 flac => '2.flac',
49 filename => '02_Run_With_the_Wolf.mp3',
50 tags => {
51 artist => 'Rainbow',
52 album => 'Rising',
53 date => '1976-05-17',
54 discnumber => [],
55 tracknumber => 2,
56 title => 'Run With the Wolf',
57 }
58 },
59 ],
60 [epg::flac::archive::mp3::cd::plan('.', @Rising)];
61
62 eq_or_diff
63 [
64 {
65 dir => 'a/b/fakeal',
66 flac => 'file.flac',
67 filename => '01_faket.mp3',
68 tags => {
69 artist => 'fakear',
70 album => 'fakeal',
71 date => 0,
72 discnumber => [],
73 tracknumber => 1,
74 title => 'faket',
75 }
76 }
77 ],
78 [
79 epg::flac::archive::mp3::cd::plan(
80 'a/b',
81 ['file.flac', {
82 ARTIST => ['fakear'],
83 ALBUM => ['fakeal'],
84 DATE => [0],
85 TRACKNUMBER => [1],
86 TITLE => ['faket'],
87 }],
88 )],
89 'relative work directory';
90
91 eq_or_diff
92 [
93 {
94 dir => '/a/b/fakeal',
95 flac => 'file.flac',
96 filename => '01_faket.mp3',
97 tags => {
98 artist => 'fakear',
99 album => 'fakeal',
100 date => 0,
101 discnumber => [],
102 tracknumber => 1,
103 title => 'faket',
104 }
105 }
106 ],
107 [
108 epg::flac::archive::mp3::cd::plan(
109 '/a/b',
110 ['file.flac', {
111 ARTIST => ['fakear'],
112 ALBUM => ['fakeal'],
113 DATE => [0],
114 TRACKNUMBER => [1],
115 TITLE => ['faket'],
116 }],
117 )],
118 'absolute work directory';