2 // System.ComponentModel.MaskedTextProvider test cases
5 // Rolf Bjarne Kvinge (RKvinge@novell.com)
7 // (c) 2007 Novell, Inc.
11 // a reference like this is required:
12 // -reference:MS_System=<gac>\System.dll
13 extern alias MS_System;
15 using System.ComponentModel;
18 using System.Reflection;
19 using System.Globalization;
20 using System.Collections;
21 using System.Collections.Generic;
22 using System.Threading;
23 using System.Diagnostics;
24 using MS_System_ComponentModel = MS_System.System.ComponentModel;
25 using NUnit.Framework;
27 namespace MonoTests.System.ComponentModel
29 class MaskedTextProviderTestGenerator
31 const int MAXFAILEDTESTS = 100;
32 static string [] test_masks = new string [] {
38 "09#L?&CAa.,:/$<>|\\\\",
39 // Social security numbers
40 "000-00-0000", "0 00 00 00 000 000 00", "000-00-0000", "000000-0000000",
42 "00000-9999", "00000", "000-0000", "99000",
44 "00/00/0000", "00 /00 /0000", "00 /00 /0000 00:00", "00/00/0000 00:00", "0000-00-00 90:00:00",
45 "0000-00-00 90:00", "0000-00-00", "00->L<LL-0000", "90:00", "00:00",
47 "(999)-000-0000", "00000", "99999", "00 00 00 00 00 00", "0000 00000", "99900-9990-0000", "(900)9000-0000",
48 "(00)9000-0000", "(999)9000-0000", "000-0000", "9000-0000",
54 static StreamWriter writer;
55 static bool dont_write;
56 static char [] char_values = new char [] { char.MinValue, char.MaxValue, 'a', '/', ' ', '*', '1'};
57 static int [] int_values = new int [] { int.MinValue, -1, 0, 1, int.MaxValue };
58 static string [] string_values = new string [] { null, string.Empty, "a", "a longer string value", new string ('z', 1024) };
59 static MaskedTextResultHint [] hint_values = new MaskedTextResultHint [] { MaskedTextResultHint.AlphanumericCharacterExpected, MaskedTextResultHint.AsciiCharacterExpected, MaskedTextResultHint.CharacterEscaped, MaskedTextResultHint.DigitExpected, MaskedTextResultHint.InvalidInput, MaskedTextResultHint.LetterExpected, MaskedTextResultHint.NoEffect, MaskedTextResultHint.NonEditPosition, MaskedTextResultHint.PositionOutOfRange, MaskedTextResultHint.PromptCharNotAllowed, MaskedTextResultHint.SideEffect, MaskedTextResultHint.SignedDigitExpected, MaskedTextResultHint.Success, MaskedTextResultHint.UnavailableEditPosition, MaskedTextResultHint.Unknown, (MaskedTextResultHint)(-1) };
60 static CultureInfo [] culture_infos = new CultureInfo [] { null, CultureInfo.CurrentCulture, CultureInfo.InvariantCulture, CultureInfo.GetCultureInfo ("es-ES") };
61 static object [] object_values = new object [] { "a", 1 };
62 static Type type_Mono;
64 static Type type_Hint_Mono;
65 static Type type_Hint_MS;
66 static Type type = typeof (MaskedTextProvider);
67 static ConstructorInfo [] ctors = type.GetConstructors ();
68 static MethodInfo [] methods = type.GetMethods ();
69 static PropertyInfo [] props = type.GetProperties ();
71 static List<ConstructorInfo> ok_constructors = new List<ConstructorInfo> ();
72 static List<string> ok_constructors_statements = new List<string> ();
73 static List<object []> ok_constructors_args = new List<object []> ();
75 static char [] [] add_char_test_values = new char [] [] {
76 new char [] {char.MinValue, char.MaxValue, 'A', '1', '+', '*', '8', '?', '@', 'A', 'Z', 'ñ' },
77 new char [] {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' },
78 new char [] {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9'},
79 // Some randomly generated characters.
80 new char [] {'\x26CC', '\xFE68', '\xB6D4', '\x8D66', '\xE776', '\x786F', '\x78E9', '\x12E4', '\x1B02', '\xFFC2', '\x5846', '\xF686', '\x438B', '\x2DE2'},
81 new char [] {'\x5B83', '\xC320', '\x570', '\xE07A', '\xD42D', '\xF21C', '\xEA4', '\x1113', '\x2851', '\x2926', '\x706D', '\xD59E', '\x8CCD', '\xC5DF', '\x7223', '\x7F75'},
82 new char [] {'\xC5E6', '\x5FE2', '\x61C0', '\xAB57', '\x8C1', '\x50D0', '\xCE1B', '\xABBF', '\xB7C7', '\xDB6F', '\x2DC3', '\xCF99'},
83 new char [] {'\x89A1', '\xB987', '\xD18D', '\x727E', '\x35BE', '\x19EF', '\x6D02', '\xF4A5', '\x79F4', '\xC7A0', '\x1827', '\xED54', '\x8E82', '\x643F', '\x7709', '\xA2D0', '\xEC1B', '\x4D04'},
84 new char [] {'\x804C', '\xB3AA', '\x309F', '\xE3A8', '\xCC22', '\x217C', '\x52C1', '\x7250', '\x3754', '\x34BB', '\x1C65', '\x16AC', '\xE0E1'},
85 new char [] {'\x4088', '\x9F85', '\xB6E5', '\x411', '\x1A4F'},
86 new char [] {'\x5833', '\x1273', '\xAFF6', '\x4BF2', '\x9841', '\x4998', '\xBE02', '\x7A3E', '\xEC91', '\x5712', '\x8EE'},
87 new char [] {'\x8E6A', '\x84E4', '\x4F4C', '\x341E', '\x5901', '\xD5DE', '\x56B', '\x5101', '\xE2FC', '\xA79F', '\x35AD', '\xBFE9', '\x5D8E', '\xB0F4', '\x3746'},
88 new char [] {'\x4DFA', '\xC4BA', '\xC023', '\x9EBE', '\xD1CC', '\xBCE3', '\x50AB', '\x6DD9', '\x3B3', '\xE4AD', '\x4B66', '\x8289', '\x6379'},
89 new char [] {'\x85BF', '\xE041', '\x2BCC', '\x50BA', '\x8842', '\x5BFD', '\xF22E', '\xC6A', '\x4684', '\xE106', '\xFEA6', '\xC94D', '\xAD24', '\xB093', '\xDCC6', '\xF00D'},
90 new char [] {'\xE74D', '\x1252', '\x1228', '\x2C44', '\x27D6', '\x96EF', '\x6A2F', '\xF9DE', '\xD186', '\x3438', '\xE173', '\x306A', '\x7453', '\x8A77', '\x82E1', '\xED88', '\xA79', '\x21E0'},
91 new char [] {'\x941C', '\xCD3', '\x28B1', '\xDB49', '\xB9AB', '\x418F'},
92 new char [] {'\xDF1C', '\xA018', '\x87F', '\xFBF', '\xA018', '\x9112', '\x13A6', '\xF64A', '\x6418'},
93 new char [] {'\x5150', '\xAC3E', '\x5DE8', '\x4952', '\xC19D', '\x56DC', '\xB6BB', '\x27C5'},
94 new char [] {'\xDBFF'},
95 new char [] {'\x568E', '\x7BC4', '\xDBC4', '\xA2AA', '\x8EB2', '\x875A', '\x5BF0', '\xE18F', '\xBE9B', '\x3709', '\x587C', '\xEAB4', '\xA9A0', '\xB7D2', '\xCA17', '\xF15F'},
96 new char [] {'\x941F', '\x5060', '\x1CC4', '\x7E09', '\x265E', '\x12AA', '\x9C37', '\x5E3B', '\xC3F8', '\xC19', '\xD27F', '\xB5F7', '\x71F6', '\xB383', '\xA8F1'},
97 new char [] {'\xAC05', '\x888D', '\x2453', '\x2CBA', '\x6D14', '\x1165', '\x9B8'},
98 new char [] {'\x14BA', '\xA57D', '\x392E', '\xF8D3', '\xC189', '\xB447', '\x917F', '\xF786', '\x657C', '\xF4F3', '\x93A5', '\xC05A', '\xBF3B', '\x5427'},
99 new char [] {'\x691A', '\x3F8C', '\x446F'},
100 new char [] {'\x7B40', '\x8970', '\x2B97', '\x4CA5', '\x8385', '\xAF8B', '\x8524', '\xFD9A', '\x2F45', '\xA5C3', '\xC4A4', '\x54B2', '\x82BA', '\x46A7', '\x650D'},
101 new char [] {'\x80E1', '\xD97B', '\xA363', '\x9CB1', '\xFB0', '\x7A9A', '\xDAF9', '\x507A'},
102 new char [] {'\x1FDE', '\xE896', '\xA655', '\x57DE', '\x585D', '\xBB39', '\xED2D', '\x28A5', '\x46AA'},
103 new char [] {'\x2E45', '\xE923', '\x58D8', '\xB5A9', '\x4948', '\x3C65', '\xB6AC', '\x623A', '\x51C2', '\xA0D8', '\xA041'},
104 new char [] {'\x79B3'}
106 static int [] add_char_test_char_count = new int [] { 1, 4, 7, 9, 6, 4, 3, 2 };
107 static string destination_file;
109 static string [] [] add_string_test_values = new string [] [] {
110 new string [] {"", "a", "abc", "`pasdf", "1297.1243,5132", "1", "€", "%", "$", "123", "AMKHJ"},
112 // Some random data here too.
113 new string [] {@"ꬡ鞱딅鷔疢삹かꄶ椩쥀申ᗱ賵ĕ릇Ā냲㰖챦蔖随暣酿盐㠫", @"ꁀ⇽⭼⧻", @"❍婝꽦䝶Ꞁ鞈⇳鄉⾮쭬⠪+邶Ͳ䍇쟤쵾", @"절☋ġ乢ﻒ袍ὰ᨟õ䜬鷃䬸담斨", @"ꚸਠ릉ॲꩲ曡鬷楔", @"ꝵ틥⹕巽髴łꌑ䢤Ỳ砗ߔ逓ⶨ䰖⬎칧", @"뷄㨞쐌ꭳᶖㇾ驀댫ꌀ蜍䝉䜹⢚ᣗ㿅焾᠀摥匚骼朎烥ⱶꊝ揹繟涎象", @"籧ী㙕᪗駱⺆絞", @"䞱壐
\11솗㷙ノ삚杹쾫殳㐖욨筌ǒ嚵줹综竸츅ᯠ䖜孞撱㶈ფฃ⒠ꗔ䊸骢锡୨䇬曼꽍겥ﮧ", @"ﱿ꺴羪₭떾蹳㒂쏡⫽쁤꾊ɥľ⯐ጳ昹꾶奶ꬊ䠎⣻饳ㆆ濣뿦᧫⳦荔飵톅洬엱揆껲꼔䨡念"},
114 new string [] {@"頽鏢⺸綉䤔퍽ࡡ㉌ꌉΩ㞜帤萸ẏ璜퐨ᄑ鍾ⰵ楯⾹뺤䵁ɳ⨵", @"퍕པ녧抟闍Ķ鶣遌鄭爯탖奩竳", @"概蹕︾֡⪺邅柅痹凱書⻍搩訅䚡ꥇ쐰", @"鎵剂퓼懤峮蹃懹䀺㨔녂˅ľ唢뻫ﳑ", @"뎫殐饛죖Ⴍ⻕퉨㥺潙꾶訵뀡뛂髅ᝀ류鱙ꢳ䐥Ɂ葖ꡖៜ떶Ⰸ拪쯐⊋铀䧏꧌ႄ署襫쑏㌏誅괚Ừ㎷秏똅觳奔ﬓ", @"㷡֓士吞뭕녪蕛ⁿ礞Ꙡ횏ꎈ贫卩䁥ٔᑋ", @"跔楊ḭ霋傟騰跩묶ヵﱱ路᳸㯕弚భ瓾棫쭾맰횋筢Ꚍ♦疟莞", @"옍뀍ႉ㗰⑊츒隚⸮櫧뷨畫ᖘ", @"ន䪴៝䜣ࠞ⭬ⓨ⦋꽙㨉쁿柵ꨒ珊粱曵䨭㙤౮", @"뿀쨬鄇疒觔㪽悗ﰈ溸ﱭ旉㙙໒⫫", @"ഝ骠謤䁇ﯧ揊昝睠녽悜図⬽ꎸ㞶揄쭠諴䶱", @"銋ꆘ죳덑쭐쐒ȫ玹擷凅麊姗殄鯄劽╰௬쏘晡⫪褋ታ褿ꔕ䍺墴⸒튔䍲鿷ḏ圁䰝", @"ꃸḊ賶龸揱磎ቨ徸숒ﴛ뾹ߴ㹔뽳윛謱ঀ輤惬죹蟕歝퐘ꄤↅ뇎聺˕ὧꊼ뇅ݥ绶鍁용웸ွ
\v⦇㷨ꟹ菁僀䤚", @"菾㚿쯏䊝槣䀌唑纺ꣁ㑚还귩䆗海ꁑ攸㌳㛮䁽㏙₦쐹弄輙㝥", @"時Д諾ೣ鶆䦻㜅㣙熹뉔<鉎㜟㢓༨箝ﱐ궳ᗦ嵒䎁", @"ᘙޖ䥚ࢧ짿ᡸ꒭ᦾӚ쫅卜퓸썀쎇ⱞ셺蒙䁁䥘蹗贙삯翱믇軀뢎₣⼔甘꾑", @"㏯㎡⽯鍰帐椒䗓碐㉅淍믌ꚥѴῨ"},
115 new string [] {@"Ø[zZL;_êù¡Ä0ÎXXZ", @"ÄÎo ÖVØ«´Á¢RÂ@V", @"ðü<ªXq57°zoD¢ÈÞ%Ë<ïÐA¸Jw$¬9Ôläüö>3<'wÊ%¿MÚêg5(", @"rûJ©öHÞIP^WóÚtòáÒ""ÿF", @"dMÑiO-×ÛÌèd)ôI.zÇ", @"ZÿuâCUD+¢å\$Þ°]þ7]¸Þ", @"ÑÌüòÒVÚK\$fPÁuºÉ@ÌüÜFµúwkI_èiR´ÐTb4=èÉ¿Q0ö", @"z¦)ïäw@dBtÝïÂD/®/FM\¸sñË®9E(ÅV}è<|t5Vw", @"Aíã¦b*1wƤRÆüî¬0FEq6ÎI lqØ_t7V×sÝÏÈÐE@Gå&0Ð`", @"\A¿¦µMO5${Ïu´3yÚ+_yM31÷^ÙM9öìÌ©'-Øãg`;´-N:e", @"åÍöã rÄc;]Orn¯N±îÚ¿¯Ç×""Á}GÓAìq", @"Q×x*ͱȶҶd;ÐK±îý®:ÕìÖ±âßu%ãzX9<<ï2iD¿Ùóïá22", @"T0Ä»G.èÍs¤rþÀmÂî#5ðïÝ;ÇHF7", @"µ"},
116 new string [] {@"nýÖ3euj|!þbÄOp@¬ËióX+^QiHØK¿ÅYLâÐzs", @"e÷#úE¡~Âá~-:P", @"%ºÂNÅþ", @"&ÙƧg-o^ZÝ2δc_óù", @"N~mi7¶S¸ÃlǸ¯ë¤LÂÊ'Vô", @"¸bjù3ßYQ)ùÄ7M¡ÆTÅñ&¨º¦7¡ÀWhBÜVX9è_;i¶&lÿ¶)", @"ÒÞ´®Â>¨·Ñâ\ôppKmÄ·êýN¦xùXd(æ§R¬@§ªÓÊwE", @"Y'ȱAðæ'>L\H¤ØrßÈ@)¶Ö:wQ=_ËõSbÆiJvÆçF»9&=Ïì", @"ùÕÜR讯¥.¸ðîÐaÛZ%Ö´mÈHö,Æt^üýrZ", @"Õ+ÿl@Ûú-A»È""ÞDÝYr×", @"PM|V.÷", @"=zugLòIBÂêDÑéi»©4zª«+ÂYØÊÿgò%Ýb{7=ÙqJ", @"ÖÑã]ì·?µ¿H:lOUßgYÜÞÑ", @"[]vÐ`Áì=WønPî(w£3äËík|?¢µÁYÈζ", @"[ýV¡KÙùí¶¤-hv´þõ¿oý´CHtÀ¥×ç¶zÑsRìäXÈ@À>ë`eäÍ(ãÚñ:"},
117 new string [] {@"µüÇ1ðYLGðÿfëçVáÎòÃÇ", @"íNßpïTâr9Ç8ãnX6ÉÍùÞünJäißåß", @"ê9CÆÍéPjyèõmædÁÄÒâRyÒyÏpòÃäVDÿKÅÏ"},
118 new string [] {@"ORüióíSDçwÞttyXñûNipá3iýúJÄN59è0Öy", @"û68UBnòÐLâòOVKYOæÌÎëÑjUìEâuFz", @"GtÝénäWÕÝWÀõiM7biQDIëwýÖâþ", @"dÓïØÉ6ÙìÊÎiò6ºÖjpÓÌyzpþèöñõxÔá4OõÝY"},
119 new string [] {@"vóAÏÿð3", @"ÎmÊèòè8øî2òv9", @"WNæXÔÓudCµMÇ0é5ÞÝáJãU7i7LãÔÏêoìÂrÕÚáyòõîÛãî", @"LzPZÐoñÝjÙì", @"ºOôd31éZ8BÒÂyµÍnfSDzçv6ÖÅæÓwüWëËÃAAHyjïÌ", @"ÚBßxiEäÆLÀõ9mmHqÉ", @"µW2RMw", @"ôòùÖnïJDÒáKÌÃ5kZæªßÜÞ4ctÕzÚÄÈ", @"õaíiwËdìÚHMÒI2ßÔ2ã4ºSP", @"W252ªÜsºâSDèF", @"RæØwXÂrsuövªb3wÎâØuÑGúS5Ò7ÓBÛvöYGóYû", @"FòùßmwQùMPÿÆzø8û1éCÇÚrgµýîFÝZúªòmxåOYÄÇÆ2VÉpCë62", @"à", @"SþîzhmÎäìC3oBÌêQhã0s4hïOjÉïôÑ", @"ÝXRææO6Ì", @"ËtqïcµìVÿCÌ8Ä7ÀWGw5äpÊ0ËùÀûYé", @"ËiÜÔë1nëkfæÞÜ61ÝõÑÊîè8ËßÇýuÊWñâçú7yäX1sÐÔq9iÿ", @"ÙÃçÙüVQºÜÃÅãÏÙG"},
120 new string [] {@"ú84myÅÜéNVØEÃÛmÅæEtQDî0Y3ònësîÑKêòtÇûËÐ", @"iÍäáóSnÇÍkµìÄBtu9zápÜäwiùkhã", @"àÖGÛõ7ÙcAÏÌ86Ïfj2zgïVÌÇ3ì85ÝèJÂ3gqÂôsëJC", @"ºcíJÖðrîoKUI73º2ºVÀ7äxOÂýùêöEÇTæ6ÉÊdÖVîüLÒ7tl", @"ahÀ3VüïpÙtWÜqÁlMûBÆNaMûzàQTÄ", @"ÇGÜwæ7õZè4ÇuÉQOPËlªÞüÒNMÞtDh", @"XÍîîgÙoLàÜÇÝ7ªÆrÒAbdæÍjuïöygBÌÜîÉDJÍÄé8æö"},
121 new string [] {@"ü7ÀpöYÚJÕwOnqpW9", @"ÙÖaÆÎSÉþSÞjdr5çÈsXBÖÂMÎs0DËeGRºwÐâäh13væ", @"ÔäÓàVAñgcu3CöÛæÜzKYYòéKÿkmÐûQznõ7XAy"},
122 new string [] {@"ñAÚäéÈÕúÇÅßûULÞxtKáâVÚùOÈâÄKÐ1õûàåpçòWÊêFÃèö0Fõh", @"nä6æE", @"qªèrYº5z6ÊkoiDäÓ0q", @"ävm6VzÖItXÈôÈéiÎiÑZHK0Ó1LK9Z", @"FUÿ", @"YÒàXÏIæAÜGPõµÝLkâÑñúðäF", @"x7ÝÅbçëVÔxííOÒ9Miî8é0bÔæE", @"µÕþ7öMTÔýtÁgÜÏswðiB6éýÁºnÊÊɵÁl8", @"ÒbÏïëèËßÏïÃÊmäø6ÎþïAI5çHü4oúßkéÆ8íùÎÓSÆ", @"ÊÐèüGÔÙyÁZaññÓÐØKØÁHÚoo", @"ÀLé9ÑÖtPASJòrWàcaÄóêõçXëeÃë84rGXmvxeNühTÃhV", @"sÌGqªûôôxYçÀërtÐÞçzÔºÁðûÛËÒw", @"WvjHùæÕßgßbÅOkþèÛäÂÕ", @"úðpjZÏÁÚYÈhÔrÇÑ", @"úðëäÌöÛµ34cpCsÝçìÀÄÑîtãªâã5ün"},
123 new string [] {@"57gÊÍÁsEækPdyd9RòÒ3QNQF", @"rØUG", @"cüîTîaòouøåØöñÚvñäÕºßcýôbðºÑLbÀwµãçjè", @"ºçüÊ7òhÎnOâYö9àéX", @"eINõFÐãSû0oªPëÓÄxÿçyííCæÜp", @"âÎyuÕörxéiMi", @"0êqtNëÙáÿöøCWBÃPÜOÎåBÌÑÒÃ1yØîôSîýP6ýøGQûЪoÕsÍ", @"HIbÃïòzòKA7òq5CoÓwaÑAj99WbUÜãéÄ6rÐÕ", @"âDzoñÌÄTyYÔîÐÄUiVº6NFåêÂéÉÙþKÇÞ", @"ËcbÈnRtuÅVâogÆJwÊfeA06ÜtjfLäí74ÆzúmüÐä", @"Õ2FIðEaÊfªcþÓKgüt", @"ºnÁpõ", @"5ËÉóXÞmqrNá3xLÌYÇMÃÉAHkýïÝmÁÃYðjBCârærÄG", @"VdÏvMXçdúHYxëaeWÌàÄ3k", @"BÿPhÇùuòdãçwÕrC7pRÉTû9JÙyOVðËÌÞVuoædçIÎ9ùg", @"8ê", @"ýcàµRCÅyÄáÀöNïgÛIÞQåÉæKHøAÙBÍ9EWVºç3ÖÁXàÊWPmB"},
124 new string [] {@"jîI", @"BºåfûÊkuÞCÿj7NÖE2PåÊù41päòá", @"kfÞåsø5ªòã4LÅ5lúnÞr5KhDuKÛXáYGïÀ", @"FNàãAJGüÞÃéntßÅSéÜaJátdçkEýrDÖpÙzEÅgöh7ûz", @"wÄÐÛOÚØÖÚÞ7XÚIÓúòõmh2Qñ4ÏtçWWámÜÎ5òÇðªUXèT", @"åLãZÉvg52ùBù2ýèAIÞhë6TýÅÙÂTºâÝVýÝòÛÝÕ", @"UpíD4Ç", @"ìéÇSõa4", @"úcçýúìÎ01ÔÕ", @"fuùìàLÉsßùµÊËIãôwjqéµÝLÉI", @"ÐÜÉÌaZuõYÛçì5ÑôÿããKNçVaQÀ1ÛSõÇÕu0VÃIVjVe3ÎZVæÈHÜT", @"UbÍPâopoHxâËAq", @"m", @"UÔÏÏÑhÝÜÃæuYRÎÕTºfxMJQ7ÓDªIJçúêÁxJÕvþçÿjÐbߺýQCEË", @"ÕAA0étiBÀKuñçµGÌ7wÅkÙyaDwAÆÍTµuÌåsq4PÀæE"},
125 new string [] {@"9eúRÏóÊìÚÆw0W1Í5ÎwÁûñåàöáwábÍxåþSF", @"ÎIJwßfÛëWÃyFMájt6j8sòÝùÎuØ8qcÅI1Â6ØìþOíWÅÁGÞÀÛø", @"ì9ÈuÍGá", @"ü3aICoSîFùüóuÙJâëøwåzÒ8", @"KµµÉÁÆMîàZÚõÑÙlGcDOrqLÀRã6k2ÛPáÓKÔíìªöÝÄP", @"mBOdÁ5e989kónHØòzã9Gýûðn0", @"IqhqáFj5κcñïIàOdÂÙx5êåqïfxÌÚÀð", @"ôÂY7ÕNRÍ5ÆPMÐHàvÆÃÒCöIÊà1GêDP", @"QsI", @"ô7âyLIúÅjgCrð0ñQTúúIvnßÀDoóEÃqboHd8azÏ", @"æýxJº6YæiÈoÿ0ëªSuãß9ÁöiÉÉQÂaaSUPEGvOx", @"Õ", @"Znú3üð", @"FÄÃßõyOçøºñúOö0MBÒIgÆÞáÖAðßZÿÍS", @"ìQóÛR1yqòSìáÑîÀÎxJìhYúÌïêùwa", @"6GO6ÅÀc4aDÝX6joû1ÉÚ1úfuFB9ôÛuIøîhþZüÜBÐ93", @"LhCûAÀFõCßhNâBáýãEüìóüI7üÎÍeoÇàKX"},
126 new string [] {@"iLµÃPOØêµ7åtT4µBí8ÐüGäõEÝu5NáSÓíu9oöãexrkýMîËdü", @"äpÜkRmÝñrªnÄ4gãÖäì27LÄçÄßJámuuðénøH3", @"ÚIhÖbþmæVÏíØÇlŵVçÂóµG2Ët2QëEúKÄøl1dBX9cVêpóT", @"7ÛbD1ÓUmJ"},
127 new string [] {@"Á7yÿ9eôðüxNDþÁÒoÌèE", @"ÌâñBTvÜIZØJÿOg3Åøc0ÌÇßÌÒªeõÐóÊúÃXeúÌDÄãpü", @"8xufMÍ5INÒFÿÙyYïnÖø2ÜçÉNúÕìßìu", @"jûNTPµhúgÞqèµÍQÜ", @"ÚRY4ïkägkùHøXDÌݺõzá9bÏDÅXïÐÍ4ZgVS5î1Çs", @"LYòYíaBEhnGâÛçå", @"ÙHIÀþÀãG", @"KHÂáïzÞGÊqªÄ6Òf7óatþÿÙÊbxgÝoGLc", @"oóÓËqÑloÐâ3ZùÛÚfSÄÇn4ñðÛôÑQËÉpwOÁÅÓ2ä", @"b", @"37ZÄàüþLfyÙÆ3ÃøÁfÄØÑÿR9wÕæßèYqÓaêÛJNïg", @"fönîí9âsðÂÝÛO1FÀÃzyes09hÏÌóÜ6", @"jr9EÐàQßWëÅÜjs", @"QôyFÌYoÁig03lKNfOgTøcåÑiá2ÄGÍÒîãòÑsiÔñ", @"ÈþâWJ", @"XiULjBOªÈaqgwÆj7ïQk", @"ÉzaÞül7óKõØúëbã0INëhCÈþ", @"ÿfwúxqbÖMrñaËB1õpqÔåëíæ", @"ÅrÍxhIÂkVƪ9o5Ôÿ6ëÄ8À"},
128 new string [] {@"ÎÎY9È", @"BDiPäÿðrö6zQøÎPBm", @"ÃYºÆsíDæùÇåuZ0NÆ1îSÀìFiÄ", @"", @"IXûÁñvFWÜÐÙòiWùæøÒldJïvç4ÈVïÈùp", @"øËCÇXS", @"ïPRàÌûÃyFüåðÊwuwpÁHþ2o3lHùgÿâ6ØSûNϪM3ËçÛpè7ÛùÚÚ", @"Oõ1w6N0é4êðMxtþô", @"3VÂåðqGOÈUúðcªFxYmeÏÚùÜÔ8ÁµuÎFBòÁöAªøóKWZöV", @"rbÌØÄçÒOõäøfxKÙðô8RsïYÇézÞüªyÄÂbâÌïù", @"dó1FøÍßEoûcAåÛÐ", @"yxèÕìzÕCÎãËãÈÎSdÍÆOßÐ3Ñ8îöZÅPªäpýokÀäòp5ÙMKþúªÙØR", @"ÚÀÞoe1TfV5Íê3írytÏÞÜéVsÔsSÀwÅeìFRòÿJñ3wOÄyïÏIeXÓ", @"eÅéµeJçdu3bÛBÇlùÃØjÛgôRÞ23jöÅÕÚIøë", @"gðoqç7µ", @"ouèVïFXey4û", @"rëÃÊQèÞÍÉÔxwªÿÙëJ8LÙZWÙìÓìúswòÅñVùý", @"LÒyÿØ7ÀºNÞçPÙbúfÜSíhcLóÙSsiýñÆJÁaï5Wn69ºA31eêÊø"},
129 new string [] {@"ïÛRøæY0CXùPÝÃòåÁeáìÒRºêy", @"nrln1", @"îënOÑOànM7ætÂY1ãgäIÕöÙEÌÅÆSvCNòeFpÿÛÜðDûexmPFÅëvc"},
130 new string [] {@"gÀÃhLbÓÕèíWÕXvBNÊâAÕlþ4ÈUQhîpìÕ", @"ôä7ÕË3ÿÒQÙËZDS", @"Iù1xMOlHèRîå", @"öÊVØVö9ÎÕfCUãñeHföDuxfõ6Ó8â4ÇõÙArhñöÈÕðÊF", @"GFïlÞÝjÚVhóØáBJ1ºxÑò1GÞÐ", @"êjnÞoÎPf6Çpû0", @"àñNÛðaTmcýßòÔgjÞNIÒÒeÄÓFªºÒYÂ3jÆìRÕLHÖØôØÊßÈ3", @"ÀôXõíæwßBlnÆ11vi2", @"SQþëªëyürZsúGgÂaëÄâÇÒ46UÉçúàVVÅçIìµèÌmÞ", @"þc1ÏùåñmQÝ8ÏMÅiqõídÇHÔÚëÿÂãmdÛm", @"ÙìR", @"7xóuÝëèbÂÊMÛ4LêÊÑjìÃ", @"þÓýöî2ïAðmÄÅkTªrgüVïiÔïXEûáHþõñóòJQ", @"Æ"},
131 new string [] {@"lyQYûoRÔUaqcODúîu8äÆZï4LôUÝrºPâéT2ÖåÀKÍõÙéJÞpæ", @"ÀÕpnóÀOÁªIg0QgOèÐL5îv8ÀfÙFNìW"},
132 new string [] {@"ÃnjoÍèËkuwYÝ7ç2csòçDûªÆGìö2m", @"ïgíÂuµ7ÕPJµBuéÑL97åoÒ7ÐTtPÎÊt1hñªÿËTRíëÿïîLÃÍFKCÇ", @"ÄÚÏÞlùÒlêtaßzÊäªAÇÛN", @"pRñQáQÎÃûL5ùÓX2µÁûDPoæÝwwHï", @"øuSTúÌ", @"ùëÿCrËoTDìöhìßEÚwúJ9ÒLWÅØÝnª", @"ÏjÁécæJã8ùûÏ", @"ÈË9ëèµpåÚAmB2VEUZàtøFzâÔíúx", @"ÍÌëXûõAøZVËÚMü2PWÝÌÇUÃëfùÁã", @"oKȺgµKغÖCyCË29Á7ÔùHÄiýÉêÝÇLJý6æªÌËæÝbku", @"EXµÚIªHúÀXKªÍdWIõÒLRíJÒôÊqÁ9ªñbþWßþx", @"Zpàø6ÆoæûÃu44tÛhdsnjÉeiDÖyóøªÑãÌ0Ø3üA1íãÌ", @"hÆåÅáúÅ", @"ðÒXR4Vd"},
133 new string [] {@"iIZm", @"ÝÂÄÃnîg"},
134 new string [] {@"éik2DQHØüwaÀÆÄ", @"uvÜõWDémÐfQíììåJBïüáõEøaëLáÿÁÏþÖòÑ", @"àêÂãµýÐgýâ", @"7º", @"jsýCkzaFAAÝGDmÛÿôåô6lìª8ê", @"µÎÙÎÊZAvýcóAyáYaý1ul9ÔDqZéÁÎm3µE", @"eadùjFLÑGèÜFoàYçÑaóÝÇDÄ2Iü0µTS4QñÀyuÝzÇÛOÃpvw24ä", @"ÑÆNAÑîQXïø", @"ácGQãC", @"3oîB7téCxÔõðð6ÝxäíLÒËu5jÊNgïL22Å"},
137 static object [] state_methods_values = new object [] {
139 "here goes name of method", new object [] {"arg1", 2, "etc", "must match type exactly"}
142 new object [] {"Add", new object [] {"a"}},
143 new object [] {"Add", new object [] {'a'}},
144 new object [] {"Add", new object [] {'a', 1, MS_System_ComponentModel.MaskedTextResultHint.Unknown}}
147 new object [] {"Add", new object [] {"a"}},
148 new object [] {"Remove", new object [] {}},
149 new object [] {"InsertAt", new object [] {'a', 1}}
152 new object [] {"Add", new object [] {"1"}},
153 new object [] {"Add", new object [] {"2"}},
154 new object [] {"InsertAt", new object [] {'3', 7}},
155 new object [] {"InsertAt", new object [] {'4', 4}}
158 new object [] {"InsertAt", new object [] {'z', 0}},
159 new object [] {"InsertAt", new object [] {'z', 1}},
160 new object [] {"InsertAt", new object [] {'z', 2}},
163 new object [] {"InsertAt", new object [] {'z', 0}},
164 new object [] {"InsertAt", new object [] {'z', 2}},
167 /*static string state_methods = new string [] {
168 "Add", // char, string, char+(out)int+(out)hint
170 "InsertAt", // char+int, string+int, char+int+int+hint, string+int+int+hint
171 "Remove", // -, int+hint
172 "RemoveAt", // int, int+int, int+int+int+hint
173 "Replace", // char+int, string+int, char+int+int+hint, string+int+int+hint, char+int+int+int+hint, string+int+int+int+hint
174 "Set" // string, string+int+hint
177 //static public void char_gen ()
179 // string result = "";
180 // Random rnd = new Random ();
181 // result += "static char [][] add_char_test_values2 = new char [][] {" + Environment.NewLine;
182 // for (int i = 0; i < 25; i++) {
183 // result += "\tnew char [] {";
184 // int b = rnd.Next (0, 20);
185 // for (int j = 0; j < b; j++) {
186 // int a = rnd.Next (ushort.MinValue, ushort.MaxValue + 1);
187 // char c = Convert.ToChar (a);
188 // result += GetStringValue (c);
197 // result += Environment.NewLine + "}";
198 // result += Environment.NewLine;
200 // MS_System.System.Diagnostics.Debug.WriteLine (result);
202 //static public void str_gen ()
204 // string result = "";
205 // Random rnd = new Random ();
206 // result += "static string [][] add_string_test_values2 = new string [][] {" + Environment.NewLine;
207 // for (int i = 0; i < 25; i++) {
208 // result += "\tnew string [] {";
209 // int b = rnd.Next (0, 20);
210 // for (int j = 0; j < b; j++) {
211 // int c = rnd.Next (0, 50);
213 // for (int k = 0; k < c; k++) {
216 // a = rnd.Next (ushort.MinValue, ushort.MaxValue + 1);
217 // } else if (i < 4) {
219 // a = rnd.Next (ushort.MinValue, 256);
220 // } while (!MS_System_ComponentModel.MaskedTextProvider.IsValidInputChar (Convert.ToChar (a)));
223 // a = rnd.Next (ushort.MinValue, 256);
224 // } while (!char.IsLetterOrDigit (Convert.ToChar (a)));
226 // str += Convert.ToChar (a).ToString ();
228 // result += "@\"" + str.Replace ("\"", "\"\"") + "\"";
239 // result += Environment.NewLine + "};";
240 // result += Environment.NewLine;
242 // MS_System.System.Diagnostics.Debug.WriteLine (result);
247 MaskedTextProviderTest tests = new MaskedTextProviderTest ();
248 tests.Replace_string_int_int_int_MaskedTextResultHintTest00137 ();
253 static int Main (string [] args)
257 if (typeof (int).GetType ().Name != "RuntimeType") {
258 Console.WriteLine ("This must be run on the MS runtime.");
263 // Check that this path is correct before removing the comment.
264 // file = "..\\..\\Test\\System.ComponentModel\\MaskedTextProviderTestGenerated.cs";
265 // file = @"Z:\mono\head\mcs\class\System\Test\System.ComponentModel\MaskedTextProviderTestGenerated.cs";
267 destination_file = file;
269 if (destination_file == "") {
270 Console.WriteLine ("You'll have to set the destination file. See source for instructions.");
274 using (StreamWriter stream = new StreamWriter (new FileStream (file, FileMode.Create, FileAccess.Write), Encoding.Unicode)) {
278 GenerateAdd_char_int_MaskedTextResultHint_Test ();
279 GenerateAdd_char_Test ();
280 GenerateAdd_string_int_MaskedTextResultHint_Test ();
281 GenerateAdd_string_Test ();
282 GenerateClear_MaskedTextResultHint_Test ();
283 GenerateClearTest ();
284 GenerateCloneTest ();
285 GenerateEditPositionsTest ();
286 GenerateFindAssignedEditPositionFromTest ();
287 GenerateFindAssignedEditPositionInRangeTest ();
288 GenerateFindEditPositionFromTest ();
289 GenerateFindEditPositionInRangeTest ();
290 GenerateFindNonEditPositionFromTest ();
291 GenerateFindNonEditPositionInRangeTest ();
292 GenerateFindUnassignedEditPositionFromTest ();
293 GenerateFindUnassignedEditPositionInRangeTest ();
294 GenerateInsertAt_char_int_Test ();
295 GenerateInsertAt_char_int_int_MaskedTextResultHintTest ();
296 GenerateInsertAt_string_int_int_MaskedTextResultHintTest ();
297 GenerateInsertAt_string_int_Test ();
298 GenerateIsAvailablePositionTest ();
299 GenerateIsEditPositionTest ();
300 GenerateIsValidInputCharTest ();
301 GenerateIsValidMaskCharTest ();
302 GenerateIsValidPasswordCharTest ();
304 GenerateRemoveTest ();
305 GenerateRemove_int_MaskedTextResultHintTest ();
306 GenerateRemoveAt_int_int_int_MaskedTextResultHintTest ();
307 GenerateRemoveAt_int_int_Test ();
308 GenerateRemoveAt_int_Test ();
309 GenerateReplace_char_int_int_int_MaskedTextResultHintTest ();
310 GenerateReplace_char_int_int_MaskedTextResultHintTest ();
311 GenerateReplace_char_int_Test ();
312 GenerateReplace_string_int_int_int_MaskedTextResultHintTest ();
313 GenerateReplace_string_int_int_MaskedTextResultHintTest ();
314 GenerateReplace_string_int_Test ();
315 GenerateSet_string_int_MaskedTextResultHintTest ();
316 GenerateSet_string_Test ();
317 GenerateToDisplayStringTest ();
318 GenerateToString_bool_bool_bool_int_int_Test ();
319 GenerateToString_bool_bool_int_int_Test ();
320 GenerateToString_bool_bool_Test ();
321 GenerateToString_bool_int_int_Test ();
322 GenerateToString_bool_Test ();
323 GenerateToString_int_int_Test ();
324 GenerateToStringTest ();
325 GenerateVerifyCharTest ();
326 GenerateVerifyEscapeCharTest ();
327 GenerateVerifyString_string_int_MaskedTextResultHintTest ();
328 GenerateVerifyString_string_Test ();
333 Console.WriteLine ("Press any key to exit.");
338 static void GenerateAdd_char_Test ()
341 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
345 MS_System_ComponentModel.MaskedTextProvider mtp = null;
347 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int testPosition;", "MaskedTextResultHint resultHint;", "bool result;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
349 foreach (string mask in test_masks) {
350 foreach (char [] chars in add_char_test_values) {
351 foreach (char c in chars) {
352 bool more_states = true;
357 arguments = new object [] { c };
358 if (Compare ("Add", mask, ref stateindex, arguments, ref more_states)) {
363 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
364 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
365 more_states = CreateState (mtp, stateindex);
368 result = mtp.Add (c);
369 WriteLine (string.Format ("result = mtp.Add ('\\x{0:X4}');", (int)c) + (c != char.MinValue ? "/* " + c.ToString () + " */" : "/* null */"));
370 WriteLine ("Assert.AreEqual ({0}, result, \"{1}#{2}\");", GetStringValue (result), TestName, (counter++).ToString ());
371 WriteAssertProperties (mtp, Name, TestName, ref counter);
373 } while (more_states);
379 static void GenerateAdd_char_int_MaskedTextResultHint_Test ()
382 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
385 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int testPosition;", "MaskedTextResultHint resultHint;", "bool result;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
387 MS_System_ComponentModel.MaskedTextProvider mtp = null;
388 int testPosition = 0;
389 MS_System_ComponentModel.MaskedTextResultHint resultHint = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
392 foreach (string mask in test_masks) {
393 foreach (char [] chars in add_char_test_values) {
394 foreach (char c in chars) {
395 bool more_states = true;
400 arguments = new object [] { c, testPosition, resultHint };
401 if (Compare ("Add", mask, ref stateindex, arguments, ref more_states)) {
406 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
407 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
409 more_states = CreateState (mtp, stateindex);
412 result = mtp.Add (c, out testPosition, out resultHint);
413 WriteLine (string.Format ("result = mtp.Add ('\\x{0:X4}', out testPosition, out resultHint);", (int)c) + (c != char.MinValue ? "/* " + c.ToString () + " */" : "/* null */"));
414 WriteLine ("Assert.AreEqual ({0}, result, \"{1}#{2}\");", GetStringValue (result), TestName, (counter++).ToString ());
415 WriteLine ("Assert.AreEqual ({0}, resultHint, \"{1}#{2}\");", GetStringValue (resultHint), TestName, (counter++).ToString ());
416 WriteLine ("Assert.AreEqual ({0}, testPosition, \"{1}#{2}\");", GetStringValue (testPosition), TestName, (counter++).ToString ());
417 WriteAssertProperties (mtp, Name, TestName, ref counter);
420 } while (more_states);
426 static void GenerateAdd_string_Test ()
429 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
432 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int testPosition;", "MaskedTextResultHint resultHint;", "bool result;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
434 MS_System_ComponentModel.MaskedTextProvider mtp = null;
437 foreach (string mask in test_masks) {
438 foreach (string [] strings in add_string_test_values) {
439 foreach (string s in strings) {
440 bool more_states = true;
445 arguments = new object [] { s };
446 if (Compare ("Add", mask, ref stateindex, arguments, ref more_states)) {
451 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
452 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
453 more_states = CreateState (mtp, stateindex);
455 result = mtp.Add (s);
456 WriteLineNonFormat ("result = mtp.Add (@\"" + s.Replace ("\"", "\"\"") + "\");");
457 WriteLine ("Assert.AreEqual ({0}, result, \"{1}#{2}\");", GetStringValue (result), TestName, (counter++).ToString ());
458 WriteAssertProperties (mtp, Name, TestName, ref counter);
460 } while (more_states);
466 static void GenerateAdd_string_int_MaskedTextResultHint_Test ()
469 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
472 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int testPosition;", "MaskedTextResultHint resultHint;", "bool result;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
474 MS_System_ComponentModel.MaskedTextProvider mtp = null;
475 int testPosition = 0;
476 MS_System_ComponentModel.MaskedTextResultHint resultHint = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
480 foreach (string mask in test_masks) {
481 foreach (string [] strings in add_string_test_values) {
482 foreach (string s in strings) {
483 bool more_states = true;
488 arguments = new object [] { s, testPosition, resultHint };
489 if (Compare ("Add", mask, ref stateindex, arguments, ref more_states)) {
493 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
494 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
495 more_states = CreateState (mtp, stateindex);
498 result = mtp.Add (s, out testPosition, out resultHint);
499 WriteLineNonFormat ("result = mtp.Add (@\"" + s.Replace ("\"", "\"\"") + "\", out testPosition, out resultHint);");
500 WriteLine ("Assert.AreEqual ({0}, result, \"{1}#{2}\");", GetStringValue (result), TestName, (counter++).ToString ());
501 WriteLine ("Assert.AreEqual ({0}, resultHint, \"{1}#{2}\");", GetStringValue (resultHint), TestName, (counter++).ToString ());
502 WriteLine ("Assert.AreEqual ({0}, testPosition, \"{1}#{2}\");", GetStringValue (testPosition), TestName, (counter++).ToString ());
503 WriteAssertProperties (mtp, Name, TestName, ref counter);
506 } while (more_states);
513 static void GenerateClearTest ()
515 GenerateClear_MaskedTextResultHint_Test (false);
517 static void GenerateClear_MaskedTextResultHint_Test ()
519 GenerateClear_MaskedTextResultHint_Test (true);
522 static void GenerateClear_MaskedTextResultHint_Test (bool with_result)
525 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
529 TestName = TestName.Replace ("_MaskedTextResultHint_", "");
532 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int testPosition;", "MaskedTextResultHint resultHint;", "bool result;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
534 MS_System_ComponentModel.MaskedTextProvider mtp = null;
535 MS_System_ComponentModel.MaskedTextResultHint resultHint = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
537 foreach (string mask in test_masks) {
538 bool more_states = true;
543 arguments = new object [] { resultHint };
544 if (Compare ("Clear", mask, ref stateindex, arguments, ref more_states)) {
549 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
550 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
551 more_states = CreateState (mtp, stateindex);
555 mtp.Clear (out resultHint);
556 WriteLine ("mtp.Clear (out resultHint);");
557 WriteLine ("Assert.AreEqual ({0}, resultHint, \"{1}#{2}\");", GetStringValue (resultHint), TestName, (counter++).ToString ());
560 WriteLine ("mtp.Clear ();");
562 WriteAssertProperties (mtp, Name, TestName, ref counter);
564 } while (more_states);
568 static void GenerateCloneTest ()
570 ////string Name = "mtp";
571 //string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
575 //WriteTestHeader (TestName);
578 //WriteLine ("Assert.Ignore (\"Only manual tests here for the moment.\");");
580 //WriteTestFooter ();
583 static void GenerateEditPositionsTest ()
586 MS_System_ComponentModel.MaskedTextProvider mtp = null;
587 string TestName = "EditPositionsTestGenerated";
589 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int testPosition;", "MaskedTextResultHint resultHint;", "bool result;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
591 foreach (string mask in test_masks) {
593 bool more_states = true;
596 arguments = new object [] {};
597 if (Compare ("EditPositions", mask, ref stateindex, arguments, ref more_states)) {
603 string new_statement = "mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");";
604 more_states = CreateState (mtp, stateindex);
606 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
607 string result = MaskedTextProviderTest.join (mtp.EditPositions, ";");
609 WriteLine (new_statement);
610 WriteLine ("Assert.AreEqual (\"" + result + "\", MaskedTextProviderTest.join (mtp.EditPositions, \";\"), \"{0}#{1}\");", TestName, (counter++).ToString ());
612 } while (more_states);
619 static void GenerateFindFromTest (string methodName)
622 string TestName = methodName + "Test";
625 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
626 MS_System_ComponentModel.MaskedTextProvider mtp = null;
628 foreach (string mask in test_masks) {
629 foreach (bool value in new bool [] { true, false }) {
630 for (int i = 0; i < mask.Length + 2; i++) {
632 bool more_states = true;
635 arguments = new object [] { i, value };
636 if (Compare (methodName, mask, ref stateindex, arguments, ref more_states)) {
641 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
642 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
643 more_states = CreateState (mtp, stateindex);
646 WriteLine ("Assert.AreEqual ({0}, mtp." + methodName + "({1}, {3}), \"#{2}\");", mtp.GetType ().InvokeMember (methodName, BindingFlags.Public | BindingFlags.Instance | BindingFlags.InvokeMethod, null, mtp.GetType (), arguments).ToString (), i.ToString (), (counter++).ToString (), value ? "true" : "false");
648 WriteAssertProperties (mtp, Name, TestName, ref counter);
651 } while (more_states);
657 static void GenerateFindRangeTest (string methodName)
660 string TestName = methodName + "Test";
663 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
664 MS_System_ComponentModel.MaskedTextProvider mtp = null;
666 foreach (string mask in test_masks) {
667 foreach (bool value in new bool [] { true, false }) {
668 for (int i = 0; i < mask.Length + 2; i++) {
669 for (int k = 0; k < mask.Length + 2; k++) {
672 bool more_states = true;
676 arguments = new object [] { i, k, value };
677 if (Compare (methodName, mask, ref stateindex, arguments, ref more_states)) {
682 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
683 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
684 more_states = CreateState (mtp, stateindex);
687 WriteLine ("Assert.AreEqual ({0}, mtp." + methodName + " ({1}, {2}, {4}), \"#{3}\");", mtp.GetType ().InvokeMember (methodName, BindingFlags.Public | BindingFlags.Instance | BindingFlags.InvokeMethod, null, mtp.GetType (), arguments).ToString (), i.ToString (), k.ToString (), (counter++).ToString (), value ? "true" : "false");
689 WriteAssertProperties (mtp, Name, TestName, ref counter);
692 } while (more_states);
700 static void GenerateFindAssignedEditPositionFromTest ()
702 GenerateFindFromTest ("FindAssignedEditPositionFrom");
704 static void GenerateFindAssignedEditPositionInRangeTest ()
706 GenerateFindRangeTest ("FindAssignedEditPositionInRange");
708 static void GenerateFindEditPositionFromTest ()
710 GenerateFindFromTest ("FindEditPositionFrom");
712 static void GenerateFindEditPositionInRangeTest ()
714 GenerateFindRangeTest ("FindEditPositionInRange");
716 static void GenerateFindNonEditPositionFromTest ()
718 GenerateFindFromTest ("FindNonEditPositionFrom");
720 static void GenerateFindNonEditPositionInRangeTest ()
722 GenerateFindRangeTest ("FindNonEditPositionInRange");
724 static void GenerateFindUnassignedEditPositionFromTest ()
726 GenerateFindFromTest ("FindUnassignedEditPositionFrom");
728 static void GenerateFindUnassignedEditPositionInRangeTest ()
730 GenerateFindRangeTest ("FindUnassignedEditPositionInRange");
733 static void GenerateInsertAt_char_int_Test ()
736 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
739 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
740 MS_System_ComponentModel.MaskedTextProvider mtp = null;
742 foreach (string mask in test_masks) {
743 foreach (char chr in char_values) {
744 for (int i = 0; i < mask.Length; i++) {
745 bool more_states = true;
750 arguments = new object [] { chr, i };
751 if (Compare ("InsertAt", mask, ref stateindex, arguments, ref more_states)) {
756 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
757 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
758 more_states = CreateState (mtp, stateindex);
761 WriteLine ("Assert.AreEqual ({0}, mtp.InsertAt ({1}, {2}), \"#{3}\");", GetStringValue (mtp.InsertAt (chr, i)), GetStringValue (chr), i.ToString (), (counter++).ToString ());
763 WriteAssertProperties (mtp, Name, TestName, ref counter);
766 } while (more_states);
773 static void GenerateInsertAt_string_int_Test ()
776 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
779 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
780 MS_System_ComponentModel.MaskedTextProvider mtp = null;
782 foreach (string mask in test_masks) {
783 foreach (string str in string_values) {
787 for (int i = 0; i < mask.Length; i++) {
788 bool more_states = true;
793 arguments = new object [] { str, i };
794 if (Compare ("InsertAt", mask, ref stateindex, arguments, ref more_states)) {
799 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
800 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
801 more_states = CreateState (mtp, stateindex);
804 WriteLine ("Assert.AreEqual ({0}, mtp.InsertAt ({1}, {2}), \"#{3}\");", GetStringValue (mtp.InsertAt (str, i)), GetStringValue (str), i.ToString (), (counter++).ToString ());
806 WriteAssertProperties (mtp, Name, TestName, ref counter);
809 } while (more_states);
816 static void GenerateInsertAt_char_int_int_MaskedTextResultHintTest ()
819 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
822 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
823 MS_System_ComponentModel.MaskedTextProvider mtp = null;
825 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
827 foreach (string mask in test_masks) {
828 foreach (char chr in char_values) {
829 for (int i = 0; i < mask.Length; i++) {
830 bool more_states = true;
835 arguments = new object [] { chr, i, Int32_out, MaskedTextResultHint_out };
836 if (Compare ("InsertAt", mask, ref stateindex, arguments, ref more_states)) {
841 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
842 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
843 more_states = CreateState (mtp, stateindex);
845 WriteLine ("Assert.AreEqual ({0}, mtp.InsertAt ({1}, {2}, out Int32_out, out MaskedTextResultHint_out), \"#{3}\");",
846 GetStringValue (mtp.InsertAt (chr, i, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (chr), i.ToString (), (counter++).ToString ());
847 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
848 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
850 WriteAssertProperties (mtp, Name, TestName, ref counter);
853 } while (more_states);
860 static void GenerateInsertAt_string_int_int_MaskedTextResultHintTest ()
863 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
866 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
867 MS_System_ComponentModel.MaskedTextProvider mtp = null;
869 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
871 foreach (string mask in test_masks) {
873 foreach (string str in string_values) {
877 for (int i = 0; i < mask.Length; i++) {
878 bool more_states = true;
883 arguments = new object [] { str, i, Int32_out, MaskedTextResultHint_out };
884 if (Compare ("InsertAt", mask, ref stateindex, arguments, ref more_states)) {
889 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
890 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
891 more_states = CreateState (mtp, stateindex);
894 WriteLine ("Assert.AreEqual ({0}, mtp.InsertAt ({1}, {2}, out Int32_out, out MaskedTextResultHint_out), \"#{3}\");",
895 GetStringValue (mtp.InsertAt (str, i, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (str), i.ToString (), (counter++).ToString ());
896 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
897 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
899 WriteAssertProperties (mtp, Name, TestName, ref counter);
902 } while (more_states);
909 static void GenerateIsAvailablePositionTest ()
912 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
915 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
916 MS_System_ComponentModel.MaskedTextProvider mtp = null;
918 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
920 foreach (string mask in test_masks) {
921 for (int i = -1; i < mask.Length + 2; i++) {
922 bool more_states = true;
926 arguments = new object [] { i };
927 if (Compare ("IsAvailablePosition", mask, ref stateindex, arguments, ref more_states)) {
932 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
933 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
934 more_states = CreateState (mtp, stateindex);
937 WriteLine ("Assert.AreEqual ({0}, mtp.IsAvailablePosition ({1}), \"#{2}\");", GetStringValue (mtp.IsAvailablePosition (i)), i.ToString (), (counter++).ToString ());
939 WriteAssertProperties (mtp, Name, TestName, ref counter);
942 } while (more_states);
948 static void GenerateIsEditPositionTest ()
951 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
955 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
956 MS_System_ComponentModel.MaskedTextProvider mtp = null;
958 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
960 foreach (string mask in test_masks) {
961 for (int i = -1; i < mask.Length + 2; i++) {
962 bool more_states = true;
966 arguments = new object [] { i };
967 if (Compare ("IsEditPosition", mask, ref stateindex, arguments, ref more_states)) {
972 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
973 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
974 more_states = CreateState (mtp, stateindex);
977 WriteLine ("Assert.AreEqual ({0}, mtp.IsEditPosition ({1}), \"#{2}\");", GetStringValue (mtp.IsEditPosition (i)), i.ToString (), (counter++).ToString ());
979 WriteAssertProperties (mtp, Name, TestName, ref counter);
982 } while (more_states);
988 static void GenerateIsValidInputCharTest ()
990 string TestName = "IsValidInputCharTestGenerated";
994 WriteTestHeader (TestName);
997 int max = (int)char.MaxValue;
998 BitArray bits = new BitArray (max);
999 for (int i = 0; i < max; i++) {
1000 bool result_MS = MS_System_ComponentModel.MaskedTextProvider.IsValidInputChar ((char)i);
1001 bool result_Mono = MaskedTextProvider.IsValidInputChar ((char) i);
1002 if (dont_write && result_MS != result_Mono) {
1006 bits.Set (i, result_MS);
1009 StringBuilder bit_array = new StringBuilder ();
1010 bit_array.AppendLine ("int [] answers;");
1011 bit_array.AppendLine (tabs + "unchecked {");
1012 bit_array.Append (tabs + "answers = new int [] {");
1013 int [] numbers = new int [max / 32 + 1];
1014 bits.CopyTo (numbers, 0);
1015 for (int i = 0; i < numbers.Length; i++) {
1017 bit_array.AppendLine ("");
1018 bit_array.Append (tabs + "\t");
1020 bit_array.Append (String.Format ("(int) 0x{0:X8}", numbers [i]));
1021 if (i != numbers.Length - 1)
1022 bit_array.Append (", ");
1025 bit_array.AppendLine ("");
1026 bit_array.AppendLine (tabs + "};");
1027 bit_array.AppendLine (tabs + "};");
1028 WriteLineNonFormat (bit_array.ToString ());
1029 WriteLine ("BitArray bits = new BitArray (answers);");
1030 WriteLine ("for (int i = 0; i < (int) char.MaxValue; i++)");
1031 WriteLine ("\tAssert.AreEqual (bits.Get (i), MaskedTextProvider.IsValidInputChar ((char) i), \"{0}#\" + i.ToString ());", TestName);
1036 static void GenerateIsValidMaskCharTest ()
1038 string TestName = "IsValidMaskCharTestGenerated";
1043 WriteTestHeader (TestName);
1046 int max = (int)char.MaxValue;
1047 BitArray bits = new BitArray (max);
1048 for (int i = 0; i < max; i++) {
1049 bool result_MS = MS_System_ComponentModel.MaskedTextProvider.IsValidMaskChar ((char)i);
1050 bool result_Mono = MaskedTextProvider.IsValidMaskChar ((char)i);
1051 if (dont_write && result_MS != result_Mono) {
1055 bits.Set (i, result_MS);
1057 StringBuilder bit_array = new StringBuilder ();
1058 bit_array.AppendLine ("int [] answers;");
1059 bit_array.AppendLine (tabs + "unchecked {");
1060 bit_array.Append (tabs + "answers = new int [] {");
1061 int [] numbers = new int [max / 32 + 1];
1062 bits.CopyTo (numbers, 0);
1063 for (int i = 0; i < numbers.Length; i++) {
1065 bit_array.AppendLine ("");
1066 bit_array.Append (tabs + "\t");
1068 bit_array.Append (String.Format ("(int) 0x{0:X8}", numbers [i]));
1069 if (i != numbers.Length - 1)
1070 bit_array.Append (", ");
1073 bit_array.AppendLine ("");
1074 bit_array.AppendLine (tabs + "};");
1075 bit_array.AppendLine (tabs + "};");
1076 WriteLineNonFormat (bit_array.ToString ());
1077 WriteLine ("BitArray bits = new BitArray (answers);");
1078 WriteLine ("for (int i = 0; i < (int) char.MaxValue; i++)");
1079 WriteLine ("\tAssert.AreEqual (bits.Get (i), MaskedTextProvider.IsValidMaskChar ((char) i), \"{0}#\" + i.ToString ());", TestName);
1084 static void GenerateIsValidPasswordCharTest ()
1086 string TestName = "IsValidPasswordCharGenerated";
1091 WriteTestHeader (TestName);
1095 int max = (int)char.MaxValue;
1096 BitArray bits = new BitArray (max);
1097 for (int i = 0; i < max; i++) {
1098 bool result_MS = MS_System_ComponentModel.MaskedTextProvider.IsValidPasswordChar ((char)i);
1099 bool result_Mono = MaskedTextProvider.IsValidPasswordChar ((char)i);
1100 if (dont_write && (result_MS != result_Mono)) {
1104 bits.Set (i, MS_System_ComponentModel.MaskedTextProvider.IsValidPasswordChar ((char)i));
1106 StringBuilder bit_array = new StringBuilder ();
1107 bit_array.AppendLine ("int [] answers;");
1108 bit_array.AppendLine (tabs + "unchecked {");
1109 bit_array.Append (tabs + "answers = new int [] {");
1110 int [] numbers = new int [max / 32 + 1];
1111 bits.CopyTo (numbers, 0);
1112 for (int i = 0; i < numbers.Length; i++) {
1114 bit_array.AppendLine ("");
1115 bit_array.Append (tabs + "\t");
1117 bit_array.Append (String.Format ("(int) 0x{0:X8}", numbers [i]));
1118 if (i != numbers.Length - 1)
1119 bit_array.Append (", ");
1122 bit_array.AppendLine ("");
1123 bit_array.AppendLine (tabs + "};");
1124 bit_array.AppendLine (tabs + "};");
1125 WriteLineNonFormat (bit_array.ToString ());
1126 WriteLine ("BitArray bits = new BitArray (answers);");
1127 WriteLine ("for (int i = 0; i < (int) char.MaxValue; i++)");
1128 WriteLine ("\tAssert.AreEqual (bits.Get (i), MaskedTextProvider.IsValidPasswordChar ((char) i), \"{0}#\" + i.ToString ());", TestName);
1134 static void GenerateItemTest ()
1136 string Name = "mtp";
1137 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1140 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1141 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1143 foreach (string mask in test_masks) {
1144 for (int i = 0; i < mask.Length; i++) {
1145 bool more_states = true;
1148 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1150 if (i >= mtp.Length)
1153 object [] arguments;
1154 arguments = new object [] { i };
1155 if (Compare ("Item", mask, ref stateindex, arguments, ref more_states)) {
1160 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1161 more_states = CreateState (mtp, stateindex);
1164 WriteLine ("Assert.AreEqual ({0}, mtp [{1}], \"#{2}\");", GetStringValue (mtp [i]), i.ToString (), (counter++).ToString ());
1165 WriteAssertProperties (mtp, Name, TestName, ref counter);
1169 } while (more_states);
1177 static void GenerateRemoveTest ()
1179 string Name = "mtp";
1180 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1183 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1184 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1185 //int Int32_out = 0;
1186 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1188 foreach (string mask in test_masks) {
1189 bool more_states = true;
1193 object [] arguments;
1194 arguments = new object [] { };
1195 if (Compare ("Remove", mask, ref stateindex, arguments, ref more_states)) {
1201 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1202 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1203 more_states = CreateState (mtp, stateindex);
1206 for (int i = -1; i < mask.Length + 2; i++) {
1207 WriteLine ("Assert.AreEqual ({0}, mtp.Remove (), \"#{1}\");", GetStringValue (mtp.Remove ()), (counter++).ToString ());
1208 WriteAssertProperties (mtp, Name, TestName, ref counter);
1212 } while (more_states);
1217 static void GenerateRemove_int_MaskedTextResultHintTest ()
1219 string Name = "mtp";
1220 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1223 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1224 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1226 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1228 foreach (string mask in test_masks) {
1229 bool more_states = true;
1233 object [] arguments;
1234 arguments = new object [] { Int32_out, MaskedTextResultHint_out };
1235 if (Compare ("Remove", mask, ref stateindex, arguments, ref more_states)) {
1240 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1241 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1242 more_states = CreateState (mtp, stateindex);
1245 for (int i = -1; i < mask.Length + 2; i++) {
1246 WriteLine ("Assert.AreEqual ({0}, mtp.Remove (out Int32_out, out MaskedTextResultHint_out), \"#{1}\");", GetStringValue (mtp.Remove (out Int32_out, out MaskedTextResultHint_out)), (counter++).ToString ());
1247 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
1248 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
1249 WriteAssertProperties (mtp, Name, TestName, ref counter);
1252 } while (more_states);
1257 static void GenerateRemoveAt_int_Test ()
1259 string Name = "mtp";
1260 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1264 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1265 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1266 //int Int32_out = 0;
1267 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1269 foreach (string mask in test_masks) {
1270 for (int i = 0; i < mask.Length; i++) {
1271 bool more_states = true;
1275 object [] arguments;
1276 arguments = new object [] { i };
1277 if (Compare ("RemoveAt", mask, ref stateindex, arguments, ref more_states)) {
1282 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1283 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1284 more_states = CreateState (mtp, stateindex);
1287 WriteLine ("Assert.AreEqual ({0}, mtp.RemoveAt ({1}), \"#{2}\");",
1288 GetStringValue (mtp.RemoveAt (i)), i.ToString (), (counter++).ToString ());
1290 WriteAssertProperties (mtp, Name, TestName, ref counter);
1293 } while (more_states);
1299 static void GenerateRemoveAt_int_int_Test ()
1301 string Name = "mtp";
1302 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1305 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1306 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1307 //int Int32_out = 0;
1308 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1310 foreach (string mask in test_masks) {
1311 for (int i = 0; i < mask.Length; i++) {
1312 for (int j = 0; j < mask.Length; j++) {
1313 bool more_states = true;
1316 object [] arguments;
1317 arguments = new object [] { i, j };
1318 if (Compare ("RemoveAt", mask, ref stateindex, arguments, ref more_states)) {
1323 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1324 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1325 more_states = CreateState (mtp, stateindex);
1328 WriteLine ("Assert.AreEqual ({0}, mtp.RemoveAt ({1}, {2}), \"#{3}\");",
1329 GetStringValue (mtp.RemoveAt (i, j)), i.ToString (), j.ToString (), (counter++).ToString ());
1331 WriteAssertProperties (mtp, Name, TestName, ref counter);
1334 } while (more_states);
1341 static void GenerateRemoveAt_int_int_int_MaskedTextResultHintTest ()
1343 string Name = "mtp";
1344 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1347 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1348 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1349 //object mtp_MS, mtp_Mono;
1351 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1353 foreach (string mask in test_masks) {
1354 for (int i = 0; i < mask.Length; i++) {
1355 for (int j = 0; j < mask.Length; j++) {
1356 bool more_states = true;
1359 object [] arguments;
1360 arguments = new object [] { i, j, Int32_out, MaskedTextResultHint_out };
1361 if (Compare ("RemoveAt", mask, ref stateindex, arguments, ref more_states)) {
1367 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1368 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1369 more_states = CreateState (mtp, stateindex);
1372 WriteLine ("Assert.AreEqual ({0}, mtp.RemoveAt ({1}, {2}, out Int32_out, out MaskedTextResultHint_out), \"#{3}\");",
1373 GetStringValue (mtp.RemoveAt (i, j, out Int32_out, out MaskedTextResultHint_out)), i.ToString (), j.ToString (), (counter++).ToString ());
1374 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
1375 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
1377 WriteAssertProperties (mtp, Name, TestName, ref counter);
1380 } while (more_states);
1389 static void GenerateReplace_char_int_Test ()
1391 string Name = "mtp";
1392 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1395 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1396 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1397 //int Int32_out = 0;
1398 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1400 foreach (string mask in test_masks) {
1401 foreach (char str in char_values) {
1402 for (int i = 0; i < mask.Length; i++) {
1403 bool more_states = true;
1406 object [] arguments;
1407 arguments = new object [] { str, i };
1408 if (Compare ("Replace", mask, ref stateindex, arguments, ref more_states)) {
1413 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1414 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1415 more_states = CreateState (mtp, stateindex);
1418 WriteLine ("Assert.AreEqual ({0}, mtp.Replace ({1}, {2}), \"#{3}\");",
1419 GetStringValue (mtp.Replace (str, i)), GetStringValue (str), i.ToString (), (counter++).ToString ());
1421 WriteAssertProperties (mtp, Name, TestName, ref counter);
1424 } while (more_states);
1431 static void GenerateReplace_string_int_Test ()
1433 string Name = "mtp";
1434 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1437 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1438 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1439 //int Int32_out = 0;
1440 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1442 foreach (string mask in test_masks) {
1443 foreach (string str in string_values) {
1447 for (int i = 0; i < mask.Length; i++) {
1448 bool more_states = true;
1451 object [] arguments;
1452 arguments = new object [] { str, i };
1453 if (Compare ("Replace", mask, ref stateindex, arguments, ref more_states)) {
1458 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1459 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1460 more_states = CreateState (mtp, stateindex);
1463 WriteLine ("Assert.AreEqual ({0}, mtp.Replace ({1}, {2}), \"#{3}\");",
1464 GetStringValue (mtp.Replace (str, i)), GetStringValue (str), i.ToString (), (counter++).ToString ());
1466 WriteAssertProperties (mtp, Name, TestName, ref counter);
1468 } while (more_states);
1475 static void GenerateReplace_char_int_int_MaskedTextResultHintTest ()
1477 string Name = "mtp";
1478 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1481 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1482 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1484 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1486 foreach (string mask in test_masks) {
1487 foreach (char str in char_values) {
1488 for (int i = 0; i < mask.Length; i++) {
1489 bool more_states = true;
1492 object [] arguments;
1493 arguments = new object [] { str, i, Int32_out, MaskedTextResultHint_out };
1494 if (Compare ("Replace", mask, ref stateindex, arguments, ref more_states)) {
1499 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1500 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1501 more_states = CreateState (mtp, stateindex);
1504 WriteLine ("Assert.AreEqual ({0}, mtp.Replace ({1}, {2}, out Int32_out, out MaskedTextResultHint_out), \"#{3}\");",
1505 GetStringValue (mtp.Replace (str, i, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (str), i.ToString (), (counter++).ToString ());
1506 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
1507 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
1509 WriteAssertProperties (mtp, Name, TestName, ref counter);
1511 } while (more_states);
1518 static void GenerateReplace_string_int_int_MaskedTextResultHintTest ()
1520 string Name = "mtp";
1521 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1525 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1526 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1528 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1530 foreach (string mask in test_masks) {
1531 foreach (string str in string_values) {
1535 for (int i = 0; i < mask.Length; i++) {
1536 bool more_states = true;
1540 object [] arguments;
1541 arguments = new object [] { str, i, Int32_out, MaskedTextResultHint_out };
1542 if (Compare ("Replace", mask, ref stateindex, arguments, ref more_states)) {
1547 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1548 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1549 more_states = CreateState (mtp, stateindex);
1552 WriteLine ("Assert.AreEqual ({0}, mtp.Replace ({1}, {2}, out Int32_out, out MaskedTextResultHint_out), \"#{3}\");",
1553 GetStringValue (mtp.Replace (str, i, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (str), i.ToString (), (counter++).ToString ());
1554 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
1555 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
1557 WriteAssertProperties (mtp, Name, TestName, ref counter);
1560 } while (more_states);
1567 static void GenerateReplace_char_int_int_int_MaskedTextResultHintTest ()
1569 string Name = "mtp";
1570 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1573 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1574 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1576 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1578 foreach (string mask in test_masks) {
1579 foreach (char str in char_values) {
1580 for (int i = 0; i < mask.Length; i++) {
1581 for (int j = 0; j < mask.Length; j++) {
1582 bool more_states = true;
1586 object [] arguments;
1587 arguments = new object [] { str, i, j, Int32_out, MaskedTextResultHint_out };
1588 if (Compare ("Replace", mask, ref stateindex, arguments, ref more_states)) {
1593 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1594 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1595 more_states = CreateState (mtp, stateindex);
1598 WriteLine ("Assert.AreEqual ({0}, mtp.Replace ({1}, {2}, {3}, out Int32_out, out MaskedTextResultHint_out), \"#{4}\");",
1599 GetStringValue (mtp.Replace (str, i, j, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (str), i.ToString (), j.ToString (), (counter++).ToString ());
1600 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
1601 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
1603 WriteAssertProperties (mtp, Name, TestName, ref counter);
1606 } while (more_states);
1613 static void GenerateReplace_string_int_int_int_MaskedTextResultHintTest ()
1615 string Name = "mtp";
1616 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1619 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1620 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1622 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1624 foreach (string mask in test_masks) {
1625 foreach (string str in string_values) {
1629 for (int i = 0; i < mask.Length; i++) {
1630 for (int j = 0; j < mask.Length; j++) {
1631 bool more_states = true;
1635 object [] arguments;
1636 arguments = new object [] { str, i, j, Int32_out, MaskedTextResultHint_out };
1637 if (Compare ("Replace", mask, ref stateindex, arguments, ref more_states)) {
1642 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1643 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1644 more_states = CreateState (mtp, stateindex);
1647 WriteLine ("Assert.AreEqual ({0}, mtp.Replace ({1}, {2}, {3}, out Int32_out, out MaskedTextResultHint_out), \"#{4}\");",
1648 GetStringValue (mtp.Replace (str, i, j, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (str), i.ToString (), j.ToString (), (counter++).ToString ());
1649 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
1650 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
1652 WriteAssertProperties (mtp, Name, TestName, ref counter);
1655 } while (more_states && current_test_counter < MAXFAILEDTESTS);
1664 static void GenerateSet_string_Test ()
1666 string Name = "mtp";
1667 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1670 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1671 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1672 //int Int32_out = 0;
1673 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1675 foreach (string mask in test_masks) {
1676 foreach (string str in string_values) {
1680 bool more_states = true;
1683 object [] arguments;
1684 arguments = new object [] { str };
1685 if (Compare ("Set", mask, ref stateindex, arguments, ref more_states)) {
1690 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1691 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1692 more_states = CreateState (mtp, stateindex);
1695 WriteLine ("Assert.AreEqual ({0}, mtp.Set ({1}), \"#{2}\");",
1696 GetStringValue (mtp.Set (str)), GetStringValue (str), (counter++).ToString ());
1698 WriteAssertProperties (mtp, Name, TestName, ref counter);
1701 } while (more_states);
1708 static void GenerateSet_string_int_MaskedTextResultHintTest ()
1710 string Name = "mtp";
1711 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1714 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1715 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1717 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1719 foreach (string mask in test_masks) {
1720 foreach (string str in string_values) {
1724 bool more_states = true;
1727 object [] arguments;
1728 arguments = new object [] { str, Int32_out, MaskedTextResultHint_out };
1729 if (Compare ("Set", mask, ref stateindex, arguments, ref more_states)) {
1734 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1735 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1736 more_states = CreateState (mtp, stateindex);
1739 WriteLine ("Assert.AreEqual ({0}, mtp.Set ({1}, out Int32_out, out MaskedTextResultHint_out), \"#{2}\");",
1740 GetStringValue (mtp.Set (str, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (str), (counter++).ToString ());
1741 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
1742 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
1744 WriteAssertProperties (mtp, Name, TestName, ref counter);
1747 } while (more_states);
1755 static void GenerateToDisplayStringTest ()
1757 string Name = "mtp";
1758 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1761 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1762 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1763 //int Int32_out = 0;
1764 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1766 foreach (string mask in test_masks) {
1767 bool more_states = true;
1770 object [] arguments;
1771 arguments = new object [] { };
1772 if (Compare ("ToDisplayString", mask, ref stateindex, arguments, ref more_states)) {
1777 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1778 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1779 more_states = CreateState (mtp, stateindex);
1782 WriteLine ("Assert.AreEqual ({0}, mtp.ToDisplayString (), \"#{1}\");",
1783 GetStringValue (mtp.ToDisplayString ()), (counter++).ToString ());
1785 WriteAssertProperties (mtp, Name, TestName, ref counter);
1788 } while (more_states);
1793 static void GenerateToStringTest ()
1795 string Name = "mtp";
1796 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1799 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1800 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1801 //int Int32_out = 0;
1802 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1804 foreach (string mask in test_masks) {
1805 bool more_states = true;
1808 object [] arguments;
1809 arguments = new object [] { };
1810 if (Compare ("ToString", mask, ref stateindex, arguments, ref more_states)) {
1815 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1816 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1817 more_states = CreateState (mtp, stateindex);
1820 WriteLine ("Assert.AreEqual ({0}, mtp.ToString (), \"#{1}\");",
1821 GetStringValue (mtp.ToString ()), (counter++).ToString ());
1823 WriteAssertProperties (mtp, Name, TestName, ref counter);
1826 } while (more_states);
1830 static void GenerateToString_bool_Test ()
1832 string Name = "mtp";
1833 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1836 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1837 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1838 //int Int32_out = 0;
1839 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1841 foreach (string mask in test_masks) {
1842 bool more_states = true;
1843 foreach (bool value in new bool [] { true, false }) {
1846 object [] arguments;
1847 arguments = new object [] { value };
1848 if (Compare ("ToString", mask, ref stateindex, arguments, ref more_states)) {
1853 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1854 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1855 more_states = CreateState (mtp, stateindex);
1858 WriteLine ("Assert.AreEqual ({0}, mtp.ToString ({2}), \"#{1}\");",
1859 GetStringValue (mtp.ToString (value)), (counter++).ToString (), value ? "true" : "false");
1861 WriteAssertProperties (mtp, Name, TestName, ref counter);
1863 } while (more_states);
1869 static void GenerateToString_bool_bool_Test ()
1871 string Name = "mtp";
1872 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1875 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1876 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1877 //int Int32_out = 0;
1878 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1880 foreach (string mask in test_masks) {
1881 foreach (bool value1 in new bool [] { true, false }) {
1882 foreach (bool value2 in new bool [] { true, false }) {
1883 bool more_states = true;
1886 object [] arguments;
1887 arguments = new object [] { value1, value2 };
1888 if (Compare ("ToString", mask, ref stateindex, arguments, ref more_states)) {
1893 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1894 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1895 more_states = CreateState (mtp, stateindex);
1898 WriteLine ("Assert.AreEqual ({0}, mtp.ToString ({2}, {3}), \"#{1}\");",
1899 GetStringValue (mtp.ToString (value1, value2)), (counter++).ToString (), value1 ? "true" : "false", value2 ? "true" : "false");
1901 WriteAssertProperties (mtp, Name, TestName, ref counter);
1904 } while (more_states);
1911 static void GenerateToString_int_int_Test ()
1913 string Name = "mtp";
1914 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1917 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1918 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1919 //int Int32_out = 0;
1920 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1922 foreach (string mask in test_masks) {
1923 for (int i = -1; i < mask.Length + 1; i++) {
1924 for (int j = -1; j < mask.Length + 1; j++) {
1926 bool more_states = true;
1929 object [] arguments;
1930 arguments = new object [] { i, j };
1931 if (Compare ("ToString", mask, ref stateindex, arguments, ref more_states)) {
1936 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1937 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1938 more_states = CreateState (mtp, stateindex);
1941 WriteLine ("Assert.AreEqual ({0}, mtp.ToString ({2}, {3}), \"#{1}\");",
1942 GetStringValue (mtp.ToString (i, j)), (counter++).ToString (), i.ToString (), j.ToString ());
1944 WriteAssertProperties (mtp, Name, TestName, ref counter);
1946 } while (more_states);
1953 static void GenerateToString_bool_int_int_Test ()
1955 string Name = "mtp";
1956 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
1959 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
1960 MS_System_ComponentModel.MaskedTextProvider mtp = null;
1961 //int Int32_out = 0;
1962 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
1964 foreach (string mask in test_masks) {
1965 foreach (bool value1 in new bool [] { true, false }) {
1966 for (int i = -1; i < mask.Length + 1; i++) {
1967 for (int j = -1; j < mask.Length + 1; j++) {
1969 bool more_states = true;
1972 object [] arguments;
1973 arguments = new object [] { value1, i, j };
1974 if (Compare ("ToString", mask, ref stateindex, arguments, ref more_states)) {
1979 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
1980 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
1981 more_states = CreateState (mtp, stateindex);
1984 WriteLine ("Assert.AreEqual ({0}, mtp.ToString ({4}, {2}, {3}), \"#{1}\");",
1985 GetStringValue (mtp.ToString (value1, i, j)), (counter++).ToString (), i.ToString (), j.ToString (), value1 ? "true" : "false");
1987 WriteAssertProperties (mtp, Name, TestName, ref counter);
1990 } while (more_states);
1998 static void GenerateToString_bool_bool_int_int_Test ()
2000 string Name = "mtp";
2001 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
2004 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
2005 MS_System_ComponentModel.MaskedTextProvider mtp = null;
2006 //int Int32_out = 0;
2007 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
2009 foreach (string mask in test_masks) {
2010 foreach (bool value1 in new bool [] { true, false }) {
2011 foreach (bool value2 in new bool [] { true, false }) {
2012 for (int i = -1; i < mask.Length + 1; i++) {
2013 for (int j = -1; j < mask.Length + 1; j++) {
2015 bool more_states = true;
2018 object [] arguments;
2019 arguments = new object [] { value1, value2, i, j };
2020 if (Compare ("ToString", mask, ref stateindex, arguments, ref more_states)) {
2025 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
2026 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
2027 more_states = CreateState (mtp, stateindex);
2030 WriteLine ("Assert.AreEqual ({0}, mtp.ToString ({4}, {5}, {2}, {3}), \"#{1}\");",
2031 GetStringValue (mtp.ToString (value1, value2, i, j)), (counter++).ToString (), i.ToString (), j.ToString (), value1 ? "true" : "false", value2 ? "true" : "false");
2033 WriteAssertProperties (mtp, Name, TestName, ref counter);
2036 } while (more_states);
2045 static void GenerateToString_bool_bool_bool_int_int_Test ()
2047 string Name = "mtp";
2048 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
2051 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
2052 MS_System_ComponentModel.MaskedTextProvider mtp = null;
2053 //int Int32_out = 0;
2054 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
2056 foreach (string mask in test_masks) {
2057 foreach (bool value1 in new bool [] { true, false }) {
2058 foreach (bool value2 in new bool [] { true, false }) {
2059 foreach (bool value3 in new bool [] { true, false }) {
2060 for (int i = -1; i < mask.Length + 1; i++) {
2061 for (int j = -1; j < mask.Length + 1; j++) {
2063 bool more_states = true;
2066 object [] arguments;
2067 arguments = new object [] { value1, value2, value3, i, j };
2068 if (Compare ("ToString", mask, ref stateindex, arguments, ref more_states)) {
2073 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
2074 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
2075 more_states = CreateState (mtp, stateindex);
2078 WriteLine ("Assert.AreEqual ({0}, mtp.ToString ({4}, {5}, {6}, {2}, {3}), \"#{1}\");",
2079 GetStringValue (mtp.ToString (value1, value2, value3, i, j)), (counter++).ToString (), i.ToString (), j.ToString (), value1 ? "true" : "false", value2 ? "true" : "false", value3 ? "true" : "false");
2081 WriteAssertProperties (mtp, Name, TestName, ref counter);
2084 } while (more_states);
2095 static void GenerateVerifyCharTest ()
2097 string Name = "mtp";
2098 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
2101 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
2102 MS_System_ComponentModel.MaskedTextProvider mtp = null;
2103 //int Int32_out = 0;
2104 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
2106 foreach (string mask in test_masks) {
2107 foreach (char str in char_values) {
2108 for (int i = -1; i < mask.Length + 1; i++) {
2109 bool more_states = true;
2112 object [] arguments;
2113 arguments = new object [] { str, i, MaskedTextResultHint_out };
2114 if (Compare ("VerifyChar", mask, ref stateindex, arguments, ref more_states)) {
2119 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
2120 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
2121 more_states = CreateState (mtp, stateindex);
2124 WriteLine ("Assert.AreEqual ({0}, mtp.VerifyChar ({1}, {2}, out MaskedTextResultHint_out), \"#{3}\");",
2125 GetStringValue (mtp.VerifyChar (str, i, out MaskedTextResultHint_out)), GetStringValue (str), i.ToString (), (counter++).ToString ());
2126 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
2128 WriteAssertProperties (mtp, Name, TestName, ref counter);
2131 } while (more_states);
2138 static void GenerateVerifyEscapeCharTest ()
2140 string Name = "mtp";
2141 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
2144 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
2145 MS_System_ComponentModel.MaskedTextProvider mtp = null;
2146 //int Int32_out = 0;
2147 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
2149 foreach (string mask in test_masks) {
2150 foreach (char str in char_values) {
2151 for (int i = -1; i < mask.Length + 1; i++) {
2152 bool more_states = true;
2155 object [] arguments;
2156 arguments = new object [] { str, i };
2157 if (Compare ("VerifyEscapeChar", mask, ref stateindex, arguments, ref more_states)) {
2162 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
2163 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
2164 more_states = CreateState (mtp, stateindex);
2167 WriteLine ("Assert.AreEqual ({0}, mtp.VerifyEscapeChar ({1}, {2}), \"#{3}\");",
2168 GetStringValue (mtp.VerifyEscapeChar (str, i)), GetStringValue (str), i.ToString (), (counter++).ToString ());
2170 WriteAssertProperties (mtp, Name, TestName, ref counter);
2173 } while (more_states);
2180 static void GenerateVerifyString_string_Test ()
2182 string Name = "mtp";
2183 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
2186 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
2187 MS_System_ComponentModel.MaskedTextProvider mtp = null;
2188 //int Int32_out = 0;
2189 //MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
2191 foreach (string mask in test_masks) {
2192 foreach (string str in string_values) {
2193 bool more_states = true;
2196 object [] arguments;
2197 arguments = new object [] { str };
2198 if (Compare ("VerifyString", mask, ref stateindex, arguments, ref more_states)) {
2203 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
2204 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
2205 more_states = CreateState (mtp, stateindex);
2208 WriteLine ("Assert.AreEqual ({0}, mtp.VerifyString ({1}), \"#{2}\");",
2209 GetStringValue (mtp.VerifyString (str)), GetStringValue (str), (counter++).ToString ());
2211 WriteAssertProperties (mtp, Name, TestName, ref counter);
2214 } while (more_states);
2220 static void GenerateVerifyString_string_int_MaskedTextResultHintTest ()
2222 string Name = "mtp";
2223 string TestName = MethodInfo.GetCurrentMethod ().Name.Replace ("Generate", "");
2226 WriteTestHeader (TestName, "MaskedTextProvider mtp;", "int Int32_out = 0;", "MaskedTextResultHint MaskedTextResultHint_out = MaskedTextResultHint.Unknown;");
2227 MS_System_ComponentModel.MaskedTextProvider mtp = null;
2229 MS_System_ComponentModel.MaskedTextResultHint MaskedTextResultHint_out = MS_System_ComponentModel.MaskedTextResultHint.Unknown;
2231 foreach (string mask in test_masks) {
2232 foreach (string str in string_values) {
2233 bool more_states = true;
2236 object [] arguments;
2237 arguments = new object [] { str, Int32_out, MaskedTextResultHint_out };
2238 if (Compare ("VerifyString", mask, ref stateindex, arguments, ref more_states)) {
2243 mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
2244 WriteLine ("mtp = new MaskedTextProvider (@\"" + mask.Replace ("\"", "\"\"") + "\");");
2245 more_states = CreateState (mtp, stateindex);
2248 WriteLine ("Assert.AreEqual ({0}, mtp.VerifyString ({1}, out Int32_out, out MaskedTextResultHint_out), \"#{2}\");",
2249 GetStringValue (mtp.VerifyString (str, out Int32_out, out MaskedTextResultHint_out)), GetStringValue (str), (counter++).ToString ());
2250 WriteLine ("Assert.AreEqual ({0}, MaskedTextResultHint_out, \"#{1}\");", GetStringValue (MaskedTextResultHint_out), (counter++).ToString ());
2251 WriteLine ("Assert.AreEqual ({0}, Int32_out, \"#{1}\");", GetStringValue (Int32_out), (counter++).ToString ());
2253 WriteAssertProperties (mtp, Name, TestName, ref counter);
2255 } while (more_states);
2262 private static void CreateObjects (out object mtp_MS, out object mtp_Mono, string mask)
2264 if (type_MS == null) {
2265 type_MS = Assembly.Load ("System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089").GetType ("System.ComponentModel.MaskedTextProvider");
2266 type_Hint_MS = Assembly.Load ("System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089").GetType ("System.ComponentModel.MaskedTextResultHint");
2268 if (type_Mono == null) {
2269 type_Mono = Assembly.GetExecutingAssembly ().GetType ("System.ComponentModel.MaskedTextProvider");
2270 type_Hint_Mono = Assembly.GetExecutingAssembly ().GetType ("System.ComponentModel.MaskedTextResultHint");
2273 if (type_MS == null) {
2274 Assert.Ignore ("Could not load MS' version of MaskedTextProvider.");
2276 if (type_Mono == null) {
2277 Assert.Ignore ("Could not load Mono's version of MaskedTextProvider.");
2279 if (type_Mono == type_MS) {
2280 Assert.Ignore ("You're running on the Mono runtime, this test can only be run on the MS runtime.");
2283 mtp_Mono = type_Mono.GetConstructor (new Type [] { typeof (string) }).Invoke (new object [] { mask });
2284 mtp_MS = type_MS.GetConstructor (new Type [] { typeof (string) }).Invoke (new object [] { mask });
2287 // Gets the mtp into a certain state.
2288 // returns false if index+1 is not valid.
2289 // index starts at 0.
2290 static bool CreateState (object mtp, int index)
2292 object [] states = (object [])state_methods_values [index];
2293 for (int j = 0; j < states.Length; j++) {
2294 object [] state = (object [])states [j];
2295 string name = (string)state [0];
2296 object [] args = (object [])state [1];
2297 Type [] arg_types = new Type [args.Length];
2298 for (int i = 0; i < args.Length; i++) {
2299 arg_types [i] = args [i].GetType ();
2301 MethodInfo method = mtp.GetType ().GetMethod (name, arg_types);
2302 if (method == null) {
2303 if (arg_types [arg_types.Length - 1].Name == "MaskedTextResultHint") {
2304 arg_types [arg_types.Length - 1] = arg_types [arg_types.Length - 1].MakeByRefType ();
2305 arg_types [arg_types.Length - 2] = arg_types [arg_types.Length - 2].MakeByRefType ();
2306 args [arg_types.Length - 1] = (int)args [arg_types.Length - 1];
2307 method = mtp.GetType ().GetMethod (name, arg_types);
2308 args [arg_types.Length - 1] = Enum.ToObject (method.GetParameters () [arg_types.Length - 1].ParameterType.GetElementType (), (int)args [arg_types.Length - 1]);
2312 Console.WriteLine ("STOP");
2313 method.Invoke (mtp, args);
2315 line = "mtp." + method.Name + "(";
2316 for (int i = 0; i < args.Length; i++) {
2317 if (arg_types [i].IsByRef) {
2318 line += "out " + arg_types [i].GetElementType ().Name + "_out";
2320 line += GetStringValue (args [i]);
2322 if (i < args.Length - 1)
2328 if (state_methods_values.Length <= index + 1)
2333 static void WriteLineNonFormat (string msg)
2338 writer.WriteLine (tabs + msg);
2340 static void WriteLine (string msg, params string [] args)
2344 writer.WriteLine (tabs + msg, args);
2351 return new string ('\t', tab);
2355 static Array GetTestValues (Type tp)
2357 if (tp == typeof (char)) {
2359 } else if (tp == typeof (int) || tp == typeof (int).MakeByRefType ()) {
2361 } else if (tp == typeof (string)) {
2362 return string_values;
2363 } else if (tp == typeof (CultureInfo)) {
2364 return culture_infos;
2365 } else if (tp == typeof (bool)) {
2366 return new bool [] { true, false };
2367 } else if (tp == typeof (MaskedTextResultHint) || tp == typeof (MaskedTextResultHint).MakeByRefType ()) {
2369 } else if (tp == typeof (object)) {
2370 return object_values;
2372 throw new NotImplementedException ();
2376 static string GetStringValue (object obj)
2381 Type tp = obj.GetType ();
2383 if (tp == typeof (char)) {
2384 return string.Format ("'\\x{0:X}'", Convert.ToInt32 ((char)obj));
2385 } else if (tp == typeof (int)) {
2386 return obj.ToString ();
2387 } else if (tp == typeof (string)) {
2388 return "@\"" + obj.ToString ().Replace ("\"", "\"\"") + "\"";
2389 } else if (tp == typeof (CultureInfo)) {
2390 CultureInfo ci = (CultureInfo)obj;
2391 //return "\"" + ci.Name + "\"";
2392 return "CultureInfo.GetCultureInfo (\"" + ci.Name + "\")";
2393 } else if (tp == typeof (bool)) {
2394 return ((bool)obj) ? "true" : "false";
2395 } else if (tp == typeof (MaskedTextProvider)) {
2396 return "@\"" + obj.ToString ().Replace ("\"", "\"\"") + "\"";
2397 } else if (tp is IEnumerator) {
2398 return "@\"" + obj.ToString ().Replace ("\"", "\"\"") + "\"";
2399 } else if (tp == typeof (List<int>.Enumerator)) {
2400 return "@\"" + obj.ToString ().Replace ("\"", "\"\"") + "\"";
2401 } else if (tp.Name == "MaskedTextResultHint") {
2402 return "MaskedTextResultHint." + obj.ToString ();
2403 } else if (tp is Type) {
2404 return "typeof (" + ((Type)obj).FullName + ")";
2406 throw new NotImplementedException ();
2410 static bool IncIndex (int [] indices, Array [] inputs)
2412 for (int i = indices.Length - 1; i >= 0; i--) {
2413 if (indices [i] >= inputs [i].Length - 1) {
2421 a = indices [i - 1];
2422 b = inputs [i - 1].Length - 1;
2435 static string GetTestName (string prefix, ParameterInfo [] ps)
2437 string result = prefix;
2438 for (int b = 0; b < ps.Length; b++)
2439 result += "_" + ps [b].ParameterType.Name.Replace ("&", "").Replace ("+", "").Replace ("*", "");
2445 //static void MethodsTest ()
2447 // string Name = "mtp";
2449 // MS_System_ComponentModel.MaskedTextProvider mtp = null;
2451 // for (int a = 0; a < methods.Length; a++) {
2452 // MethodInfo method = methods [a];
2454 // if (method.Name.StartsWith ("get_") || method.Name.StartsWith ("set_"))
2456 // if (method.IsStatic)
2459 // ParameterInfo [] ps = method.GetParameters ();
2460 // Array [] inputs = new Array [ps.Length];
2461 // int [] indices = new int [ps.Length];
2463 // string TestName = GetTestName (method.Name, ps);
2465 // Console.WriteLine ("Method (" + (a + 1).ToString () + "/" + methods.Length.ToString () + "): " + TestName);
2467 // int assert_count = 1;
2468 // WriteTestHeader (TestName);
2469 // WriteLine ("MaskedTextProvider mtp;");
2470 // WriteLine ("object result = null;");
2473 // for (int i = 0; i < ps.Length; i++)
2474 // inputs [i] = GetTestValues (ps [i].ParameterType);
2476 // foreach (string mask in test_masks) {
2478 // Exception ex = null;
2479 // object result = null;
2481 // object [] args = new object [inputs.Length];
2482 // for (int i = 0; i < inputs.Length; i++) {
2483 // args [i] = inputs [i].GetValue (indices [i]);
2486 // mtp = new MS_System_ComponentModel.MaskedTextProvider (mask);
2487 // WriteLine ("mtp = new MaskedTextProvider (@\"{0}\");", mask.Replace ("\"", "\"\""));
2490 // result = method.Invoke (mtp, args);
2491 // } catch (TargetInvocationException e) {
2492 // ex = e.InnerException;
2493 // } catch (Exception e) {
2498 // WriteLine ("try {");
2501 // for (int j = 0; j < args.Length; j++) {
2502 // bool tmpvar = false;
2505 // //if (ps [j].ParameterType.IsByRef) {
2506 // // tmp += "ref ";
2507 // // tmpvar = true;
2509 // if (ps [j].IsOut) {
2514 // string name = "tmpvar_" + (counter++).ToString ();
2515 // WriteLine (ps [j].ParameterType.GetElementType ().Name + " " + name + " = " + GetStringValue (args [j]) + ";");
2518 // tmp += GetStringValue (args [j]);
2521 // string statement;
2522 // bool is_void = !(method.ReturnType == null || method.ReturnType == typeof (void));
2523 // statement = "mtp." + method.Name + " (" + tmp + ");";
2525 // statement = "result = " + statement;
2527 // WriteLine (statement);
2529 // if (ex != null) {
2530 // WriteLine ("Assert.Fail (\"Expected '{0}'\");", ex.GetType ().FullName);
2532 // WriteAssertProperties (mtp, Name, TestName, ref assert_count);
2534 // WriteLine ("Assert.AreEqual ({0}, result, \"{1}#{2}\");", GetStringValue (result), TestName, (assert_count++).ToString ());
2537 // WriteLine ("} catch (Exception ex) {");
2539 // if (ex == null) {
2540 // WriteLine ("Assert.Fail (\"Unexpected exception of Type = \" + ex.GetType ().FullName + \", Message = \" + ex.Message + \".\");");
2542 // WriteLine ("Assert.AreEqual (\"{0}\", ex.GetType ().FullName, \"{1}#{2}\");", ex.GetType ().FullName, TestName, (assert_count++).ToString ());
2543 // WriteLine ("Assert.AreEqual (@\"{0}\", ex.Message, \"{1}#{2}\");", ex.Message.Replace ("\"", "\"\""), TestName, (assert_count++).ToString ());
2548 // } while (IncIndex (indices, inputs));
2551 // WriteTestFooter ();
2556 //static void ConstructorTest ()
2558 // int assert_count = 1;
2559 // string Name = "mtp";
2562 // foreach (ConstructorInfo ctor in ctors) {
2563 // string TestName = GetTestName ("Constructor", ctor.GetParameters ());
2565 // WriteTestHeader (TestName);
2566 // MS_System_ComponentModel.MaskedTextProvider mtp = null;
2567 // WriteLine ("MaskedTextProvider mtp;");
2569 // ParameterInfo [] ps = ctor.GetParameters ();
2570 // Array [] inputs = new Array [ps.Length];
2571 // int [] indices = new int [ps.Length];
2573 // for (int i = 0; i < ps.Length; i++)
2574 // inputs [i] = GetTestValues (ps [i].ParameterType);
2577 // object [] args = new object [inputs.Length];
2578 // for (int i = 0; i < inputs.Length; i++) {
2579 // args [i] = inputs [i].GetValue (indices [i]);
2582 // Exception ex = null;
2585 // mtp = (MS_System_ComponentModel.MaskedTextProvider)ctor.Invoke (args);
2586 // } catch (TargetInvocationException e) {
2587 // ex = e.InnerException;
2588 // } catch (Exception e) {
2593 // WriteLine ("try {");
2596 // for (int j = 0; j < args.Length; j++) {
2599 // tmp += GetStringValue (args [j]);
2602 // string statement;
2603 // statement = "mtp = new MaskedTextProvider (" + tmp + ");";
2604 // WriteLine (statement);
2605 // if (ex == null) {
2606 // ok_constructors.Add (ctor);
2607 // ok_constructors_args.Add (args);
2608 // ok_constructors_statements.Add (statement);
2611 // if (ex != null) {
2612 // WriteLine ("Assert.Fail (\"Expected '{0}'\");", ex.GetType ().FullName);
2614 // WriteAssertProperties (mtp, Name, TestName, ref assert_count);
2617 // WriteLine ("} catch (Exception ex) {");
2619 // if (ex == null) {
2620 // WriteLine ("Assert.Fail (\"Unexpected exception of Type = \" + ex.GetType ().FullName + \", Message = \" + ex.Message + \".\");");
2622 // WriteLine ("Assert.AreEqual (\"{0}\", ex.GetType ().FullName, \"{1}#{2}\");", ex.GetType ().FullName, TestName, (assert_count++).ToString ());
2623 // WriteLine ("Assert.AreEqual (@\"{0}\", ex.Message, \"{1}#{2}\");", ex.Message.Replace ("\"", "\"\""), TestName, (assert_count++).ToString ());
2628 // } while (IncIndex (indices, inputs));
2629 // WriteTestFooter ();
2634 static string current_test_name;
2635 static int current_test_counter;
2636 static int skipped_test_counter;
2637 static int total_skipped_counter;
2638 static int total_test_counter;
2639 static string [] current_test_method_init;
2640 static void WriteTestHeader (string TestName, params string [] method_init)
2642 //WriteLine ("[Test]");
2643 //WriteLine ("public void " + TestName + " ()");
2644 WriteLineNonFormat ("[TestFixture]");
2645 WriteLineNonFormat ("public class " + TestName);
2646 WriteLineNonFormat ("{");
2648 total_test_counter += current_test_counter;
2649 current_test_counter = 0;
2650 total_skipped_counter += skipped_test_counter;
2651 skipped_test_counter = 0;
2652 current_test_name = TestName;
2653 current_test_method_init = method_init;
2654 Console.Write ("Writing " + TestName + "... ");
2656 static void WriteTestFooter ()
2659 WriteLineNonFormat ("}");
2660 Console.WriteLine ("written " + (current_test_counter - skipped_test_counter).ToString () + " tests, and skipped " + skipped_test_counter.ToString () + " tests.");
2663 static void WriteTestStart ()
2665 current_test_counter++;
2667 WriteLineNonFormat ("[Test]");
2668 WriteLineNonFormat ("public void " + current_test_name + current_test_counter.ToString ("00000") + " ()");
2669 WriteLineNonFormat ("{");
2671 foreach (string str in current_test_method_init)
2674 static void WriteTestEnd ()
2677 WriteLineNonFormat ("}");
2679 static void WriteFileHeader ()
2681 WriteLineNonFormat (
2683 // System.ComponentModel.MaskedTextProvider generated test cases
2686 // Rolf Bjarne Kvinge (RKvinge@novell.com)
2692 using System.ComponentModel;
2693 using System.Drawing.Design;
2694 using System.Globalization;
2695 using System.Collections;
2696 using NUnit.Framework;
2698 namespace MonoTests.System.ComponentModel
2701 public class MaskedTextProviderGeneratedTests
2707 static void WriteFileFooter ()
2709 WriteLineNonFormat (
2715 Console.WriteLine ("Written " + (total_test_counter - total_skipped_counter).ToString () + " tests in total and skipped " + total_skipped_counter.ToString () + " tests.");
2718 //static void WriteAssertProperties (MaskedTextProvider mtp, string Name, string TestName, ref int i)
2720 // WriteLine ("// Testing all properties...");
2722 // WriteLine ("Assert.AreEqual ({0}, {1}.AllowPromptAsInput, \"{2}-#{3}\");", GetStringValue (mtp.AllowPromptAsInput), Name, TestName, (i++).ToString ());
2723 // WriteLine ("Assert.AreEqual ({0}, {1}.AsciiOnly, \"{2}-#{3}\");", GetStringValue (mtp.AsciiOnly), Name, TestName, (i++).ToString ());
2724 // WriteLine ("Assert.AreEqual ({0}, {1}.AssignedEditPositionCount, \"{2}-#{3}\");", GetStringValue (mtp.AssignedEditPositionCount), Name, TestName, (i++).ToString ());
2725 // WriteLine ("Assert.AreEqual ({0}, {1}.AvailableEditPositionCount, \"{2}-#{3}\");", GetStringValue (mtp.AvailableEditPositionCount), Name, TestName, (i++).ToString ());
2726 // WriteLine ("Assert.AreEqual ({0}, {1}.Culture, \"{2}-#{3}\");", GetStringValue (mtp.Culture), Name, TestName, (i++).ToString ());
2727 // WriteLine ("Assert.AreEqual ({0}, {1}.EditPositionCount, \"{2}-#{3}\");", GetStringValue (mtp.EditPositionCount), Name, TestName, (i++).ToString ());
2728 // //WriteLine ("Assert.AreEqual ({0}, {1}.EditPositions, \"{2}-#{3}\");", GetStringValue (mtp.EditPositions), Name, TestName, (i++).ToString ());
2729 // WriteLine ("Assert.AreEqual ({0}, {1}.IncludeLiterals, \"{2}-#{3}\");", GetStringValue (mtp.IncludeLiterals), Name, TestName, (i++).ToString ());
2730 // WriteLine ("Assert.AreEqual ({0}, {1}.IncludePrompt, \"{2}-#{3}\");", GetStringValue (mtp.IncludePrompt), Name, TestName, (i++).ToString ());
2731 // WriteLine ("Assert.AreEqual ({0}, {1}.IsPassword, \"{2}-#{3}\");", GetStringValue (mtp.IsPassword), Name, TestName, (i++).ToString ());
2732 // WriteLine ("Assert.AreEqual ({0}, {1}.LastAssignedPosition, \"{2}-#{3}\");", GetStringValue (mtp.LastAssignedPosition), Name, TestName, (i++).ToString ());
2733 // WriteLine ("Assert.AreEqual ({0}, {1}.Length, \"{2}-#{3}\");", GetStringValue (mtp.Length), Name, TestName, (i++).ToString ());
2734 // WriteLine ("Assert.AreEqual ({0}, {1}.Mask, \"{2}-#{3}\");", GetStringValue (mtp.Mask), Name, TestName, (i++).ToString ());
2735 // WriteLine ("Assert.AreEqual ({0}, {1}.MaskCompleted, \"{2}-#{3}\");", GetStringValue (mtp.MaskCompleted), Name, TestName, (i++).ToString ());
2736 // WriteLine ("Assert.AreEqual ({0}, {1}.MaskFull, \"{2}-#{3}\");", GetStringValue (mtp.MaskFull), Name, TestName, (i++).ToString ());
2737 // WriteLine ("Assert.AreEqual ({0}, {1}.PasswordChar, \"{2}-#{3}\");", GetStringValue (mtp.PasswordChar), Name, TestName, (i++).ToString ());
2738 // WriteLine ("Assert.AreEqual ({0}, {1}.PromptChar, \"{2}-#{3}\");",GetStringValue ( mtp.PromptChar), Name, TestName, (i++).ToString ());
2739 // WriteLine ("Assert.AreEqual ({0}, {1}.ResetOnPrompt, \"{2}-#{3}\");", GetStringValue (mtp.ResetOnPrompt), Name, TestName, (i++).ToString ());
2740 // WriteLine ("Assert.AreEqual ({0}, {1}.ResetOnSpace, \"{2}-#{3}\");", GetStringValue (mtp.ResetOnSpace), Name, TestName, (i++).ToString ());
2741 // WriteLine ("Assert.AreEqual ({0}, {1}.SkipLiterals, \"{2}-#{3}\");", GetStringValue (mtp.SkipLiterals), Name, TestName, (i++).ToString ());
2745 static bool CompareMaskTextProviders (object mtp_MS, object mtp_Mono)
2747 object value_ms, value_mono;
2748 PropertyInfo [] fields = mtp_MS.GetType ().GetProperties (BindingFlags.Public | BindingFlags.Instance | BindingFlags.GetProperty);
2749 foreach (PropertyInfo field_MS in fields) {
2750 if (field_MS.Name == "EditPositions")
2752 if (field_MS.Name == "Culture")
2754 if (field_MS.Name == "Item")
2757 PropertyInfo field_Mono = mtp_Mono.GetType ().GetProperty (field_MS.Name);
2759 value_ms = field_MS.GetValue (mtp_MS, null);
2760 value_mono = field_Mono.GetValue (mtp_Mono, null);
2762 if (!Compare (value_ms, value_mono)) {
2767 MethodInfo method_MS, method_Mono;
2770 object [] all_values = new object [] {
2772 new object [] {true},
2773 new object [] {false},
2774 new object [] {true, true},
2775 new object [] {false, true},
2776 new object [] {true, false},
2777 new object [] {false, false},
2781 foreach (object [] values in all_values) {
2782 args = new Type [values.Length];
2783 for (int i = 0; i < values.Length; i++) {
2784 args [i] = values [i].GetType ();
2786 method_Mono = mtp_Mono.GetType ().GetMethod (name, args);
2787 method_MS = mtp_MS.GetType ().GetMethod (name, args);
2788 value_ms = method_MS.Invoke (mtp_MS, values);
2789 value_mono = method_Mono.Invoke (mtp_Mono, values);
2790 if (!Compare (value_ms, value_mono)) {
2798 static bool Compare (object v1, object v2)
2800 if (v1 == null && v2 == null) {
2802 } else if (v1 == null ^ v2 == null) {
2804 } else if (v1.GetType ().Name == "MaskedTextResultHint" && v2.GetType ().Name == "MaskedTextResultHint") {
2805 return (int)v1 == (int)v2;
2806 } else if (v1.GetType ().FullName == "System.Collections.Generic.List`1+Enumerator[[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]" && v2.GetType ().FullName == v1.GetType ().FullName) {
2807 List <int>.Enumerator list1, list2;
2808 list1 = (List<int>.Enumerator) v1;
2809 list2 = (List<int>.Enumerator) v2;
2813 next1 = list1.MoveNext ();
2814 next2 = list2.MoveNext ();
2815 if (next1 ^ next2) {
2818 if (!next1 && !next2) {
2821 item1 = list1.Current;
2822 item2 = list2.Current;
2823 if (item1 != item2) {
2827 } else if (!v1.Equals (v2)) {
2833 static bool Compare (string methodName, string mask, ref int stateindex, object [] args, ref bool more_states)
2835 //if (!new StackFrame (1).GetMethod ().Name.Contains (methodName) && !new StackFrame (2).GetMethod ().Name.Contains (methodName)) {
2836 // Console.WriteLine ("STOP");
2840 bool result = false;
2843 if ((current_test_counter - skipped_test_counter) > MAXFAILEDTESTS) {
2844 more_states = false;
2848 object [] args_MS, args_Mono;
2849 object mtp_MS, mtp_Mono;
2852 args_MS = new object [args.Length];
2853 args_Mono = new object [args.Length];
2855 CreateObjects (out mtp_MS, out mtp_Mono, mask);
2857 for (int i = 0; i < args.Length; i++) {
2858 if (args [i] != null && args [i].GetType ().Name == "MaskedTextResultHint") {
2859 args_Mono [i] = Enum.ToObject (type_Hint_Mono, (int)args [i]);
2860 args_MS [i] = Enum.ToObject (type_Hint_MS, (int)args [i]);
2862 args_Mono [i] = args [i];
2863 args_MS [i] = args [i];
2867 more_states = CreateState (mtp_MS, stateindex);
2868 more_states = CreateState (mtp_Mono, stateindex);
2870 if (mtp_MS.GetType ().GetProperty (methodName) != null) {
2871 methodName = "get_" + methodName;
2873 object result_MS, result_Mono;
2874 result_MS = mtp_MS.GetType ().InvokeMember (methodName, BindingFlags.Public | BindingFlags.Instance | BindingFlags.InvokeMethod, null, mtp_MS, args_MS);
2875 result_Mono = mtp_Mono.GetType ().InvokeMember (methodName, BindingFlags.Public | BindingFlags.Instance | BindingFlags.InvokeMethod, null, mtp_Mono, args_Mono);
2878 for (int arg = 0; arg < args_Mono.Length; arg++) {
2879 if (!Compare (args_MS [arg], args_Mono [arg])) {
2884 if (result && !CompareMaskTextProviders (mtp_MS, mtp_Mono)) {
2887 if (result && !Compare (result_MS, result_Mono)) {
2890 } catch (Exception ex) {
2892 more_states = false;
2893 Console.WriteLine (ex.Message);
2898 current_test_counter++;
2899 skipped_test_counter++;
2906 static void WriteAssertPropertiesMethod ()
2908 string filecontents = File.ReadAllText (Path.Combine (Path.GetDirectoryName (Path.GetFullPath (destination_file)), "MaskedTextProviderTest.cs"));
2911 start = filecontents.IndexOf ("/*" + " START */"); // strings are split in two so to not match itself.
2912 end = filecontents.IndexOf ("/*" + " END */");
2913 method = filecontents.Substring (start + 11, end - start - 11);
2914 WriteLineNonFormat (method.Replace ("{", "{").Replace ("}", "}"));
2916 //public static void AssertProperties (MaskedTextProvider mtp, string test_name, int counter, bool allow_prompt, bool ascii_only, int assigned_edit_position_count, int available_edit_position_count,
2917 // CultureInfo culture, int edit_position_count, bool include_literals, bool include_prompt, bool is_password, int last_assigned_position,
2918 // int length, string mask, bool mask_completed, bool mask_full, char password_char, char prompt_char, bool reset_on_prompt, bool reset_on_space, bool skip_literals,
2919 // string tostring, string tostring_true, string tostring_false, string tostring_true_true, string tostring_true_false, string tostring_false_true, string tostring_false_false)
2921 // // Testing all properties...
2924 // Assert.AreEqual (allow_prompt, mtp.AllowPromptAsInput, string.Format(""{0}-#{1} (AllowPromptAsInput)"", test_name + counter.ToString (), (i++).ToString ()));
2925 // Assert.AreEqual (ascii_only, mtp.AsciiOnly, string.Format(""{0}-#{1} (AsciiOnly)"", test_name + counter.ToString (), (i++).ToString ()));
2926 // Assert.AreEqual (assigned_edit_position_count, mtp.AssignedEditPositionCount, string.Format(""{0}-#{1} (AssignedEditPositionCount)"", test_name + counter.ToString (), (i++).ToString ()));
2927 // Assert.AreEqual (available_edit_position_count, mtp.AvailableEditPositionCount, string.Format(""{0}-#{1} (AvailableEditPositionCount)"", test_name + counter.ToString (), (i++).ToString ()));
2928 // Assert.AreEqual (culture, mtp.Culture, string.Format(""{0}-#{1} (Culture)"", test_name + counter.ToString (), (i++).ToString ()));
2929 // Assert.AreEqual (edit_position_count, mtp.EditPositionCount, string.Format(""{0}-#{1} (EditPositionCount)"", test_name + counter.ToString (), (i++).ToString ()));
2930 // //Assert.AreEqual ({0}, mtp.EditPositions,string.Format( ""{0}-#{1} (EditPositions)"", test_name + counter.ToString (), (i++).ToString ()));
2931 // Assert.AreEqual (include_literals, mtp.IncludeLiterals, string.Format(""{0}-#{1} (IncludeLiterals)"", test_name + counter.ToString (), (i++).ToString ()));
2932 // Assert.AreEqual (include_prompt, mtp.IncludePrompt, string.Format(""{0}-#{1} (IncludePrompt)"", test_name + counter.ToString (), (i++).ToString ()));
2933 // Assert.AreEqual (is_password, mtp.IsPassword, string.Format(""{0}-#{1} (IsPassword)"", test_name + counter.ToString (), (i++).ToString ()));
2934 // Assert.AreEqual (last_assigned_position, mtp.LastAssignedPosition, string.Format(""{0}-#{1} (LastAssignedPosition)"", test_name + counter.ToString (), (i++).ToString ()));
2935 // Assert.AreEqual (length, mtp.Length, string.Format(""{0}-#{1} (Length)"", test_name + counter.ToString (), (i++).ToString ()));
2936 // Assert.AreEqual (mask, mtp.Mask, string.Format(""{0}-#{1} (Mask)"", test_name + counter.ToString (), (i++).ToString ()));
2937 // Assert.AreEqual (mask_completed, mtp.MaskCompleted, string.Format(""{0}-#{1} (MaskCompleted)"", test_name + counter.ToString (), (i++).ToString ()));
2938 // Assert.AreEqual (mask_full, mtp.MaskFull, string.Format(""{0}-#{1} (MaskFull)"", test_name + counter.ToString (), (i++).ToString ()));
2939 // Assert.AreEqual (password_char, mtp.PasswordChar, string.Format(""{0}-#{1} (PasswordChar)"", test_name + counter.ToString (), (i++).ToString ()));
2940 // Assert.AreEqual (prompt_char, mtp.PromptChar, string.Format(""{0}-#{1} (PromptChar)"", test_name + counter.ToString (), (i++).ToString ()));
2941 // Assert.AreEqual (reset_on_prompt, mtp.ResetOnPrompt, string.Format(""{0}-#{1} (ResetOnPrompt)"", test_name + counter.ToString (), (i++).ToString ()));
2942 // Assert.AreEqual (reset_on_space, mtp.ResetOnSpace, string.Format(""{0}-#{1} (ResetOnSpace)"", test_name + counter.ToString (), (i++).ToString ()));
2943 // Assert.AreEqual (skip_literals, mtp.SkipLiterals, string.Format(""{0}-#{1} (SkipLiterals)"", test_name + counter.ToString (), (i++).ToString ()));
2944 // Assert.AreEqual (tostring, mtp.ToString (), string.Format(""{0}-#{1} (tostring)"", test_name + counter.ToString (), (i++).ToString ()));
2945 // Assert.AreEqual (tostring_true, mtp.ToString (true), string.Format(""{0}-#{1} (tostring_true)"", test_name + counter.ToString (), (i++).ToString ()));
2946 // Assert.AreEqual (tostring_false, mtp.ToString (false), string.Format(""{0}-#{1} (tostring_false)"", test_name + counter.ToString (), (i++).ToString ()));
2947 // Assert.AreEqual (tostring_true_true, mtp.ToString (true, true), string.Format(""{0}-#{1} (tostring_true_true)"", test_name + counter.ToString (), (i++).ToString ()));
2948 // Assert.AreEqual (tostring_true_false, mtp.ToString (true, false), string.Format(""{0}-#{1} (tostring_true_false)"", test_name + counter.ToString (), (i++).ToString ()));
2949 // Assert.AreEqual (tostring_false_true, mtp.ToString (false, true), string.Format(""{0}-#{1} (tostring_false_true)"", test_name + counter.ToString (), (i++).ToString ()));
2950 // Assert.AreEqual (tostring_false_false, mtp.ToString (false, false), string.Format(""{0}-#{1} (tostring_false_false)"", test_name + counter.ToString (), (i++).ToString ()));
2953 // ".Replace ("{", "{").Replace ("}", "}"));
2956 static void WriteAssertProperties (MS_System_ComponentModel.MaskedTextProvider mtp, string Name, string TestName, ref int i)
2958 StringBuilder call = new StringBuilder ();
2959 call.Append ("MaskedTextProviderTest.AssertProperties (mtp, \"" + TestName + "\", " + (i++).ToString ());
2960 call.Append (", " + GetStringValue (mtp.AllowPromptAsInput));
2961 call.Append (", " + GetStringValue (mtp.AsciiOnly));
2962 call.Append (", " + GetStringValue (mtp.AssignedEditPositionCount));
2963 call.Append (", " + GetStringValue (mtp.AvailableEditPositionCount));
2964 call.Append (", " + GetStringValue (mtp.Culture));
2965 call.Append (", " + GetStringValue (mtp.EditPositionCount));
2966 //call.Append (", " + GetStringValue (mtp.EditPositions));
2967 call.Append (", " + GetStringValue (mtp.IncludeLiterals));
2968 call.Append (", " + GetStringValue (mtp.IncludePrompt));
2969 call.Append (", " + GetStringValue (mtp.IsPassword));
2970 call.Append (", " + GetStringValue (mtp.LastAssignedPosition));
2971 call.Append (", " + GetStringValue (mtp.Length));
2972 call.Append (", " + GetStringValue (mtp.Mask));
2973 call.Append (", " + GetStringValue (mtp.MaskCompleted));
2974 call.Append (", " + GetStringValue (mtp.MaskFull));
2975 call.Append (", " + GetStringValue (mtp.PasswordChar));
2976 call.Append (", " + GetStringValue (mtp.PromptChar));
2977 call.Append (", " + GetStringValue (mtp.ResetOnPrompt));
2978 call.Append (", " + GetStringValue (mtp.ResetOnSpace));
2979 call.Append (", " + GetStringValue (mtp.SkipLiterals));
2980 call.Append (", " + QuoteString (mtp.ToString ()));
2981 call.Append (", " + QuoteString (mtp.ToString (true)));
2982 call.Append (", " + QuoteString (mtp.ToString (false)));
2983 call.Append (", " + QuoteString (mtp.ToString (true, true)));
2984 call.Append (", " + QuoteString (mtp.ToString (true, false)));
2985 call.Append (", " + QuoteString (mtp.ToString (false, true)));
2986 call.Append (", " + QuoteString (mtp.ToString (false, false)));
2988 WriteLine (call.ToString ());
2991 static string QuoteString (string str)
2993 return "@\"" + str.Replace ("\"", "\"\"") + "\"";
2996 //static void WriteAssertProperties2 (MS_System_ComponentModel.MaskedTextProvider mtp, string Name, string TestName, ref int i)
2998 // WriteLine ("// Testing all properties...");
3000 // WriteLine ("Assert.AreEqual ({0}, {1}.AllowPromptAsInput, \"{2}-#{3}\");", GetStringValue (mtp.AllowPromptAsInput), Name, TestName, (i++).ToString ());
3001 // WriteLine ("Assert.AreEqual ({0}, {1}.AsciiOnly, \"{2}-#{3}\");", GetStringValue (mtp.AsciiOnly), Name, TestName, (i++).ToString ());
3002 // WriteLine ("Assert.AreEqual ({0}, {1}.AssignedEditPositionCount, \"{2}-#{3}\");", GetStringValue (mtp.AssignedEditPositionCount), Name, TestName, (i++).ToString ());
3003 // WriteLine ("Assert.AreEqual ({0}, {1}.AvailableEditPositionCount, \"{2}-#{3}\");", GetStringValue (mtp.AvailableEditPositionCount), Name, TestName, (i++).ToString ());
3004 // //WriteLine ("Assert.AreEqual ({0}, {1}.Culture, \"{2}-#{3}\");", GetStringValue (mtp.Culture), Name, TestName, (i++).ToString ());
3005 // WriteLine ("Assert.AreEqual ({0}, {1}.EditPositionCount, \"{2}-#{3}\");", GetStringValue (mtp.EditPositionCount), Name, TestName, (i++).ToString ());
3006 // //WriteLine ("Assert.AreEqual ({0}, {1}.EditPositions, \"{2}-#{3}\");", GetStringValue (mtp.EditPositions), Name, TestName, (i++).ToString ());
3007 // WriteLine ("Assert.AreEqual ({0}, {1}.IncludeLiterals, \"{2}-#{3}\");", GetStringValue (mtp.IncludeLiterals), Name, TestName, (i++).ToString ());
3008 // WriteLine ("Assert.AreEqual ({0}, {1}.IncludePrompt, \"{2}-#{3}\");", GetStringValue (mtp.IncludePrompt), Name, TestName, (i++).ToString ());
3009 // WriteLine ("Assert.AreEqual ({0}, {1}.IsPassword, \"{2}-#{3}\");", GetStringValue (mtp.IsPassword), Name, TestName, (i++).ToString ());
3010 // WriteLine ("Assert.AreEqual ({0}, {1}.LastAssignedPosition, \"{2}-#{3}\");", GetStringValue (mtp.LastAssignedPosition), Name, TestName, (i++).ToString ());
3011 // WriteLine ("Assert.AreEqual ({0}, {1}.Length, \"{2}-#{3}\");", GetStringValue (mtp.Length), Name, TestName, (i++).ToString ());
3012 // WriteLine ("Assert.AreEqual ({0}, {1}.Mask, \"{2}-#{3}\");", GetStringValue (mtp.Mask), Name, TestName, (i++).ToString ());
3013 // WriteLine ("Assert.AreEqual ({0}, {1}.MaskCompleted, \"{2}-#{3}\");", GetStringValue (mtp.MaskCompleted), Name, TestName, (i++).ToString ());
3014 // WriteLine ("Assert.AreEqual ({0}, {1}.MaskFull, \"{2}-#{3}\");", GetStringValue (mtp.MaskFull), Name, TestName, (i++).ToString ());
3015 // WriteLine ("Assert.AreEqual ({0}, {1}.PasswordChar, \"{2}-#{3}\");", GetStringValue (mtp.PasswordChar), Name, TestName, (i++).ToString ());
3016 // WriteLine ("Assert.AreEqual ({0}, {1}.PromptChar, \"{2}-#{3}\");", GetStringValue (mtp.PromptChar), Name, TestName, (i++).ToString ());
3017 // WriteLine ("Assert.AreEqual ({0}, {1}.ResetOnPrompt, \"{2}-#{3}\");", GetStringValue (mtp.ResetOnPrompt), Name, TestName, (i++).ToString ());
3018 // WriteLine ("Assert.AreEqual ({0}, {1}.ResetOnSpace, \"{2}-#{3}\");", GetStringValue (mtp.ResetOnSpace), Name, TestName, (i++).ToString ());
3019 // WriteLine ("Assert.AreEqual ({0}, {1}.SkipLiterals, \"{2}-#{3}\");", GetStringValue (mtp.SkipLiterals), Name, TestName, (i++).ToString ());