public void DecideLayout_ShouldHaveConnectedBlocks(int numBlocks)
        {
            var fakeRandomNumbers = FakeRandomNumberTestFactory.CreateGenerator(numBlocks);
            var builder           = new RoomBuilder(fakeRandomNumbers, new FakeLogger(_output), new DispatchRegistry());
            var blocks            = builder.DecideLayout(numBlocks);

            var expected = GetExpectedLayout(numBlocks);
            var actual   = blocks.ToString();

            _output.WriteLine(expected);
            _output.WriteLine(actual);

            Assert.Equal(expected, actual);
        }
        public void DecideLayout_ForSimpleNavigation_ShouldMoveAsExpected(Test test)
        {
            var fakeRandomNumbers = GetGenerator(test);
            var builder           = new RoomBuilder(fakeRandomNumbers, new FakeLogger(_output), new DispatchRegistry());
            var numBlocks         = GetNumBlocks(test);

            var blocks = builder.DecideLayout(numBlocks);

            var expected = GetExpected(test);
            var actual   = blocks.ToString();

            _output.WriteLine(expected);
            _output.WriteLine('='.ToPaddedString(10));
            _output.WriteLine(actual);

            Assert.Equal(expected, actual);
        }