public void ShouldCallMethods()
        {
            // Arrange : Done in TestInitialize()

            // Act : Call bussines logic execute.
            bussinesLogic.Execute();

            //Assert : Verify functions are being called by concrete BussinesLogicController implementation.
            logger.Verify(row => row.WriteLine("Debug", "Executing BussinesLogic..."), Times.Once);
            dataAccess.Verify(row => row.SetWorkingDirectory(), Times.Once);
            dataAccess.Verify(row => row.InitializeLogger(), Times.Once);
            dataAccess.Verify(row => row.CreateDirectoryStructure(), Times.Once);
            tools.Verify(row => row.PrintToolTypes(), Times.Once);
        }
        static void Main(string[] args)
        {
            Container container = ComposeRoot();

            IBussinesLogicController controller = container.GetInstance <IBussinesLogicController>();

            controller.Execute();

            Console.WriteLine("\r\nRequesting instance of ITool with name Amazing Tool");
            ITool toolTest = controller.ToolController.CreateToolOfType("Amazing Tool");

            Console.WriteLine($"Instance of {toolTest.Name} resolved.");

            Console.WriteLine("\r\nStarted");
            Console.ReadLine();
        }