Added `-[NSArray validateAsPropertyList]` and `-[NSDictionary validateAsPropertyList...
[adiumx.git] / UnitTests / TestDateFormatterStringRepWithInterval.m
blob2640c8fd7350fa298dacb5beb170485686023730
1 #import "TestDateFormatterStringRepWithInterval.h"
2 #import <AIUtilities/AICalendarDateAdditions.h>
3 #import <AIUtilities/AIDateFormatterAdditions.h>
5 @implementation TestDateFormatterStringRepWithInterval
7 //Note: All of these delta values that we pass to NSCalendarDate need to be NEGATIVE, because we're looking to get a string representation of the interval since some time in the past.
8 - (void)testDateFormatterStringRepWithInterval_seconds {
9         NSCalendarDate *now = [NSCalendarDate calendarDate];
10         NSCalendarDate *date = [now
11                 dateByAddingYears:-0
12                            months:-0
13                              days:-0
14                             hours:-0
15                           minutes:-0
16                           seconds:-10];
17         date = [date dateByMatchingDSTOfDate:now];
18         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"10 seconds", @"Unexpected string for time interval");
20 - (void)testDateFormatterStringRepWithInterval_minutes {
21         NSCalendarDate *now = [NSCalendarDate calendarDate];
22         NSCalendarDate *date = [now
23                 dateByAddingYears:-0
24                            months:-0
25                              days:-0
26                             hours:-0
27                           minutes:-10
28                           seconds:-0];
29         date = [date dateByMatchingDSTOfDate:now];
30         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"10 minutes", @"Unexpected string for time interval");
32 - (void)testDateFormatterStringRepWithInterval_minutesSeconds {
33         NSCalendarDate *now = [NSCalendarDate calendarDate];
34         NSCalendarDate *date = [now
35                 dateByAddingYears:-0
36                            months:-0
37                              days:-0
38                             hours:-0
39                           minutes:-10
40                           seconds:-10];
41         date = [date dateByMatchingDSTOfDate:now];
42         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"10 minutes 10 seconds", @"Unexpected string for time interval");
44 - (void)testDateFormatterStringRepWithInterval_hours {
45         NSCalendarDate *now = [NSCalendarDate calendarDate];
46         NSCalendarDate *date = [now
47                 dateByAddingYears:-0
48                            months:-0
49                              days:-0
50                             hours:-10
51                           minutes:-0
52                           seconds:-0];
53         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"10 hours", @"Unexpected string for time interval");
55 - (void)testDateFormatterStringRepWithInterval_hoursSeconds {
56         NSCalendarDate *now = [NSCalendarDate calendarDate];
57         NSCalendarDate *date = [now
58                 dateByAddingYears:-0
59                            months:-0
60                              days:-0
61                             hours:-10
62                           minutes:-0
63                           seconds:-10];
64         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"10 hours 10 seconds", @"Unexpected string for time interval");
66 - (void)testDateFormatterStringRepWithInterval_hoursMinutes {
67         NSCalendarDate *now = [NSCalendarDate calendarDate];
68         NSCalendarDate *date = [now
69                 dateByAddingYears:-0
70                            months:-0
71                              days:-0
72                             hours:-10
73                           minutes:-10
74                           seconds:-0];
75         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"10 hours 10 minutes", @"Unexpected string for time interval");
77 - (void)testDateFormatterStringRepWithInterval_hoursMinutesSeconds {
78         NSCalendarDate *now = [NSCalendarDate calendarDate];
79         NSCalendarDate *date = [now
80                 dateByAddingYears:-0
81                            months:-0
82                              days:-0
83                             hours:-10
84                           minutes:-10
85                           seconds:-10];
86         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"10 hours 10 minutes 10 seconds", @"Unexpected string for time interval");
88 - (void)testDateFormatterStringRepWithInterval_days {
89         NSCalendarDate *now = [NSCalendarDate calendarDate];
90         NSCalendarDate *date = [now
91                 dateByAddingYears:-0
92                            months:-0
93                              days:-5
94                             hours:-0
95                           minutes:-0
96                           seconds:-0];
97         date = [date dateByMatchingDSTOfDate:now];
98         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days", @"Unexpected string for time interval");
100 - (void)testDateFormatterStringRepWithInterval_daysSeconds {
101         NSCalendarDate *now = [NSCalendarDate calendarDate];
102         NSCalendarDate *date = [now
103                 dateByAddingYears:-0
104                            months:-0
105                              days:-5
106                             hours:-0
107                           minutes:-0
108                           seconds:-10];
109         date = [date dateByMatchingDSTOfDate:now];
110         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days 10 seconds", @"Unexpected string for time interval");
112 - (void)testDateFormatterStringRepWithInterval_daysMinutes {
113         NSCalendarDate *now = [NSCalendarDate calendarDate];
114         NSCalendarDate *date = [now
115                 dateByAddingYears:-0
116                            months:-0
117                              days:-5
118                             hours:-0
119                           minutes:-10
120                           seconds:-0];
121         date = [date dateByMatchingDSTOfDate:now];
122         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days 10 minutes", @"Unexpected string for time interval");
124 - (void)testDateFormatterStringRepWithInterval_daysMinutesSeconds {
125         NSCalendarDate *now = [NSCalendarDate calendarDate];
126         NSCalendarDate *date = [now
127                 dateByAddingYears:-0
128                            months:-0
129                              days:-5
130                             hours:-0
131                           minutes:-10
132                           seconds:-10];
133         date = [date dateByMatchingDSTOfDate:now];
134         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days 10 minutes 10 seconds", @"Unexpected string for time interval");
136 - (void)testDateFormatterStringRepWithInterval_daysHours {
137         NSCalendarDate *now = [NSCalendarDate calendarDate];
138         NSCalendarDate *date = [now
139                 dateByAddingYears:-0
140                            months:-0
141                              days:-5
142                             hours:-10
143                           minutes:-0
144                           seconds:-0];
145         date = [date dateByMatchingDSTOfDate:now];
146         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days 10 hours", @"Unexpected string for time interval");
148 - (void)testDateFormatterStringRepWithInterval_daysHoursSeconds {
149         NSCalendarDate *now = [NSCalendarDate calendarDate];
150         NSCalendarDate *date = [now
151                 dateByAddingYears:-0
152                            months:-0
153                              days:-5
154                             hours:-10
155                           minutes:-0
156                           seconds:-10];
157         date = [date dateByMatchingDSTOfDate:now];
158         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days 10 hours 10 seconds", @"Unexpected string for time interval");
160 - (void)testDateFormatterStringRepWithInterval_daysHoursMinutes {
161         NSCalendarDate *now = [NSCalendarDate calendarDate];
162         NSCalendarDate *date = [now
163                 dateByAddingYears:-0
164                            months:-0
165                              days:-5
166                             hours:-10
167                           minutes:-10
168                           seconds:-0];
169         date = [date dateByMatchingDSTOfDate:now];
170         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days 10 hours 10 minutes", @"Unexpected string for time interval");
172 - (void)testDateFormatterStringRepWithInterval_daysHoursMinutesSeconds {
173         NSCalendarDate *now = [NSCalendarDate calendarDate];
174         NSCalendarDate *date = [now
175                 dateByAddingYears:-0
176                            months:-0
177                              days:-5
178                             hours:-10
179                           minutes:-10
180                           seconds:-10];
181         date = [date dateByMatchingDSTOfDate:now];
182         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 days 10 hours 10 minutes 10 seconds", @"Unexpected string for time interval");
184 - (void)testDateFormatterStringRepWithInterval_weeks {
185         NSCalendarDate *now = [NSCalendarDate calendarDate];
186         NSCalendarDate *date = [now
187                 dateByAddingYears:-0
188                            months:-0
189                              days:7 * -5
190                             hours:-0
191                           minutes:-0
192                           seconds:-0];
193         date = [date dateByMatchingDSTOfDate:now];
194         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks", @"Unexpected string for time interval");
196 - (void)testDateFormatterStringRepWithInterval_weeksSeconds {
197         NSCalendarDate *now = [NSCalendarDate calendarDate];
198         NSCalendarDate *date = [now
199                 dateByAddingYears:-0
200                            months:-0
201                              days:7 * -5
202                             hours:-0
203                           minutes:-0
204                           seconds:-10];
205         date = [date dateByMatchingDSTOfDate:now];
206         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 10 seconds", @"Unexpected string for time interval");
208 - (void)testDateFormatterStringRepWithInterval_weeksMinutes {
209         NSCalendarDate *now = [NSCalendarDate calendarDate];
210         NSCalendarDate *date = [now
211                 dateByAddingYears:-0
212                            months:-0
213                              days:7 * -5
214                             hours:-0
215                           minutes:-10
216                           seconds:-0];
217         date = [date dateByMatchingDSTOfDate:now];
218         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 10 minutes", @"Unexpected string for time interval");
220 - (void)testDateFormatterStringRepWithInterval_weeksMinutesSeconds {
221         NSCalendarDate *now = [NSCalendarDate calendarDate];
222         NSCalendarDate *date = [now
223                 dateByAddingYears:-0
224                            months:-0
225                              days:7 * -5
226                             hours:-0
227                           minutes:-10
228                           seconds:-10];
229         date = [date dateByMatchingDSTOfDate:now];
230         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 10 minutes 10 seconds", @"Unexpected string for time interval");
232 - (void)testDateFormatterStringRepWithInterval_weeksHours {
233         NSCalendarDate *now = [NSCalendarDate calendarDate];
234         NSCalendarDate *date = [now
235                 dateByAddingYears:-0
236                            months:-0
237                              days:7 * -5
238                             hours:-10
239                           minutes:-0
240                           seconds:-0];
241         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 10 hours", @"Unexpected string for time interval");
243 - (void)testDateFormatterStringRepWithInterval_weeksHoursSeconds {
244         NSCalendarDate *now = [NSCalendarDate calendarDate];
245         NSCalendarDate *date = [now
246                 dateByAddingYears:-0
247                            months:-0
248                              days:7 * -5
249                             hours:-10
250                           minutes:-0
251                           seconds:-10];
252         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 10 hours 10 seconds", @"Unexpected string for time interval");
254 - (void)testDateFormatterStringRepWithInterval_weeksHoursMinutes {
255         NSCalendarDate *now = [NSCalendarDate calendarDate];
256         NSCalendarDate *date = [now
257                 dateByAddingYears:-0
258                            months:-0
259                              days:7 * -5
260                             hours:-10
261                           minutes:-10
262                           seconds:-0];
263         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 10 hours 10 minutes", @"Unexpected string for time interval");
265 - (void)testDateFormatterStringRepWithInterval_weeksHoursMinutesSeconds {
266         NSCalendarDate *now = [NSCalendarDate calendarDate];
267         NSCalendarDate *date = [now
268                 dateByAddingYears:-0
269                            months:-0
270                              days:7 * -5
271                             hours:-10
272                           minutes:-10
273                           seconds:-10];
274         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 10 hours 10 minutes 10 seconds", @"Unexpected string for time interval");
276 - (void)testDateFormatterStringRepWithInterval_weeksDays {
277         NSCalendarDate *now = [NSCalendarDate calendarDate];
278         NSCalendarDate *date = [now
279                 dateByAddingYears:-0
280                            months:-0
281                              days:7 * -5 + -5
282                             hours:-0
283                           minutes:-0
284                           seconds:-0];
285         date = [date dateByMatchingDSTOfDate:now];
286         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days", @"Unexpected string for time interval");
288 - (void)testDateFormatterStringRepWithInterval_weeksDaysSeconds {
289         NSCalendarDate *now = [NSCalendarDate calendarDate];
290         NSCalendarDate *date = [now
291                 dateByAddingYears:-0
292                            months:-0
293                              days:7 * -5 + -5
294                             hours:-0
295                           minutes:-0
296                           seconds:-10];
297         date = [date dateByMatchingDSTOfDate:now];
298         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days 10 seconds", @"Unexpected string for time interval");
300 - (void)testDateFormatterStringRepWithInterval_weeksDaysMinutes {
301         NSCalendarDate *now = [NSCalendarDate calendarDate];
302         NSCalendarDate *date = [now
303                 dateByAddingYears:-0
304                            months:-0
305                              days:7 * -5 + -5
306                             hours:-0
307                           minutes:-10
308                           seconds:-0];
309         date = [date dateByMatchingDSTOfDate:now];
310         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days 10 minutes", @"Unexpected string for time interval");
312 - (void)testDateFormatterStringRepWithInterval_weeksDaysMinutesSeconds {
313         NSCalendarDate *now = [NSCalendarDate calendarDate];
314         NSCalendarDate *date = [now
315                 dateByAddingYears:-0
316                            months:-0
317                              days:7 * -5 + -5
318                             hours:-0
319                           minutes:-10
320                           seconds:-10];
321         date = [date dateByMatchingDSTOfDate:now];
322         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days 10 minutes 10 seconds", @"Unexpected string for time interval");
324 - (void)testDateFormatterStringRepWithInterval_weeksDaysHours {
325         NSCalendarDate *now = [NSCalendarDate calendarDate];
326         NSCalendarDate *date = [now
327                 dateByAddingYears:-0
328                            months:-0
329                              days:7 * -5 + -5
330                             hours:-10
331                           minutes:-0
332                           seconds:-0];
333         date = [date dateByMatchingDSTOfDate:now];
334         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days 10 hours", @"Unexpected string for time interval");
336 - (void)testDateFormatterStringRepWithInterval_weeksDaysHoursSeconds {
337         NSCalendarDate *now = [NSCalendarDate calendarDate];
338         NSCalendarDate *date = [now
339                 dateByAddingYears:-0
340                            months:-0
341                              days:7 * -5 + -5
342                             hours:-10
343                           minutes:-0
344                           seconds:-10];
345         date = [date dateByMatchingDSTOfDate:now];
346         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days 10 hours 10 seconds", @"Unexpected string for time interval");
348 - (void)testDateFormatterStringRepWithInterval_weeksDaysHoursMinutes {
349         NSCalendarDate *now = [NSCalendarDate calendarDate];
350         NSCalendarDate *date = [now
351                 dateByAddingYears:-0
352                            months:-0
353                              days:7 * -5 + -5
354                             hours:-10
355                           minutes:-10
356                           seconds:-0];
357         date = [date dateByMatchingDSTOfDate:now];
358         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days 10 hours 10 minutes", @"Unexpected string for time interval");
360 - (void)testDateFormatterStringRepWithInterval_weeksDaysHoursMinutesSeconds {
361         NSCalendarDate *now = [NSCalendarDate calendarDate];
362         NSCalendarDate *date = [now
363                 dateByAddingYears:-0
364                            months:-0
365                              days:7 * -5 + -5
366                             hours:-10
367                           minutes:-10
368                           seconds:-10];
369         date = [date dateByMatchingDSTOfDate:now];
370         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date], @"5 weeks 5 days 10 hours 10 minutes 10 seconds", @"Unexpected string for time interval");
373 - (void)testDateFormatterStringRepWithInterval_seconds_abbreviated {
374         NSCalendarDate *now = [NSCalendarDate calendarDate];
375         NSCalendarDate *date = [now
376                 dateByAddingYears:-0
377                            months:-0
378                              days:-0
379                             hours:-0
380                           minutes:-0
381                           seconds:-10];
382         date = [date dateByMatchingDSTOfDate:now];
383         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"10s", @"Unexpected string for time interval");
385 - (void)testDateFormatterStringRepWithInterval_minutes_abbreviated {
386         NSCalendarDate *now = [NSCalendarDate calendarDate];
387         NSCalendarDate *date = [now
388                 dateByAddingYears:-0
389                            months:-0
390                              days:-0
391                             hours:-0
392                           minutes:-10
393                           seconds:-0];
394         date = [date dateByMatchingDSTOfDate:now];
395         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"10m", @"Unexpected string for time interval");
397 - (void)testDateFormatterStringRepWithInterval_minutesSeconds_abbreviated {
398         NSCalendarDate *now = [NSCalendarDate calendarDate];
399         NSCalendarDate *date = [now
400                 dateByAddingYears:-0
401                            months:-0
402                              days:-0
403                             hours:-0
404                           minutes:-10
405                           seconds:-10];
406         date = [date dateByMatchingDSTOfDate:now];
407         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"10m 10s", @"Unexpected string for time interval");
409 - (void)testDateFormatterStringRepWithInterval_hours_abbreviated {
410         NSCalendarDate *now = [NSCalendarDate calendarDate];
411         NSCalendarDate *date = [now
412                 dateByAddingYears:-0
413                            months:-0
414                              days:-0
415                             hours:-10
416                           minutes:-0
417                           seconds:-0];
418         date = [date dateByMatchingDSTOfDate:now];
419         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"10h", @"Unexpected string for time interval");
421 - (void)testDateFormatterStringRepWithInterval_hoursSeconds_abbreviated {
422         NSCalendarDate *now = [NSCalendarDate calendarDate];
423         NSCalendarDate *date = [now
424                 dateByAddingYears:-0
425                            months:-0
426                              days:-0
427                             hours:-10
428                           minutes:-0
429                           seconds:-10];
430         date = [date dateByMatchingDSTOfDate:now];
431         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"10h 10s", @"Unexpected string for time interval");
433 - (void)testDateFormatterStringRepWithInterval_hoursMinutes_abbreviated {
434         NSCalendarDate *now = [NSCalendarDate calendarDate];
435         NSCalendarDate *date = [now
436                 dateByAddingYears:-0
437                            months:-0
438                              days:-0
439                             hours:-10
440                           minutes:-10
441                           seconds:-0];
442         date = [date dateByMatchingDSTOfDate:now];
443         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"10h 10m", @"Unexpected string for time interval");
445 - (void)testDateFormatterStringRepWithInterval_hoursMinutesSeconds_abbreviated {
446         NSCalendarDate *now = [NSCalendarDate calendarDate];
447         NSCalendarDate *date = [now
448                 dateByAddingYears:-0
449                            months:-0
450                              days:-0
451                             hours:-10
452                           minutes:-10
453                           seconds:-10];
454         date = [date dateByMatchingDSTOfDate:now];
455         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"10h 10m 10s", @"Unexpected string for time interval");
457 - (void)testDateFormatterStringRepWithInterval_days_abbreviated {
458         NSCalendarDate *now = [NSCalendarDate calendarDate];
459         NSCalendarDate *date = [now
460                 dateByAddingYears:-0
461                            months:-0
462                              days:-5
463                             hours:-0
464                           minutes:-0
465                           seconds:-0];
466         date = [date dateByMatchingDSTOfDate:now];
467         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d", @"Unexpected string for time interval");
469 - (void)testDateFormatterStringRepWithInterval_daysSeconds_abbreviated {
470         NSCalendarDate *now = [NSCalendarDate calendarDate];
471         NSCalendarDate *date = [now
472                 dateByAddingYears:-0
473                            months:-0
474                              days:-5
475                             hours:-0
476                           minutes:-0
477                           seconds:-10];
478         date = [date dateByMatchingDSTOfDate:now];
479         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d 10s", @"Unexpected string for time interval");
481 - (void)testDateFormatterStringRepWithInterval_daysMinutes_abbreviated {
482         NSCalendarDate *now = [NSCalendarDate calendarDate];
483         NSCalendarDate *date = [now
484                 dateByAddingYears:-0
485                            months:-0
486                              days:-5
487                             hours:-0
488                           minutes:-10
489                           seconds:-0];
490         date = [date dateByMatchingDSTOfDate:now];
491         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d 10m", @"Unexpected string for time interval");
493 - (void)testDateFormatterStringRepWithInterval_daysMinutesSeconds_abbreviated {
494         NSCalendarDate *now = [NSCalendarDate calendarDate];
495         NSCalendarDate *date = [now
496                 dateByAddingYears:-0
497                            months:-0
498                              days:-5
499                             hours:-0
500                           minutes:-10
501                           seconds:-10];
502         date = [date dateByMatchingDSTOfDate:now];
503         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d 10m 10s", @"Unexpected string for time interval");
505 - (void)testDateFormatterStringRepWithInterval_daysHours_abbreviated {
506         NSCalendarDate *now = [NSCalendarDate calendarDate];
507         NSCalendarDate *date = [now
508                 dateByAddingYears:-0
509                            months:-0
510                              days:-5
511                             hours:-10
512                           minutes:-0
513                           seconds:-0];
514         date = [date dateByMatchingDSTOfDate:now];
515         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d 10h", @"Unexpected string for time interval");
517 - (void)testDateFormatterStringRepWithInterval_daysHoursSeconds_abbreviated {
518         NSCalendarDate *now = [NSCalendarDate calendarDate];
519         NSCalendarDate *date = [now
520                 dateByAddingYears:-0
521                            months:-0
522                              days:-5
523                             hours:-10
524                           minutes:-0
525                           seconds:-10];
526         date = [date dateByMatchingDSTOfDate:now];
527         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d 10h 10s", @"Unexpected string for time interval");
529 - (void)testDateFormatterStringRepWithInterval_daysHoursMinutes_abbreviated {
530         NSCalendarDate *now = [NSCalendarDate calendarDate];
531         NSCalendarDate *date = [now
532                 dateByAddingYears:-0
533                            months:-0
534                              days:-5
535                             hours:-10
536                           minutes:-10
537                           seconds:-0];
538         date = [date dateByMatchingDSTOfDate:now];
539         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d 10h 10m", @"Unexpected string for time interval");
541 - (void)testDateFormatterStringRepWithInterval_daysHoursMinutesSeconds_abbreviated {
542         NSCalendarDate *now = [NSCalendarDate calendarDate];
543         NSCalendarDate *date = [now
544                 dateByAddingYears:-0
545                            months:-0
546                              days:-5
547                             hours:-10
548                           minutes:-10
549                           seconds:-10];
550         date = [date dateByMatchingDSTOfDate:now];
551         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5d 10h 10m 10s", @"Unexpected string for time interval");
553 - (void)testDateFormatterStringRepWithInterval_weeks_abbreviated {
554         NSCalendarDate *now = [NSCalendarDate calendarDate];
555         NSCalendarDate *date = [now
556                 dateByAddingYears:-0
557                            months:-0
558                              days:7 * -5
559                             hours:-0
560                           minutes:-0
561                           seconds:-0];
562         date = [date dateByMatchingDSTOfDate:now];
563         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w", @"Unexpected string for time interval");
565 - (void)testDateFormatterStringRepWithInterval_weeksSeconds_abbreviated {
566         NSCalendarDate *now = [NSCalendarDate calendarDate];
567         NSCalendarDate *date = [now
568                 dateByAddingYears:-0
569                            months:-0
570                              days:7 * -5
571                             hours:-0
572                           minutes:-0
573                           seconds:-10];
574         date = [date dateByMatchingDSTOfDate:now];
575         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 10s", @"Unexpected string for time interval");
577 - (void)testDateFormatterStringRepWithInterval_weeksMinutes_abbreviated {
578         NSCalendarDate *now = [NSCalendarDate calendarDate];
579         NSCalendarDate *date = [now
580                 dateByAddingYears:-0
581                            months:-0
582                              days:7 * -5
583                             hours:-0
584                           minutes:-10
585                           seconds:-0];
586         date = [date dateByMatchingDSTOfDate:now];
587         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 10m", @"Unexpected string for time interval");
589 - (void)testDateFormatterStringRepWithInterval_weeksMinutesSeconds_abbreviated {
590         NSCalendarDate *now = [NSCalendarDate calendarDate];
591         NSCalendarDate *date = [now
592                 dateByAddingYears:-0
593                            months:-0
594                              days:7 * -5
595                             hours:-0
596                           minutes:-10
597                           seconds:-10];
598         date = [date dateByMatchingDSTOfDate:now];
599         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 10m 10s", @"Unexpected string for time interval");
601 - (void)testDateFormatterStringRepWithInterval_weeksHours_abbreviated {
602         NSCalendarDate *now = [NSCalendarDate calendarDate];
603         NSCalendarDate *date = [now
604                 dateByAddingYears:-0
605                            months:-0
606                              days:7 * -5
607                             hours:-10
608                           minutes:-0
609                           seconds:-0];
610         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 10h", @"Unexpected string for time interval");
612 - (void)testDateFormatterStringRepWithInterval_weeksHoursSeconds_abbreviated {
613         NSCalendarDate *now = [NSCalendarDate calendarDate];
614         NSCalendarDate *date = [now
615                 dateByAddingYears:-0
616                            months:-0
617                              days:7 * -5
618                             hours:-10
619                           minutes:-0
620                           seconds:-10];
621         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 10h 10s", @"Unexpected string for time interval");
623 - (void)testDateFormatterStringRepWithInterval_weeksHoursMinutes_abbreviated {
624         NSCalendarDate *now = [NSCalendarDate calendarDate];
625         NSCalendarDate *date = [now
626                 dateByAddingYears:-0
627                            months:-0
628                              days:7 * -5
629                             hours:-10
630                           minutes:-10
631                           seconds:-0];
632         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 10h 10m", @"Unexpected string for time interval");
634 - (void)testDateFormatterStringRepWithInterval_weeksHoursMinutesSeconds_abbreviated {
635         NSCalendarDate *now = [NSCalendarDate calendarDate];
636         NSCalendarDate *date = [now
637                 dateByAddingYears:-0
638                            months:-0
639                              days:7 * -5
640                             hours:-10
641                           minutes:-10
642                           seconds:-10];
643         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 10h 10m 10s", @"Unexpected string for time interval");
645 - (void)testDateFormatterStringRepWithInterval_weeksDays_abbreviated {
646         NSCalendarDate *now = [NSCalendarDate calendarDate];
647         NSCalendarDate *date = [now
648                 dateByAddingYears:-0
649                            months:-0
650                              days:7 * -5 + -5
651                             hours:-0
652                           minutes:-0
653                           seconds:-0];
654         date = [date dateByMatchingDSTOfDate:now];
655         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d", @"Unexpected string for time interval");
657 - (void)testDateFormatterStringRepWithInterval_weeksDaysSeconds_abbreviated {
658         NSCalendarDate *now = [NSCalendarDate calendarDate];
659         NSCalendarDate *date = [now
660                 dateByAddingYears:-0
661                            months:-0
662                              days:7 * -5 + -5
663                             hours:-0
664                           minutes:-0
665                           seconds:-10];
666         date = [date dateByMatchingDSTOfDate:now];
667         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d 10s", @"Unexpected string for time interval");
669 - (void)testDateFormatterStringRepWithInterval_weeksDaysMinutes_abbreviated {
670         NSCalendarDate *now = [NSCalendarDate calendarDate];
671         NSCalendarDate *date = [now
672                 dateByAddingYears:-0
673                            months:-0
674                              days:7 * -5 + -5
675                             hours:-0
676                           minutes:-10
677                           seconds:-0];
678         date = [date dateByMatchingDSTOfDate:now];
679         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d 10m", @"Unexpected string for time interval");
681 - (void)testDateFormatterStringRepWithInterval_weeksDaysMinutesSeconds_abbreviated {
682         NSCalendarDate *now = [NSCalendarDate calendarDate];
683         NSCalendarDate *date = [now
684                 dateByAddingYears:-0
685                            months:-0
686                              days:7 * -5 + -5
687                             hours:-0
688                           minutes:-10
689                           seconds:-10];
690         date = [date dateByMatchingDSTOfDate:now];
691         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d 10m 10s", @"Unexpected string for time interval");
693 - (void)testDateFormatterStringRepWithInterval_weeksDaysHours_abbreviated {
694         NSCalendarDate *now = [NSCalendarDate calendarDate];
695         NSCalendarDate *date = [now
696                 dateByAddingYears:-0
697                            months:-0
698                              days:7 * -5 + -5
699                             hours:-10
700                           minutes:-0
701                           seconds:-0];
702         date = [date dateByMatchingDSTOfDate:now];
703         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d 10h", @"Unexpected string for time interval");
705 - (void)testDateFormatterStringRepWithInterval_weeksDaysHoursSeconds_abbreviated {
706         NSCalendarDate *now = [NSCalendarDate calendarDate];
707         NSCalendarDate *date = [now
708                 dateByAddingYears:-0
709                            months:-0
710                              days:7 * -5 + -5
711                             hours:-10
712                           minutes:-0
713                           seconds:-10];
714         date = [date dateByMatchingDSTOfDate:now];
715         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d 10h 10s", @"Unexpected string for time interval");
717 - (void)testDateFormatterStringRepWithInterval_weeksDaysHoursMinutes_abbreviated {
718         NSCalendarDate *now = [NSCalendarDate calendarDate];
719         NSCalendarDate *date = [now
720                 dateByAddingYears:-0
721                            months:-0
722                              days:7 * -5 + -5
723                             hours:-10
724                           minutes:-10
725                           seconds:-0];
726         date = [date dateByMatchingDSTOfDate:now];
727         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d 10h 10m", @"Unexpected string for time interval");
729 - (void)testDateFormatterStringRepWithInterval_weeksDaysHoursMinutesSeconds_abbreviated {
730         NSCalendarDate *now = [NSCalendarDate calendarDate];
731         NSCalendarDate *date = [now
732                 dateByAddingYears:-0
733                            months:-0
734                              days:7 * -5 + -5
735                             hours:-10
736                           minutes:-10
737                           seconds:-10];
738         date = [date dateByMatchingDSTOfDate:now];
739         AISimplifiedAssertEqualObjects([NSDateFormatter stringForTimeIntervalSinceDate:date showingSeconds:YES abbreviated:YES], @"5w 5d 10h 10m 10s", @"Unexpected string for time interval");
742 @end