public void Correct_size_depending_on_number_of_iterations(int iterations, int expectedSize) { var diamondSquare = new DiamondSquare(new NullOffsetGenerator()); var result = diamondSquare.Create(0, 1, 2, 3, iterations, 0); result.Should().HaveCount(expectedSize); }
public void Has_correct_values_for_zeroth_iteration() { var diamondSquare = new DiamondSquare(new NullOffsetGenerator()); var result = diamondSquare.Create(0, 1, 4, 8, 0, 0); result.Should().BeEquivalentTo(new double[] { 0, 1, 4, 8 }); }
public void Has_correct_values_for_first_iteration() { var diamondSquare = new DiamondSquare(new NullOffsetGenerator()); var result = diamondSquare.Create(0, 1, 4, 8, 1, 0); result.Should().ContainInOrder(new[] { 0, 1.0625, 1, 1.8125, 3.25, 3.0625, 4, 3.8125, 8 }); }
public void Has_correct_values_for_second_iteration() { var diamondSquare = new DiamondSquare(new NullOffsetGenerator()); var result = diamondSquare.Create(0, 1, 4, 8, 2, 0); result.Should().BeEquivalentTo(new[] { 0, 0.6484375, 1.0625, 1.0390625, 1, 0.8359375, 1.53125, 1.984375, 2.09375, 1.5390625, 1.8125, 2.453125, 3.25, 3.234375, 3.0625, 2.2578125, 3.21875, 3.703125, 4.53125, 3.8984375, 4, 2.7578125, 3.8125, 4.0859375, 8 }); }
public void Offsets_heights() { var diamondSquare = new DiamondSquare(new FakeOffsetGenerator( new FakeOffsetGenerator.FakeOffset(1, 1, 128, 0.25), new FakeOffsetGenerator.FakeOffset(1, -1, 128, 1), new FakeOffsetGenerator.FakeOffset(-1, 1, 128, 2), new FakeOffsetGenerator.FakeOffset(3, 1, 128, -1), new FakeOffsetGenerator.FakeOffset(1, 3, 128, 1), new FakeOffsetGenerator.FakeOffset(1, 0, 128, 1), new FakeOffsetGenerator.FakeOffset(1, 2, 128, 2), new FakeOffsetGenerator.FakeOffset(0, 1, 128, 1), new FakeOffsetGenerator.FakeOffset(2, 1, 128, 1))); var result = diamondSquare.Create(0, 1, 4, 8, 1, 128); result.Should().ContainInOrder(new[] { 0, 2.375, 1, 3.375, 3.5, 3.875, 4, 6.125, 8 }); }