Now testing ascending/descending order of items properly.
[agg.git] / tests_usr / sample.sh
blob5c2618acac74a4635a48597c97ace915396445a0
1 #!/bin/sh
2 # Copyright (C) 2011 Andreas Waidler <arandes@programmers.at>
4 # DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
5 # TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
7 # 0. You just DO WHAT THE FUCK YOU WANT TO.
9 . ./libtests.sh
11 feed_exists() { assert_exists feed; }
12 feed_empty() { assert_empty feed; }
13 feed_date() { assert_date feed 1286052203; }
14 item1_exists() { assert_exists "feed/Item 1"; }
15 item2_exists() { assert_exists "feed/Item 2"; }
16 item3_exists() { assert_exists "feed/Item 3"; }
17 item1_date() { assert_date "feed/Item 1" 1286052203; }
18 item2_date() { assert_date "feed/Item 2" 1270203000; }
19 item3_date() { assert_date "feed/Item 3" 1270119246; }
20 item1_title() { assert_value "feed/Item 1" title "Item 1"; }
21 item2_title() { assert_value "feed/Item 2" title "Item 2"; }
22 item3_title() { assert_value "feed/Item 3" title "Item 3"; }
23 item1_desc() { assert_value "feed/Item 1" desc "Random item."; }
24 item2_desc() { assert_value "feed/Item 2" desc "Not so random item."; }
25 item3_desc() { assert_value "feed/Item 3" desc "No item."; }
26 item1_link() { assert_value "feed/Item 1" link "/dev/random"; }
27 item2_link() { assert_value "feed/Item 2" link "/dev/urandom"; }
28 item3_link() { assert_value "feed/Item 3" link "/dev/null"; }
30 test_sample()
32 echo "Running agg on sample feed ($1) (directory missing)..."
33 agg_run "sample_$1.rss"
34 t feed_exists
35 t feed_date
36 t item1_exists
37 t item2_exists
38 t item3_exists
39 t item1_date
40 t item2_date
41 t item3_date
42 t item1_title
43 t item2_title
44 t item3_title
45 t item1_desc
46 t item2_desc
47 t item3_desc
48 t item1_link
49 t item2_link
50 t item3_link
52 echo "Running agg sample feed ($1) (up to date) ..."
53 agg_run "sample_$1.rss"
54 t feed_exists
55 t feed_date
56 t item1_exists
57 t item2_exists
58 t item3_exists
59 t item1_date
60 t item2_date
61 t item3_date
62 t item1_title
63 t item2_title
64 t item3_title
65 t item1_desc
66 t item2_desc
67 t item3_desc
68 t item1_link
69 t item2_link
70 t item3_link
72 echo "Deleting old news..."
73 agg_clean feed
74 t feed_exists
75 t feed_date
76 t feed_empty
78 echo "Running agg on sample feed ($1) (directory up to date but empty)..."
79 agg_run "sample_$1.rss"
80 t feed_exists
81 t feed_date
82 t feed_empty
84 echo "Changing mtime..."
85 touch -md "1970-01-01 00:00:00.000000000 +0000" feed
87 echo "Running agg on sample feed ($1) (directory outdated and empty)..."
88 agg_run "sample_$1.rss"
89 t feed_exists
90 t feed_date
91 t item1_exists
92 t item2_exists
93 t item3_exists
94 t item1_date
95 t item2_date
96 t item3_date
97 t item1_title
98 t item2_title
99 t item3_title
100 t item1_desc
101 t item2_desc
102 t item3_desc
103 t item1_link
104 t item2_link
105 t item3_link
108 test_sample descending
109 rm -rf feed
110 test_sample ascending