public void DetectMinX()
        {
            RollerCoasterMaker game = new RollerCoasterMaker();

            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            for (int i = 0; i < 30; i++)
            {
                game.BuildStright();
            }
            Assert.AreEqual(game.builder.initialTaskResults, TaskResults.MinX);
        }
        public void FixMinX()
        {
            RollerCoasterMaker game = new RollerCoasterMaker();

            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            for (int i = 0; i < 30; i++)
            {
                game.BuildStright();
            }
            Assert.AreEqual(game.builder.initialTaskResults, TaskResults.MinX);
            Assert.AreEqual(game.builder.lastBuildActionFail, false);
        }
        public void BuildLeft()
        {
            RollerCoasterMaker game = new RollerCoasterMaker();


            game.BuildLeft();
            Assert.AreEqual(67, game.coaster.TrackCount);
        }
        public void DetectMinY()
        {
            RollerCoasterMaker game = new RollerCoasterMaker();

            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();

            Assert.AreEqual(game.builder.initialTaskResults, TaskResults.MinY);
        }
        static void Main(string[] args)
        {
            RollerCoasterMaker game = new RollerCoasterMaker();

            game.BuildStright();
            game.BuildStright();

            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();

            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            //game.BuildFinsh();

            //game.Back();
            //game.Back();
        }
        public void FixMinY()
        {
            RollerCoasterMaker game = new RollerCoasterMaker();

            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();

            Assert.AreEqual(game.builder.initialTaskResults, TaskResults.MinY);
            Assert.AreEqual(game.builder.lastBuildActionFail, false);
        }
        public void FixTrackCollison()
        {
            RollerCoasterMaker game = new RollerCoasterMaker();


            for (int i = 0; i < 6; i++)
            {
                game.BuildStright();
            }
            for (int i = 0; i < 15; i++)
            {
                game.BuildLeft();
            }
            Assert.AreEqual(game.builder.initialTaskResults, TaskResults.Collison);
            Assert.AreEqual(game.builder.lastBuildActionFail, false);
        }
        public void DetectCollision()
        {
            RollerCoasterMaker game = new RollerCoasterMaker();


            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildStright();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();

            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();
            game.BuildLeft();


            Assert.AreEqual(game.builder.initialTaskResults, TaskResults.Collison);
        }