\r
using NUnit.Framework;\r
using System;\r
-using System.Globalization;
+using System.Threading;\r
+using System.Globalization;\r
using Microsoft.VisualBasic;\r
\r
namespace MonoTests.Microsoft.VisualBasic\r
{\r
\r
public class DateAndTimeTest : TestCase {\r
+\r
+ private CultureInfo oldcult;\r
\r
public DateAndTimeTest() : base ("Microsoft.VisualBasic.DateAndTime") {}\r
public DateAndTimeTest(string name) : base(name) {}\r
\r
- protected override void SetUp() {}\r
- protected override void TearDown() {}\r
+ protected override void SetUp() \r
+ {\r
+ // the current culture determines the result of formatting\r
+ oldcult = Thread.CurrentThread.CurrentCulture;\r
+ Thread.CurrentThread.CurrentCulture = new CultureInfo ("");\r
+ }\r
+ \r
+ protected override void TearDown ()\r
+ {\r
+ Thread.CurrentThread.CurrentCulture = oldcult; \r
+ }\r
\r
public static ITest Suite {\r
get { \r
AssertEquals("#DP05", 53, DateAndTime.DatePart(DateInterval.WeekOfYear, dtJan4, FirstDayOfWeek.System, FirstWeekOfYear.FirstFullWeek));\r
AssertEquals("#DP06", 1, DateAndTime.DatePart(DateInterval.WeekOfYear, dtJan4, FirstDayOfWeek.System, FirstWeekOfYear.Jan1));\r
AssertEquals("#DP07", 1, DateAndTime.DatePart(DateInterval.WeekOfYear, dtJan4, FirstDayOfWeek.System, FirstWeekOfYear.System));\r
- AssertEquals("#DP08", 7, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Friday, FirstWeekOfYear.FirstFourDays));\r
- AssertEquals("#DP09", 6, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Saturday, FirstWeekOfYear.FirstFourDays));\r
+ AssertEquals("#DP08", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Friday, FirstWeekOfYear.FirstFourDays));\r
+ AssertEquals("#DP09", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Saturday, FirstWeekOfYear.FirstFourDays));\r
AssertEquals("#DP10", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Sunday, FirstWeekOfYear.FirstFourDays));\r
- AssertEquals("#DP11", 4, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Monday, FirstWeekOfYear.FirstFourDays));\r
- AssertEquals("#DP12", 3, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Tuesday, FirstWeekOfYear.FirstFourDays));\r
- AssertEquals("#DP13", 2, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Wednesday, FirstWeekOfYear.FirstFourDays));\r
- AssertEquals("#DP14", 1, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Thursday, FirstWeekOfYear.FirstFourDays));\r
+ AssertEquals("#DP11", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Monday, FirstWeekOfYear.FirstFourDays));\r
+ AssertEquals("#DP12", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Tuesday, FirstWeekOfYear.FirstFourDays));\r
+ AssertEquals("#DP13", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Wednesday, FirstWeekOfYear.FirstFourDays));\r
+ AssertEquals("#DP14", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.Thursday, FirstWeekOfYear.FirstFourDays));\r
AssertEquals("#DP15", 5, DateAndTime.DatePart(DateInterval.Weekday, dtJan4, FirstDayOfWeek.System, FirstWeekOfYear.FirstFourDays));\r
\r
\r
}\r
\r
public void TestDateValue () {\r
- bool caughtException = false;\r
-\r
try {\r
DateAndTime.DateValue("This is not a date.");\r
}\r
+ catch (FormatException) {\r
+ /* do nothing. this is what we expect */\r
+ }\r
catch (Exception e) {\r
- AssertEquals ("#DV01", e.GetType(), typeof(InvalidCastException));\r
- caughtException = true;\r
+ Fail ("Unexpected exception:" + e);\r
}\r
- AssertEquals("#DV02", true, caughtException);\r
-\r
AssertEquals("#DV03", new DateTime(1969, 2, 12), DateAndTime.DateValue("February 12, 1969"));\r
}\r
\r
public void TestTimeValue () {\r
- bool caughtException = false;\r
-\r
try {\r
DateAndTime.TimeValue("This is not a time.");\r
}\r
+ catch (FormatException) {\r
+ /* do nothing. this is what we expect */\r
+ }\r
catch (Exception e) {\r
- AssertEquals ("#TV01", e.GetType(), typeof(InvalidCastException));\r
- caughtException = true;\r
+ Fail ("Unexpected exception:" + e);\r
}\r
- AssertEquals("#TV02", true, caughtException);\r
-\r
AssertEquals("#TV03", new DateTime(1, 1, 1, 16, 35, 17), DateAndTime.TimeValue("4:35:17 PM"));\r
}\r
\r
\r
public void TestWeekdayName () {\r
DateTime jan1 = new DateTime(2001, 1, 1, 1, 1, 1);\r
- AssertEquals("#WN01", CultureInfo.CurrentCulture.DateTimeFormat.GetAbbreviatedDayName(jan1.DayOfWeek),\r
+ AssertEquals("#WN01", "Tue",\r
DateAndTime.WeekdayName((int)jan1.DayOfWeek + 1, true, FirstDayOfWeek.System));\r
- AssertEquals("#WN02", CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(jan1.DayOfWeek),\r
+ AssertEquals("#WN02", "Tuesday",\r
DateAndTime.WeekdayName((int)jan1.DayOfWeek + 1, false, FirstDayOfWeek.System));\r
\r
bool caughtException = false;\r
}\r
AssertEquals("#WN06", true, caughtException);\r
\r
- AssertEquals("#WN07", "Monday", DateAndTime.WeekdayName((int)jan1.DayOfWeek + 1, false, FirstDayOfWeek.System));\r
+ AssertEquals("#WN07", "Tuesday", DateAndTime.WeekdayName((int)jan1.DayOfWeek + 1, false, FirstDayOfWeek.System));\r
}\r
\r
\r