public void create_array_happy_path() { var result = CollectionFactory.CreateArray(3, i => i); result.Length.ShouldBe(3); result[0].ShouldBe(0); result[1].ShouldBe(1); result[2].ShouldBe(2); }
public void get_page_throws_exception_when_asking_for_page_higher_than_page_count() { var collection = CollectionFactory.CreateArray(10, x => Rand.NextInt()); Assert.Throws <lib12Exception>(() => collection.GetPage(3, 5)); }
public void get_page_throws_exception_if_number_of_page_is_less_than_one() { var collection = CollectionFactory.CreateArray(10, x => Rand.NextInt()); Assert.Throws <lib12Exception>(() => collection.GetPage(0, 5)); }
public void create_array_throws_exception_when_create_function_is_null() { Assert.Throws <ArgumentNullException>(() => CollectionFactory.CreateArray(12, (Func <int, int>)null)); }
public void create_array_throws_exception_when_size_is_negative() { Assert.Throws <ArgumentOutOfRangeException>(() => CollectionFactory.CreateArray(-1, i => i)); }
public void create_array_works_with_size_equal_to_zero() { var result = CollectionFactory.CreateArray(0, i => i); result.ShouldBeEmpty(); }
/// <summary> /// Returns an array of random objects of given type /// </summary> /// <typeparam name="T">The type to generate</typeparam> /// <param name="count">The count of objects to generate</param> /// <param name="constrains">The constrains for generating properties</param> /// <returns></returns> public static T[] NextArrayOf <T>(int count, ConstrainCollection constrains = null) where T : class { return(CollectionFactory .CreateArray(count, i => Next <T>(constrains))); }
/// <summary> /// Returns a random string with provided length /// </summary> /// <param name="length">Returned string length</param> /// <returns>Random string with provided length</returns> public static string NextString(int length) { return(new string(CollectionFactory.CreateArray(10, i => NextLowercaseLetter()))); }