public void TryParseIntArray() { const string successValue1 = "10"; const string successValue2 = "20"; var errorValue1 = double.MaxValue.ToString(CultureInfo.InvariantCulture); var errorValue2 = double.MinValue.ToString(CultureInfo.InvariantCulture); var successByteValues = new[] { successValue1.TryParseInt(), successValue2.TryParseInt() }; var successValues = new[] { successValue1, successValue2 }; var errorValues = new[] { errorValue1, errorValue2 }; var mixedValues = new[] { successValue1, successValue2, errorValue1, errorValue2 }; #region full method (with number format), without default, dont return defult conversion var successConversion = string.Join(",", successValues).TryParseIntArray(null, false, BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(successConversion, "Error converting string to int array"); Assert.IsTrue(successConversion.Any(), "Error converting string to int array"); Assert.IsFalse(successConversion.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(successConversion.Count() == successByteValues.Count(), "Error converting string to int array"); var falseConversions = string.Join(",", errorValues).TryParseIntArray(null, false, BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(falseConversions, "Error converting string to int array"); Assert.IsFalse(falseConversions.Any(), "Error converting string to int array"); var mixedConversions = string.Join(",", mixedValues).TryParseIntArray(null, false, BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(mixedConversions, "Error converting string to int array"); Assert.IsFalse(mixedConversions.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(mixedConversions.Count() == successByteValues.Count(), "Error converting string to int array"); #endregion #region partial method (with number format), without default successConversion = string.Join(",", successValues).TryParseIntArray(null, BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(successConversion, "Error converting string to int array"); Assert.IsTrue(successConversion.Any(), "Error converting string to int array"); Assert.IsFalse(successConversion.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(successConversion.Count() == successByteValues.Count(), "Error converting string to int array"); falseConversions = string.Join(",", errorValues).TryParseIntArray(null, BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(falseConversions, "Error converting string to int array"); Assert.IsFalse(falseConversions.Any(), "Error converting string to int array"); mixedConversions = string.Join(",", mixedValues).TryParseIntArray(null, BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(mixedConversions, "Error converting string to int array"); Assert.IsFalse(mixedConversions.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(mixedConversions.Count() == successByteValues.Count(), "Error converting string to int array"); #endregion #region simple method (with number format) successConversion = string.Join(",", successValues).TryParseIntArray( BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(successConversion, "Error converting string to int array"); Assert.IsTrue(successConversion.Any(), "Error converting string to int array"); Assert.IsFalse(successConversion.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(successConversion.Count() == successByteValues.Count(), "Error converting string to int array"); falseConversions = string.Join(",", errorValues).TryParseIntArray( BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(falseConversions, "Error converting string to int array"); Assert.IsFalse(falseConversions.Any(), "Error converting string to int array"); mixedConversions = string.Join(",", mixedValues).TryParseIntArray( BasePrimitivesExtensions.GetDefaultIntNumberStyle(), BasePrimitivesExtensions.GetCurrentCulture()); Assert.IsNotNull(mixedConversions, "Error converting string to int array"); Assert.IsFalse(mixedConversions.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(mixedConversions.Count() == successByteValues.Count(), "Error converting string to int array"); #endregion #region full method (without number format), without default, dont return defult conversion successConversion = string.Join(",", successValues).TryParseIntArray(null, false); Assert.IsNotNull(successConversion, "Error converting string to int array"); Assert.IsTrue(successConversion.Any(), "Error converting string to int array"); Assert.IsFalse(successConversion.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(successConversion.Count() == successByteValues.Count(), "Error converting string to int array"); falseConversions = string.Join(",", errorValues).TryParseIntArray(null, false); Assert.IsNotNull(falseConversions, "Error converting string to int array"); Assert.IsFalse(falseConversions.Any(), "Error converting string to int array"); mixedConversions = string.Join(",", mixedValues).TryParseIntArray(null, false); Assert.IsNotNull(mixedConversions, "Error converting string to int array"); Assert.IsFalse(mixedConversions.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(mixedConversions.Count() == successByteValues.Count(), "Error converting string to int array"); #endregion #region partial method (without number format), without default successConversion = string.Join(",", successValues).TryParseIntArray(null); Assert.IsNotNull(successConversion, "Error converting string to int array"); Assert.IsTrue(successConversion.Any(), "Error converting string to int array"); Assert.IsFalse(successConversion.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(successConversion.Count() == successByteValues.Count(), "Error converting string to int array"); falseConversions = string.Join(",", errorValues).TryParseIntArray(null); Assert.IsNotNull(falseConversions, "Error converting string to int array"); Assert.IsFalse(falseConversions.Any(), "Error converting string to int array"); mixedConversions = string.Join(",", mixedValues).TryParseIntArray(null); Assert.IsNotNull(mixedConversions, "Error converting string to int array"); Assert.IsFalse(mixedConversions.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(mixedConversions.Count() == successByteValues.Count(), "Error converting string to int array"); #endregion #region simple method (without number format) successConversion = string.Join(",", successValues).TryParseIntArray(); Assert.IsNotNull(successConversion, "Error converting string to int array"); Assert.IsTrue(successConversion.Any(), "Error converting string to int array"); Assert.IsFalse(successConversion.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(successConversion.Count() == successByteValues.Count(), "Error converting string to int array"); falseConversions = string.Join(",", errorValues).TryParseIntArray(); Assert.IsNotNull(falseConversions, "Error converting string to int array"); Assert.IsFalse(falseConversions.Any(), "Error converting string to int array"); mixedConversions = string.Join(",", mixedValues).TryParseIntArray(); Assert.IsNotNull(mixedConversions, "Error converting string to int array"); Assert.IsFalse(mixedConversions.Any(a => !successByteValues.Contains(a)), "Error converting string to int array"); Assert.IsTrue(mixedConversions.Count() == successByteValues.Count(), "Error converting string to int array"); #endregion }