public async Task ShouldGetAllModules_GetAllModules()
        {
            var           mockRepo   = new Mock <IDataRepository>();
            List <Module> moduleData = Modules();

            mockRepo.Setup(repo => repo.ModuleListAsync()).
            ReturnsAsync(moduleData);

            ModulesController controller = new ModulesController(mockRepo.Object);

            var result = await controller.GetAllModules();

            Assert.IsInstanceOfType(result.Result, typeof(OkObjectResult));

            var okResult = result.Result as OkObjectResult;
            var modules  = okResult.Value as List <Module>;

            Assert.AreEqual(2, modules.Count);

            Assert.AreEqual(moduleData[0], modules[0]);
            Assert.AreEqual(moduleData[1], modules[1]);
        }