ExtentionMethodTest.cs 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Text.RegularExpressions;
  7. namespace Edge.Core.Test
  8. {
  9. [TestClass]
  10. public class ExtentionMethodTest
  11. {
  12. [TestMethod]
  13. public void GetLocalizedContent_TestMethod1()
  14. {
  15. var source = "lang-zh-cn:稳Dart加油机lang-en-us:WayneDartPump";//.GetLocalizedContent("en-US,en;");
  16. var en_us_content = source.LocalizedContent("en-us");
  17. Assert.AreEqual("WayneDartPump", en_us_content);
  18. en_us_content = source.LocalizedContent("en");
  19. Assert.AreEqual("WayneDartPump", en_us_content);
  20. var zh_cn_content = source.LocalizedContent("zh-cn");
  21. Assert.AreEqual("稳Dart加油机", zh_cn_content);
  22. zh_cn_content = source.LocalizedContent("zh");
  23. Assert.AreEqual("稳Dart加油机", zh_cn_content);
  24. var unknown_local_content = source.LocalizedContent("xx-bb");
  25. Assert.AreEqual("WayneDartPump", unknown_local_content);
  26. unknown_local_content = source.LocalizedContent("xx");
  27. Assert.AreEqual("WayneDartPump", unknown_local_content);
  28. unknown_local_content = source.LocalizedContent("en-uu");
  29. Assert.AreEqual("WayneDartPump", unknown_local_content);
  30. unknown_local_content = source.LocalizedContent("zh-cc");
  31. Assert.AreEqual("WayneDartPump", unknown_local_content);
  32. unknown_local_content = source.LocalizedContent("zh-cc_adfadfasdf");
  33. Assert.AreEqual("WayneDartPump", unknown_local_content);
  34. }
  35. [TestMethod]
  36. public void GetLocalizedContent_TestMethod2()
  37. {
  38. var source = "lang-zh-cn:稳Dart加油机lang-enus:WayneDartPump";//.GetLocalizedContent("en-US,en;");
  39. var en_us_content = source.LocalizedContent("en-us");
  40. Assert.AreEqual(source, en_us_content);
  41. en_us_content = source.LocalizedContent("en");
  42. Assert.AreEqual(source, en_us_content);
  43. var zh_cn_content = source.LocalizedContent("zh-cn");
  44. Assert.AreEqual("稳Dart加油机lang-enus:WayneDartPump", zh_cn_content);
  45. zh_cn_content = source.LocalizedContent("zh");
  46. Assert.AreEqual("稳Dart加油机lang-enus:WayneDartPump", zh_cn_content);
  47. var unknown_local_content = source.LocalizedContent("xx-bb");
  48. Assert.AreEqual(source, unknown_local_content);
  49. unknown_local_content = source.LocalizedContent("xx");
  50. Assert.AreEqual(source, unknown_local_content);
  51. unknown_local_content = source.LocalizedContent("en-uu");
  52. Assert.AreEqual(source, unknown_local_content);
  53. unknown_local_content = source.LocalizedContent("zh-cc");
  54. Assert.AreEqual(source, unknown_local_content);
  55. unknown_local_content = source.LocalizedContent("zh-cc_adfadfasdf");
  56. Assert.AreEqual(source, unknown_local_content);
  57. }
  58. [TestMethod]
  59. public void GetLocalizedContent_TestMethod3()
  60. {
  61. var source = "lang-zh1-cn:稳Dart加油机lang-en2-us:WayneDartPump";//.GetLocalizedContent("en-US,en;");
  62. var en_us_content = source.LocalizedContent("en-us");
  63. Assert.AreEqual(source, en_us_content);
  64. en_us_content = source.LocalizedContent("en");
  65. Assert.AreEqual(source, en_us_content);
  66. var zh_cn_content = source.LocalizedContent("zh-cn");
  67. Assert.AreEqual(source, zh_cn_content);
  68. zh_cn_content = source.LocalizedContent("zh");
  69. Assert.AreEqual(source, zh_cn_content);
  70. var unknown_local_content = source.LocalizedContent("xx-bb");
  71. Assert.AreEqual(source, unknown_local_content);
  72. unknown_local_content = source.LocalizedContent("xx");
  73. Assert.AreEqual(source, unknown_local_content);
  74. unknown_local_content = source.LocalizedContent("en-uu");
  75. Assert.AreEqual(source, unknown_local_content);
  76. unknown_local_content = source.LocalizedContent("zh-cc");
  77. Assert.AreEqual(source, unknown_local_content);
  78. unknown_local_content = source.LocalizedContent("zh-cc_adfadfasdf");
  79. Assert.AreEqual(source, unknown_local_content);
  80. }
  81. [TestMethod]
  82. public void GetLocalizedContent_TestMethod4()
  83. {
  84. var source = "soLazyDidNotLeaveAnyLocalizeContent";//.GetLocalizedContent("en-US,en;");
  85. var en_us_content = source.LocalizedContent("en-us");
  86. Assert.AreEqual(source, en_us_content);
  87. en_us_content = source.LocalizedContent("en");
  88. Assert.AreEqual(source, en_us_content);
  89. var zh_cn_content = source.LocalizedContent("zh-cn");
  90. Assert.AreEqual(source, zh_cn_content);
  91. zh_cn_content = source.LocalizedContent("zh");
  92. Assert.AreEqual(source, zh_cn_content);
  93. var unknown_local_content = source.LocalizedContent("xx-bb");
  94. Assert.AreEqual(source, unknown_local_content);
  95. unknown_local_content = source.LocalizedContent("xx");
  96. Assert.AreEqual(source, unknown_local_content);
  97. unknown_local_content = source.LocalizedContent("en-uu");
  98. Assert.AreEqual(source, unknown_local_content);
  99. unknown_local_content = source.LocalizedContent("zh-cc");
  100. Assert.AreEqual(source, unknown_local_content);
  101. unknown_local_content = source.LocalizedContent("zh-cc_adfadfasdf");
  102. Assert.AreEqual(source, unknown_local_content);
  103. }
  104. [TestMethod]
  105. public void GetLocalizedContent_TestMethod5()
  106. {
  107. var source = "lang-zh:稳Dart加油机lang-en:WayneDartPump";//.GetLocalizedContent("en-US,en;");
  108. var en_us_content = source.LocalizedContent("en-us");
  109. Assert.AreEqual("WayneDartPump", en_us_content);
  110. en_us_content = source.LocalizedContent("en");
  111. Assert.AreEqual("WayneDartPump", en_us_content);
  112. var zh_cn_content = source.LocalizedContent("zh-cn");
  113. Assert.AreEqual("WayneDartPump", zh_cn_content);
  114. zh_cn_content = source.LocalizedContent("zh");
  115. Assert.AreEqual("稳Dart加油机", zh_cn_content);
  116. var unknown_local_content = source.LocalizedContent("xx-bb");
  117. Assert.AreEqual("WayneDartPump", unknown_local_content);
  118. unknown_local_content = source.LocalizedContent("xx");
  119. Assert.AreEqual("WayneDartPump", unknown_local_content);
  120. unknown_local_content = source.LocalizedContent("en-uu");
  121. Assert.AreEqual("WayneDartPump", unknown_local_content);
  122. unknown_local_content = source.LocalizedContent("zh-cc");
  123. Assert.AreEqual("WayneDartPump", unknown_local_content);
  124. unknown_local_content = source.LocalizedContent("zh-cc_adfadfasdf");
  125. Assert.AreEqual("WayneDartPump", unknown_local_content);
  126. }
  127. [TestMethod]
  128. public void GetLocalizedContent_TestMethod6()
  129. {
  130. var source = "lang-zh:稳Dart加油机lang-en:WayneDartPumplang-zh:还来???";//.GetLocalizedContent("en-US,en;");
  131. var zh_cn_content = source.LocalizedContent("zh-cn");
  132. Assert.AreEqual("WayneDartPump", zh_cn_content);
  133. zh_cn_content = source.LocalizedContent("zh");
  134. Assert.AreEqual("稳Dart加油机", zh_cn_content);
  135. var unknown_local_content = source.LocalizedContent("xx-bb");
  136. Assert.AreEqual("WayneDartPump", unknown_local_content);
  137. unknown_local_content = source.LocalizedContent("xx");
  138. Assert.AreEqual("WayneDartPump", unknown_local_content);
  139. unknown_local_content = source.LocalizedContent("en-uu");
  140. Assert.AreEqual("WayneDartPump", unknown_local_content);
  141. unknown_local_content = source.LocalizedContent("zh-cc");
  142. Assert.AreEqual("WayneDartPump", unknown_local_content);
  143. unknown_local_content = source.LocalizedContent("zh-cc_adfadfasdf");
  144. Assert.AreEqual("WayneDartPump", unknown_local_content);
  145. }
  146. [TestMethod]
  147. public void LocalizedTitle_TestMethod1()
  148. {
  149. var jsonSchemaSource = @"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  150. Environment.NewLine +
  151. @"""title"": ""lang-zh-cn:停止位lang-en-us:StopBits""";
  152. var en_us_content = jsonSchemaSource.LocalizedJsonSchema("en-us");
  153. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," + Environment.NewLine + @"""title"": ""StopBits""", en_us_content);
  154. en_us_content = jsonSchemaSource.LocalizedJsonSchema("en");
  155. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," + Environment.NewLine + @"""title"": ""StopBits""", en_us_content);
  156. var zh_cn_content = jsonSchemaSource.LocalizedJsonSchema("zh-cn");
  157. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," + Environment.NewLine + @"""title"": ""停止位""", zh_cn_content);
  158. var zh_content = jsonSchemaSource.LocalizedJsonSchema("zh");
  159. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," + Environment.NewLine + @"""title"": ""停止位""", zh_content);
  160. var unknown_local_content = jsonSchemaSource.LocalizedJsonSchema("xx");
  161. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," + Environment.NewLine + @"""title"": ""StopBits""", unknown_local_content);
  162. unknown_local_content = jsonSchemaSource.LocalizedJsonSchema("zh-xx");
  163. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," + Environment.NewLine + @"""title"": ""StopBits""", unknown_local_content);
  164. }
  165. [TestMethod]
  166. public void LocalizedTitle_TestMethod2()
  167. {
  168. var jsonSchemaSource = @"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  169. Environment.NewLine +
  170. @"""title"": ""lang-zh-cn:停止位lang-en-us:StopBits""," +
  171. Environment.NewLine +
  172. @"""type"": ""integer""";
  173. var en_us_content = jsonSchemaSource.LocalizedJsonSchema("en-us");
  174. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," + Environment.NewLine + @"""title"": ""StopBits""," + Environment.NewLine + @"""type"": ""integer""", en_us_content);
  175. }
  176. [TestMethod]
  177. public void LocalizedTitle_TestMethod3()
  178. {
  179. var jsonSchemaSource = @"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  180. Environment.NewLine +
  181. @"""title"": ""lang-zh-cn:停止位lang-en-us:StopBits""," +
  182. Environment.NewLine +
  183. @"""title"": ""lang-zh-cn:另外一个停止位lang-en-us:AnotherStopBits""," +
  184. Environment.NewLine +
  185. @"""type"": ""integer""";
  186. var en_us_content = jsonSchemaSource.LocalizedJsonSchema("en-us");
  187. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  188. Environment.NewLine +
  189. @"""title"": ""StopBits""," +
  190. Environment.NewLine +
  191. @"""title"": ""AnotherStopBits""," +
  192. Environment.NewLine +
  193. @"""type"": ""integer""", en_us_content);
  194. var unknown_local_content = jsonSchemaSource.LocalizedJsonSchema("xx");
  195. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  196. Environment.NewLine +
  197. @"""title"": ""StopBits""," +
  198. Environment.NewLine +
  199. @"""title"": ""AnotherStopBits""," +
  200. Environment.NewLine +
  201. @"""type"": ""integer""", unknown_local_content);
  202. var zh_cn_content = jsonSchemaSource.LocalizedJsonSchema("zh-cn");
  203. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  204. Environment.NewLine +
  205. @"""title"": ""停止位""," +
  206. Environment.NewLine +
  207. @"""title"": ""另外一个停止位""," +
  208. Environment.NewLine +
  209. @"""type"": ""integer""", zh_cn_content);
  210. }
  211. [TestMethod]
  212. public void LocalizedTitle_TestMethod4()
  213. {
  214. var jsonSchemaSource = @"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  215. Environment.NewLine +
  216. @"""title"": ""停止位""," +
  217. Environment.NewLine +
  218. @"""title"": ""AnotherStopBits""," +
  219. Environment.NewLine +
  220. @"""type"": ""integer""";
  221. var en_us_content = jsonSchemaSource.LocalizedJsonSchema("en-us");
  222. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  223. Environment.NewLine +
  224. @"""title"": ""停止位""," +
  225. Environment.NewLine +
  226. @"""title"": ""AnotherStopBits""," +
  227. Environment.NewLine +
  228. @"""type"": ""integer""", en_us_content);
  229. var unknown_local_content = jsonSchemaSource.LocalizedJsonSchema("xx");
  230. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  231. Environment.NewLine +
  232. @"""title"": ""停止位""," +
  233. Environment.NewLine +
  234. @"""title"": ""AnotherStopBits""," +
  235. Environment.NewLine +
  236. @"""type"": ""integer""", unknown_local_content);
  237. var zh_cn_content = jsonSchemaSource.LocalizedJsonSchema("zh-cn");
  238. Assert.AreEqual(@"""$schema"": ""http://json-schema.org/draft-04/schema""," +
  239. Environment.NewLine +
  240. @"""title"": ""停止位""," +
  241. Environment.NewLine +
  242. @"""title"": ""AnotherStopBits""," +
  243. Environment.NewLine +
  244. @"""type"": ""integer""", zh_cn_content);
  245. }
  246. }
  247. }