5 public class ConfigurationTest
{
6 protected static Configuration config
;
8 public static void set_up () {
9 config
= new
Configuration ();
10 config
.set_test_mode ();
14 public static void empty_test () {
16 assert (!config
.exists ());
18 assert (!config
.exists ());
20 assert (!config
.exists ());
22 assert (!config
.exists ());
25 public static void parse_command_line () {
27 assert (!config
.exists ());
28 string cmd
= "/usr/bin/jackd -R -P79 -p512 -t1000 -dalsa -r48000 -p128 -n2 -D -Cmulti_capture -Pmulti_playback -Xseq";
29 config
.from_command_line (cmd
);
30 assert (config
.exists ());
31 assert (config
.server_command
== "/usr/bin/jackd");
32 assert (config
.realtime
== true);
33 assert (config
.realtime_priority
== 79);
34 assert (config
.driver
== "alsa");
35 assert (config
.sample_rate
== 48000);
36 assert (config
.buffer_size
== 128);
37 assert (config
.periods
== 2);
38 assert (config
.input_device
== "multi_capture");
39 assert (config
.output_device
== "multi_playback");
40 assert (config
.midi_driver
== "seq");
42 string unparsed
= config
.to_command_line ();
43 debug ("unparsing got: '%s'\n", unparsed
);
44 assert (unparsed
== "/usr/bin/jackd --realtime --realtime-priority 79 --driver alsa --rate 48000 --period 128 --nperiods 2 --capture multi_capture --playback multi_playback --midi seq");
45 config
.from_command_line (unparsed
);
46 assert (config
.exists ());
47 assert (config
.server_command
== "/usr/bin/jackd");
48 assert (config
.realtime
== true);
49 assert (config
.realtime_priority
== 79);
50 assert (config
.driver
== "alsa");
51 assert (config
.sample_rate
== 48000);
52 assert (config
.buffer_size
== 128);
53 assert (config
.periods
== 2);
54 assert (config
.input_device
== "multi_capture");
55 assert (config
.output_device
== "multi_playback");
56 assert (config
.midi_driver
== "seq");
57 unparsed
= config
.to_command_line ();
58 debug ("unparsing got: '%s'\n", unparsed
);
59 assert (unparsed
== "/usr/bin/jackd --realtime --realtime-priority 79 --driver alsa --rate 48000 --period 128 --nperiods 2 --capture multi_capture --playback multi_playback --midi seq");
62 static int main (string[] args
) {
64 Test
.add_func ("/jackpanel/configuration/empty", empty_test
);
65 Test
.add_func ("/jackpanel/configuration/parse_command_line", parse_command_line
);
69 Process
.spawn_command_line_sync ("gconftool --shutdown");
70 string test_dir
= Environment
.get_home_dir () + "/.gconf" + config
.root ();
71 Process
.spawn_command_line_sync ("rm -rf " + test_dir
);
76 } //namespace Jackpanel