1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/tests/qualifiers.py Sat Oct 04 00:06:07 2014 +0200
1.3 @@ -0,0 +1,305 @@
1.4 +#!/usr/bin/env python
1.5 +
1.6 +from vRecurrence import *
1.7 +
1.8 +def show(l):
1.9 + for x in l:
1.10 + print x
1.11 + print
1.12 +
1.13 +qualifiers = [
1.14 + ("YEARLY", {"interval" : 1})
1.15 + ]
1.16 +
1.17 +l = order_qualifiers(qualifiers)
1.18 +show(l)
1.19 +dt = (1997, 11, 2)
1.20 +l = get_datetime_structure(dt)
1.21 +show(l)
1.22 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.23 +show(l)
1.24 +
1.25 +s = process(l)
1.26 +l = s.materialise((2003, 12, 24))
1.27 +print len(l) == 7, len(l)
1.28 +print l[0] == (1997, 11, 2), l[0]
1.29 +print l[-1] == (2003, 11, 2), l[-1]
1.30 +print
1.31 +
1.32 +qualifiers = [
1.33 + ("YEARLY", {"interval" : 2}),
1.34 + ("BYMONTH", {"values" : [1]}),
1.35 + ("BYDAY", {"values" : [6]}),
1.36 + ("BYHOUR", {"values" : [8, 9]}),
1.37 + ("BYMINUTE", {"values" : [30]})
1.38 + ]
1.39 +
1.40 +l = order_qualifiers(qualifiers)
1.41 +show(l)
1.42 +dt = (1997, 1, 5, 8, 30, 0)
1.43 +l = get_datetime_structure(dt)
1.44 +show(l)
1.45 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.46 +show(l)
1.47 +
1.48 +s = process(l)
1.49 +l = s.materialise((2003, 12, 24, 0, 0, 0))
1.50 +print len(l) == 34, len(l)
1.51 +print l[0] == (1997, 1, 4, 8, 30, 0), l[0]
1.52 +print l[-1] == (2003, 1, 25, 9, 30, 0), l[-1]
1.53 +print
1.54 +
1.55 +qualifiers = [
1.56 + ("DAILY", {"interval" : 1})
1.57 + ]
1.58 +
1.59 +l = order_qualifiers(qualifiers)
1.60 +show(l)
1.61 +dt = (1997, 9, 2, 9, 0, 0)
1.62 +l = get_datetime_structure(dt)
1.63 +show(l)
1.64 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.65 +show(l)
1.66 +
1.67 +s = process(l)
1.68 +l = s.materialise((1997, 12, 24), 10)
1.69 +print len(l) == 10, len(l)
1.70 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.71 +print l[-1] == (1997, 9, 11, 9, 0, 0), l[-1]
1.72 +print
1.73 +
1.74 +qualifiers = [
1.75 + ("DAILY", {"interval" : 1})
1.76 + ]
1.77 +
1.78 +l = order_qualifiers(qualifiers)
1.79 +show(l)
1.80 +dt = (1997, 9, 2, 9, 0, 0)
1.81 +l = get_datetime_structure(dt)
1.82 +show(l)
1.83 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.84 +show(l)
1.85 +
1.86 +s = process(l)
1.87 +l = s.materialise((1997, 12, 24, 0, 0, 0))
1.88 +print len(l) == 113, len(l)
1.89 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.90 +print l[-1] == (1997, 12, 23, 9, 0, 0), l[-1]
1.91 +print
1.92 +
1.93 +qualifiers = [
1.94 + ("DAILY", {"interval" : 2})
1.95 + ]
1.96 +
1.97 +l = order_qualifiers(qualifiers)
1.98 +show(l)
1.99 +dt = (1997, 9, 2, 9, 0, 0)
1.100 +l = get_datetime_structure(dt)
1.101 +show(l)
1.102 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.103 +show(l)
1.104 +
1.105 +s = process(l)
1.106 +l = s.materialise((1997, 12, 24, 0, 0, 0))
1.107 +print len(l) == 57, len(l)
1.108 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.109 +print l[-1] == (1997, 12, 23, 9, 0, 0), l[-1]
1.110 +print
1.111 +
1.112 +qualifiers = [
1.113 + ("WEEKLY", {"interval" : 1})
1.114 + ]
1.115 +
1.116 +l = order_qualifiers(qualifiers)
1.117 +show(l)
1.118 +dt = (1997, 9, 2, 9, 0, 0)
1.119 +l = get_datetime_structure(dt)
1.120 +show(l)
1.121 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.122 +show(l)
1.123 +
1.124 +s = process(l)
1.125 +l = s.materialise((1997, 12, 24, 0, 0, 0))
1.126 +print len(l) == 17, len(l)
1.127 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.128 +print l[-1] == (1997, 12, 23, 9, 0, 0), l[-1]
1.129 +print
1.130 +
1.131 +qualifiers = [
1.132 + ("DAILY", {"interval" : 10})
1.133 + ]
1.134 +
1.135 +l = order_qualifiers(qualifiers)
1.136 +show(l)
1.137 +dt = (1997, 9, 2, 9, 0, 0)
1.138 +l = get_datetime_structure(dt)
1.139 +show(l)
1.140 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.141 +show(l)
1.142 +
1.143 +s = process(l)
1.144 +l = s.materialise((1997, 12, 24, 0, 0, 0), 5)
1.145 +print len(l) == 5, len(l)
1.146 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.147 +print l[-1] == (1997, 10, 12, 9, 0, 0), l[-1]
1.148 +print
1.149 +
1.150 +qualifiers = [
1.151 + ("YEARLY", {"interval" : 1}),
1.152 + ("BYMONTH", {"values" : [1]}),
1.153 + ("BYDAY", {"values" : [1, 2, 3, 4, 5, 6, 7]})
1.154 + ]
1.155 +
1.156 +l = order_qualifiers(qualifiers)
1.157 +show(l)
1.158 +dt = (1998, 1, 1, 9, 0, 0)
1.159 +l = get_datetime_structure(dt)
1.160 +show(l)
1.161 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.162 +show(l)
1.163 +
1.164 +s = process(l)
1.165 +l = s.materialise((2000, 1, 31, 14, 0, 0))
1.166 +print len(l) == 93, len(l)
1.167 +print l[0] == (1998, 1, 1, 9, 0, 0), l[0]
1.168 +print l[-1] == (2000, 1, 31, 9, 0, 0), l[-1]
1.169 +print
1.170 +
1.171 +qualifiers = [
1.172 + ("DAILY", {"interval" : 1}),
1.173 + ("BYMONTH", {"values" : [1]})
1.174 + ]
1.175 +
1.176 +l = order_qualifiers(qualifiers)
1.177 +show(l)
1.178 +dt = (1998, 1, 1, 9, 0, 0)
1.179 +l = get_datetime_structure(dt)
1.180 +show(l)
1.181 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.182 +show(l)
1.183 +
1.184 +s = process(l)
1.185 +l = s.materialise((2000, 1, 31, 14, 0, 0))
1.186 +print len(l) == 93, len(l)
1.187 +print l[0] == (1998, 1, 1, 9, 0, 0), l[0]
1.188 +print l[-1] == (2000, 1, 31, 9, 0, 0), l[-1]
1.189 +print
1.190 +
1.191 +qualifiers = [
1.192 + ("WEEKLY", {"interval" : 1})
1.193 + ]
1.194 +
1.195 +l = order_qualifiers(qualifiers)
1.196 +show(l)
1.197 +dt = (1997, 9, 2, 9, 0, 0)
1.198 +l = get_datetime_structure(dt)
1.199 +show(l)
1.200 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.201 +show(l)
1.202 +
1.203 +s = process(l)
1.204 +l = s.materialise((1997, 12, 24, 0, 0, 0), 10)
1.205 +print len(l) == 10, len(l)
1.206 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.207 +print l[-1] == (1997, 11, 4, 9, 0, 0), l[-1]
1.208 +print
1.209 +
1.210 +qualifiers = [
1.211 + ("WEEKLY", {"interval" : 1})
1.212 + ]
1.213 +
1.214 +l = order_qualifiers(qualifiers)
1.215 +show(l)
1.216 +dt = (1997, 9, 2, 9, 0, 0)
1.217 +l = get_datetime_structure(dt)
1.218 +show(l)
1.219 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.220 +show(l)
1.221 +
1.222 +s = process(l)
1.223 +l = s.materialise((1997, 12, 24, 0, 0, 0))
1.224 +print len(l) == 17, len(l)
1.225 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.226 +print l[-1] == (1997, 12, 23, 9, 0, 0), l[-1]
1.227 +print
1.228 +
1.229 +qualifiers = [
1.230 + ("WEEKLY", {"interval" : 2})
1.231 + ]
1.232 +
1.233 +l = order_qualifiers(qualifiers)
1.234 +show(l)
1.235 +dt = (1997, 9, 2, 9, 0, 0)
1.236 +l = get_datetime_structure(dt)
1.237 +show(l)
1.238 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.239 +show(l)
1.240 +
1.241 +s = process(l)
1.242 +l = s.materialise((1998, 2, 20, 0, 0, 0))
1.243 +print len(l) == 13, len(l)
1.244 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.245 +print l[-1] == (1998, 2, 17, 9, 0, 0), l[-1]
1.246 +print
1.247 +
1.248 +qualifiers = [
1.249 + ("WEEKLY", {"interval" : 1}),
1.250 + ("BYDAY", {"values" : [2, 4]})
1.251 + ]
1.252 +
1.253 +l = order_qualifiers(qualifiers)
1.254 +show(l)
1.255 +dt = (1997, 9, 2, 9, 0, 0)
1.256 +l = get_datetime_structure(dt)
1.257 +show(l)
1.258 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.259 +show(l)
1.260 +
1.261 +s = process(l)
1.262 +l = s.materialise((1997, 10, 7, 9, 0, 0))
1.263 +print len(l) == 10, len(l)
1.264 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.265 +print l[-1] == (1997, 10, 2, 9, 0, 0), l[-1]
1.266 +print
1.267 +
1.268 +qualifiers = [
1.269 + ("WEEKLY", {"interval" : 1}),
1.270 + ("BYDAY", {"values" : [2, 4]})
1.271 + ]
1.272 +
1.273 +l = order_qualifiers(qualifiers)
1.274 +show(l)
1.275 +dt = (1997, 9, 2, 9, 0, 0)
1.276 +l = get_datetime_structure(dt)
1.277 +show(l)
1.278 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.279 +show(l)
1.280 +
1.281 +s = process(l)
1.282 +l = s.materialise((1997, 12, 24, 0, 0, 0), 10)
1.283 +print len(l) == 10, len(l)
1.284 +print l[0] == (1997, 9, 2, 9, 0, 0), l[0]
1.285 +print l[-1] == (1997, 10, 2, 9, 0, 0), l[-1]
1.286 +print
1.287 +
1.288 +qualifiers = [
1.289 + ("WEEKLY", {"interval" : 2}),
1.290 + ("BYDAY", {"values" : [1, 3, 5]})
1.291 + ]
1.292 +
1.293 +l = order_qualifiers(qualifiers)
1.294 +show(l)
1.295 +dt = (1997, 9, 1, 9, 0, 0)
1.296 +l = get_datetime_structure(dt)
1.297 +show(l)
1.298 +l = combine_datetime_with_qualifiers(dt, qualifiers)
1.299 +show(l)
1.300 +
1.301 +s = process(l)
1.302 +l = s.materialise((1997, 12, 24, 0, 0, 0))
1.303 +print len(l) == 25, len(l)
1.304 +print l[0] == (1997, 9, 1, 9, 0, 0), l[0]
1.305 +print l[-1] == (1997, 12, 22, 9, 0, 0), l[-1]
1.306 +print
1.307 +
1.308 +# vim: tabstop=4 expandtab shiftwidth=4