⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dateandtimetests.cs

📁 大名鼎鼎的mono是.NET平台的跨平台(支持linux
💻 CS
📖 第 1 页 / 共 5 页
字号:
// DateAndTimeTest.cs - NUnit Test Cases for Microsoft.VisualBasic.DateAndTime//// Boris Kirzner <borisk@mainsoft.com>// Chris J. Breisch (cjbreisch@altavista.net)// Martin Willemoes Hansen (mwh@sysrq.dk)// Guy Cohen (guyc@mainsoft.com)// // // Copyright (c) 2002-2006 Mainsoft Corporation.// Copyright (C) 2004 Novell, Inc (http://www.novell.com)//// Permission is hereby granted, free of charge, to any person obtaining// a copy of this software and associated documentation files (the// "Software"), to deal in the Software without restriction, including// without limitation the rights to use, copy, modify, merge, publish,// distribute, sublicense, and/or sell copies of the Software, and to// permit persons to whom the Software is furnished to do so, subject to// the following conditions:// // The above copyright notice and this permission notice shall be// included in all copies or substantial portions of the Software.// // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE// LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.//using NUnit.Framework;using System;using System.IO;using System.Globalization;using Microsoft.VisualBasic;namespace MonoTests.Microsoft_VisualBasic{	[TestFixture]	public class DateAndTimeTests	{		String date;		String time;		public DateAndTimeTests()		{		}		[TestFixtureSetUp]		public void TestFixtureSetUp()		{			date = DateAndTime.DateString;			time = DateAndTime.TimeString;			System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");		}		[TestFixtureTearDown]		public void TestFixtureTearDown()		{			DateAndTime.DateString = date;			DateAndTime.TimeString = time;		}		[SetUp]		public void GetReady() 		{					}		[TearDown]		public void Clean() 		{					}			#region DateAdd Tests		[Test]		public void DateAdd() 		{			if (Helper.OnMono)				Assert.Ignore ("Buggy Mono: #81783");					DateTime dtNow = DateTime.Now;			Assert.AreEqual( dtNow.AddYears(1), DateAndTime.DateAdd(DateInterval.Year, 1, dtNow), "#DA01");			Assert.AreEqual( dtNow.AddYears(-1), DateAndTime.DateAdd("yyyy", -1, dtNow),"#DA02");			bool caughtException = false;						try 			{				DateAndTime.DateAdd("foo", 1, dtNow);			} 			catch (Exception e) 			{				Assert.AreEqual(e.GetType(), typeof(ArgumentException),"#DA03");				caughtException = true;			}			Assert.AreEqual(true, caughtException, "#DA04");			Assert.AreEqual(dtNow.AddMonths(6), DateAndTime.DateAdd(DateInterval.Quarter, 2, dtNow),"#DA05");			Assert.AreEqual( dtNow.AddMonths(-6), DateAndTime.DateAdd("q", -2, dtNow),"#DA06");			Assert.AreEqual(dtNow.AddMonths(3), DateAndTime.DateAdd(DateInterval.Month, 3, dtNow),"#DA07");			Assert.AreEqual(dtNow.AddMonths(-3), DateAndTime.DateAdd("m", -3, dtNow),"#DA08");			Assert.AreEqual(dtNow.AddDays(28), DateAndTime.DateAdd(DateInterval.WeekOfYear, 4, dtNow),"#DA09");			Assert.AreEqual(dtNow.AddDays(-28), DateAndTime.DateAdd("ww", -4, dtNow),"#DA10");			Assert.AreEqual(dtNow.AddDays(5), DateAndTime.DateAdd(DateInterval.Weekday, 5, dtNow),"#DA11");			Assert.AreEqual(dtNow.AddDays(-5), DateAndTime.DateAdd("w", -5, dtNow),"#DA12");			Assert.AreEqual(dtNow.AddDays(6), DateAndTime.DateAdd(DateInterval.DayOfYear, 6, dtNow),"#DA13");			Assert.AreEqual(dtNow.AddDays(-6), DateAndTime.DateAdd("y", -6, dtNow),"#DA14");			Assert.AreEqual(dtNow.AddDays(7), DateAndTime.DateAdd(DateInterval.Day, 7, dtNow),"#DA15");			Assert.AreEqual(dtNow.AddDays(-7), DateAndTime.DateAdd("d", -7, dtNow),"#DA16");			Assert.AreEqual(dtNow.AddHours(8), DateAndTime.DateAdd(DateInterval.Hour, 8, dtNow),"#DA17");			Assert.AreEqual(dtNow.AddHours(-8), DateAndTime.DateAdd(DateInterval.Hour, -8, dtNow),"#DA18");			Assert.AreEqual(dtNow.AddMinutes(9), DateAndTime.DateAdd(DateInterval.Minute, 9, dtNow),"#DA19");			Assert.AreEqual(dtNow.AddMinutes(-9), DateAndTime.DateAdd("n", -9, dtNow),"#DA20");			Assert.AreEqual(dtNow.AddSeconds(10), DateAndTime.DateAdd(DateInterval.Second, 10, dtNow),"#DA21");			Assert.AreEqual(dtNow.AddSeconds(-10), DateAndTime.DateAdd("s", -10, dtNow),"#DA22");			caughtException = false;			try 			{				DateAndTime.DateAdd(DateInterval.Year, int.MinValue, dtNow);			}			catch (Exception e) 			{				caughtException = true;				Assert.AreEqual (typeof (Exception), e.GetType (), "#DA23");			}			// Assert.AreEqual("#DA24", caughtException, true);		}				[Test]		public void DateAdd_DateInterval_1()		{			if (Helper.OnMono)				Assert.Ignore ("Buggy Mono: #81783");			Assert.AreEqual(DateTime.Parse("12/7/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.Day, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/7/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.DayOfYear, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2003 02:00:00"),DateAndTime.DateAdd(DateInterval.Hour, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2003 00:02:00"),DateAndTime.DateAdd(DateInterval.Minute, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("2/5/2004 00:00:00"),DateAndTime.DateAdd(DateInterval.Month, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("6/5/2004 00:00:00"),DateAndTime.DateAdd(DateInterval.Quarter, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2003 00:00:02"),DateAndTime.DateAdd(DateInterval.Second, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/7/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.Weekday, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/19/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.WeekOfYear, 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2005 00:00:00"),DateAndTime.DateAdd(DateInterval.Year, 2, DateTime.Parse("12/5/03")));		}		[Test]		public void DateAdd_String_1()		{			if (Helper.OnMono)				Assert.Ignore ("Buggy Mono: #81783");			Assert.AreEqual(DateTime.Parse("12/7/2003 00:00:00"),DateAndTime.DateAdd("d", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/7/2003 00:00:00"),DateAndTime.DateAdd("y", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2003 02:00:00"),DateAndTime.DateAdd("h", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2003 00:02:00"),DateAndTime.DateAdd("n", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("2/5/2004 00:00:00"),DateAndTime.DateAdd("m", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("6/5/2004 00:00:00"),DateAndTime.DateAdd("q", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2003 00:00:02"),DateAndTime.DateAdd("s", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/7/2003 00:00:00"),DateAndTime.DateAdd("w", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/19/2003 00:00:00"),DateAndTime.DateAdd("ww", 2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2005 00:00:00"),DateAndTime.DateAdd("yyyy", 2, DateTime.Parse("12/5/03")));		}		[Test]		public void DateAdd_DateInterval_2()		{			Assert.AreEqual(DateTime.Parse("12/3/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.Day, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/3/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.DayOfYear, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/4/2003 22:00:00"),DateAndTime.DateAdd(DateInterval.Hour, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/4/2003 23:58:00"),DateAndTime.DateAdd(DateInterval.Minute, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("10/5/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.Month, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("6/5/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.Quarter, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/4/2003 23:59:58"),DateAndTime.DateAdd(DateInterval.Second, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/3/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.Weekday, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("11/21/2003 00:00:00"),DateAndTime.DateAdd(DateInterval.WeekOfYear, -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/5/2001 00:00:00"),DateAndTime.DateAdd(DateInterval.Year, -2, DateTime.Parse("12/5/03")));		}		[Test]		public void DateAdd_String_2()		{			Assert.AreEqual(DateTime.Parse("12/3/2003 00:00:00"),DateAndTime.DateAdd("d", -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/3/2003 00:00:00"),DateAndTime.DateAdd("y", -2, DateTime.Parse("12/5/03")));			Assert.AreEqual(DateTime.Parse("12/4/2003 22:00:00"),DateAndTime.DateAdd("h", -2, DateTime.Parse("12/5/03")));

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -