1. 程式人生 > >Util應用程式框架公共操作類(三):資料型別轉換公共操作類(擴充套件篇)

Util應用程式框架公共操作類(三):資料型別轉換公共操作類(擴充套件篇)

1 using System; 2 using System.Collections.Generic; 3 using Microsoft.VisualStudio.TestTools.UnitTesting; 4 5 namespace Util.Tests.Extensions { 6 /// <summary> 7 /// 型別轉換擴充套件測試 8 /// </summary> 9 [TestClass] 10 public class ConvertExtensionTest { 11
/// <summary> 12 /// 轉換為整數 13 /// </summary> 14 [TestMethod] 15 public void TestToInt() { 16 string obj1 = ""; 17 string obj2 = "1"; 18 Assert.AreEqual( 0, obj1.ToInt() ); 19 Assert.AreEqual( 1, obj2.ToInt() );
20 } 21 22 /// <summary> 23 /// 轉換為可空整數 24 /// </summary> 25 [TestMethod] 26 public void TestToIntOrNull() { 27 string obj1 = ""; 28 string obj2 = "1"; 29 Assert.IsNull( obj1.ToIntOrNull() ); 30
Assert.AreEqual( 1, obj2.ToIntOrNull() ); 31 } 32 33 /// <summary> 34 /// 轉換為雙精度浮點數 35 /// </summary> 36 [TestMethod] 37 public void TestToDouble() { 38 string obj1 = ""; 39 string obj2 = "1.2"; 40 Assert.AreEqual( 0, obj1.ToDouble() ); 41 Assert.AreEqual( 1.2, obj2.ToDouble() ); 42 } 43 44 /// <summary> 45 /// 轉換為可空雙精度浮點數 46 /// </summary> 47 [TestMethod] 48 public void TestToDoubleOrNull() { 49 string obj1 = ""; 50 string obj2 = "1.2"; 51 Assert.IsNull( obj1.ToDoubleOrNull() ); 52 Assert.AreEqual( 1.2, obj2.ToDoubleOrNull() ); 53 } 54 55 /// <summary> 56 /// 轉換為高精度浮點數 57 /// </summary> 58 [TestMethod] 59 public void TestToDecimal() { 60 string obj1 = ""; 61 string obj2 = "1.2"; 62 Assert.AreEqual( 0, obj1.ToDecimal() ); 63 Assert.AreEqual( 1.2M, obj2.ToDecimal() ); 64 } 65 66 /// <summary> 67 /// 轉換為可空高精度浮點數 68 /// </summary> 69 [TestMethod] 70 public void TestToDecimalOrNull() { 71 string obj1 = ""; 72 string obj2 = "1.2"; 73 Assert.IsNull( obj1.ToDecimalOrNull() ); 74 Assert.AreEqual( 1.2M, obj2.ToDecimalOrNull() ); 75 } 76 77 /// <summary> 78 /// 轉換為日期 79 /// </summary> 80 [TestMethod] 81 public void TestToDate() { 82 string obj1 = ""; 83 string obj2 = "2000-1-1"; 84 Assert.AreEqual( DateTime.MinValue, obj1.ToDate() ); 85 Assert.AreEqual( new DateTime( 2000, 1, 1 ), obj2.ToDate() ); 86 } 87 88 /// <summary> 89 /// 轉換為可空日期 90 /// </summary> 91 [TestMethod] 92 public void TestToDateOrNull() { 93 string obj1 = ""; 94 string obj2 = "2000-1-1"; 95 Assert.IsNull( obj1.ToDateOrNull() ); 96 Assert.AreEqual( new DateTime( 2000, 1, 1 ), obj2.ToDateOrNull() ); 97 } 98 99 /// <summary> 100 /// 轉換為Guid 101 /// </summary> 102 [TestMethod] 103 public void TestToGuid() { 104 string obj1 = ""; 105 string obj2 = "B9EB56E9-B720-40B4-9425-00483D311DDC"; 106 Assert.AreEqual( Guid.Empty, obj1.ToGuid() ); 107 Assert.AreEqual( new Guid( obj2 ), obj2.ToGuid() ); 108 } 109 110 /// <summary> 111 /// 轉換為可空Guid 112 /// </summary> 113 [TestMethod] 114 public void TestToGuidOrNull() { 115 string obj1 = ""; 116 string obj2 = "B9EB56E9-B720-40B4-9425-00483D311DDC"; 117 Assert.IsNull( obj1.ToGuidOrNull() ); 118 Assert.AreEqual( new Guid( obj2 ), obj2.ToGuidOrNull() ); 119 } 120 121 /// <summary> 122 /// 轉換為Guid集合,值為字串 123 /// </summary> 124 [TestMethod] 125 public void TestToGuidList_String() { 126 const string guid = "83B0233C-A24F-49FD-8083-1337209EBC9A,,EAB523C6-2FE7-47BE-89D5-C6D440C3033A,"; 127 Assert.AreEqual( 2, guid.ToGuidList().Count ); 128 Assert.AreEqual( new Guid( "83B0233C-A24F-49FD-8083-1337209EBC9A" ), guid.ToGuidList()[0] ); 129 Assert.AreEqual( new Guid( "EAB523C6-2FE7-47BE-89D5-C6D440C3033A" ), guid.ToGuidList()[1] ); 130 } 131 132 /// <summary> 133 /// 轉換為Guid集合,值為字串集合 134 /// </summary> 135 [TestMethod] 136 public void TestToGuidList_StringList() { 137 var list = new List<string> {"83B0233C-A24F-49FD-8083-1337209EBC9A", "EAB523C6-2FE7-47BE-89D5-C6D440C3033A"}; 138 Assert.AreEqual( 2, list.ToGuidList().Count ); 139 Assert.AreEqual( new Guid( "83B0233C-A24F-49FD-8083-1337209EBC9A" ), list.ToGuidList()[0] ); 140 Assert.AreEqual( new Guid( "EAB523C6-2FE7-47BE-89D5-C6D440C3033A" ), list.ToGuidList()[1] ); 141 } 142 143 /// <summary> 144 /// 轉換為字串 145 /// </summary> 146 [TestMethod] 147 public void TestToStr() { 148 object value = null; 149 Assert.AreEqual( string.Empty, value.ToStr() ); 150 value = 1; 151 Assert.AreEqual( "1", value.ToStr() ); 152 } 153 } 154 }