1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
//
// TimeZoneTest.cs - NUnit Test Cases for the System.TimeZone struct
//
// author:
// Martin Baulig (martin@gnome.org)
//
// (C) 2002 Martin Baulig
//
using NUnit.Framework;
using System;
using System.Threading;
using System.Globalization;
namespace MonoTests.System
{
public class TimeZoneTest : TestCase
{
private CultureInfo oldcult;
public TimeZoneTest() : base ("MonoTests.System.TimeZoneTest testcase") {}
public TimeZoneTest (string name): base(name) {}
public static ITest Suite
{
get {
return new TestSuite (typeof(TimeZoneTest));
}
}
protected override void SetUp ()
{
oldcult = Thread.CurrentThread.CurrentCulture;
Thread.CurrentThread.CurrentCulture = new CultureInfo ("");
}
protected override void TearDown ()
{
Thread.CurrentThread.CurrentCulture = oldcult;
}
public void TestCtors ()
{
TimeZone t1 = TimeZone.CurrentTimeZone;
AssertEquals("A01", "CET", t1.StandardName);
AssertEquals("A02", "CEST", t1.DaylightName);
DaylightTime d1 = t1.GetDaylightChanges (2002);
AssertEquals("A03", "03/31/2002 01:00:00", d1.Start.ToString ("G"));
AssertEquals("A04", "10/27/2002 01:00:00", d1.End.ToString ("G"));
AssertEquals("A05", 36000000000L, d1.Delta.Ticks);
DaylightTime d2 = t1.GetDaylightChanges (1996);
AssertEquals("A06", "03/31/1996 01:00:00", d2.Start.ToString ("G"));
AssertEquals("A07", "10/27/1996 01:00:00", d2.End.ToString ("G"));
AssertEquals("A08", 36000000000L, d2.Delta.Ticks);
DateTime d3 = new DateTime (2002,2,25);
AssertEquals("A09", false, t1.IsDaylightSavingTime (d3));
DateTime d4 = new DateTime (2002,4,2);
AssertEquals("A10", true, t1.IsDaylightSavingTime (d4));
DateTime d5 = new DateTime (2002,11,4);
AssertEquals("A11", false, t1.IsDaylightSavingTime (d5));
AssertEquals("A12", 36000000000L, t1.GetUtcOffset (d3).Ticks);
AssertEquals("A13", 72000000000L, t1.GetUtcOffset (d4).Ticks);
AssertEquals("A14", 36000000000L, t1.GetUtcOffset (d5).Ticks);
}
}
}
|