public void ControllerLogErrorsAndTrowException() { Assert.Throws <ArgumentNullException>(() => { var badController = new ModulesController(LoggerFactory, null); ActionResult result = badController.GetModules().Result as OkObjectResult; }); }
public void ModulesListAreNotEmpty() { Assert.NotNull(_cachingRepository); var okResult = _controller.GetModules().Result as OkObjectResult; Assert.NotNull(okResult); var items = Assert.IsType <List <DtoConfigurationModule> >(okResult.Value); Assert.Contains(items, item => item.Id == 5); }
public void get_all_avaliable_updates_then_get_one_of_the_avliable_updates() { // mock requestUrl MocRequestUrl(); // set up two avaliable modules var dataTable1 = new byte[] { 0x00 }; const string moduleName1 = "MODULE_NAME_1"; var moduleInfo = new ModuleInfo { Id = "No1", Manifest = new ModuleManifest { ModuleName = moduleName1 }, ModuleData = dataTable1 }; var dataTable2 = new byte[] { 0xFF }; const string moduleName2 = "MODULE_NAME_2"; var moduleInfo2 = new ModuleInfo { Id = "No2", Manifest = new ModuleManifest { ModuleName = moduleName2 }, ModuleData = dataTable2 }; // set up storage for module _mockedStorageProvider .Setup(x => x.GetAvaliableModules()) .Returns(new List <IModuleInfo> { moduleInfo, moduleInfo2 }); // get the xml var fileStreamResult = _controller.GetModules() as FileStreamResult; // read this xml using the repository client class var output = XmlSerializerHelper.Deserialize <WebAvailablePackagesCollection>( GetDataFromStream(fileStreamResult)); // get the one module (module No2) out of the xml file WebModulePackageInfo selectedModule = output.AvailablePackages .Where(x => x.Manifest.ModuleName.Equals(moduleName2)) .Select(x => x) .Single(); // get from url: 'xxx/yyy/zzzz./id' the id thing, assert the url has this format string[] splitedUrl = selectedModule.Url.Split('/'); string selectedId = splitedUrl.Last(); // perform so called "download" using the url - id provided var fileStreamModule = _controller.GetModulePackage(selectedId) as FileStreamResult; // assert recived file Assert.NotNull(fileStreamModule, "The resulted outcome should be file stream result"); Assert.AreEqual(dataTable2, GetDataFromStream(fileStreamModule), "The data saved in database and returned should be the same"); }