protected override void ProcessRecord() { if (String) { var result = new List <string>(); for (var i = Minimum; i < Maximum; i++) { if (MyNumber.VerifyNumber(Fill(i.ToString()).Select(c => c - '0').ToArray())) { result.Add(Fill(i.ToString())); } } WriteObject(result.ToArray()); } else { var result = new List <int[]>(); for (var i = Minimum; i < Maximum; i++) { var numArray = Fill(i.ToString()).Select(c => c - '0').ToArray(); if (MyNumber.VerifyNumber(numArray)) { result.Add(numArray); } } WriteObject(result.ToArray()); } }
public void GenerateRandom() { var n = new MyNumber(); for (var i = 0; i < 100; i++) { var rSeq = n.GenerateRandomNumber(); var check = MyNumber.VerifyNumber(rSeq); if (check == false) { throw new Exception(); } } }
protected override void ProcessRecord() { switch (DataType) { case "string": { var data = (string)MyNumberData; _result = MyNumber.VerifyNumber(data.Select(c => c - '0').ToArray()); break; } case "array": { _result = MyNumber.VerifyNumber(((object[])MyNumberData).Cast <int>().ToArray()); break; } } }
public void SampleTest() { // Some randomly generated array of My Numbers var subjectArray = new[] { "614106526000", "510136263801", "060122228102", "362473502703", "467430101604", "763727588705", "734220726006", "450817747707", "207304711608", "407508284309" }; if (subjectArray.Select(item => item.ToCharArray()) .Select(subject => Array.ConvertAll(subject, c => (int)char.GetNumericValue(c))) .Any(value => !MyNumber.VerifyNumber(value))) { throw new Exception("Validation failed."); } }
/// <summary> /// Generate "My Number" of range specified /// </summary> /// <param name="min">Minimum value</param> /// <param name="max">Maximum value</param> private static void RangeN(string min, string max) { var minFilled = Fill(min, RangeMode.Numerical); var maxFilled = Fill(max, RangeMode.Numerical); Log.Debug("Filled min: " + minFilled); Log.Debug("Filled max: " + maxFilled); var value = Array.ConvertAll(minFilled.ToCharArray(), c => (int)GetNumericValue(c)); var stop = Array.ConvertAll(maxFilled.ToCharArray(), c => (int)GetNumericValue(c)); do { if (MyNumber.VerifyNumber(value)) { Console.WriteLine(string.Join("", value)); } value = Increment(value); } while (!Compare(value, stop, RangeMode.Numerical) && value != null); }
/// <summary> /// Check "My Number" for validity /// </summary> /// <param name="number">"My Number" to check</param> /// <returns>Validation result</returns> private static bool Check(string number) { var sanitized = Sanitize(number); return(MyNumber.VerifyNumber(sanitized)); }