public void Arrange() { _lookup = new EducationalOrganisationLookUp { Organisations = new List<EducationOrganisation> { new EducationOrganisation {Name = "Test 1"}, new EducationOrganisation {Name = "Test 2"}, new EducationOrganisation {Name = "Test 3"} } }; _azureService = new Mock<IAzureService>(); _azureService.Setup(x => x.GetModelFromBlobStorage<EducationalOrganisationLookUp>( It.IsAny<string>(), It.IsAny<string>())) .ReturnsAsync(_lookup); _cacheProvider = new Mock<ICacheProvider>(); _logger = new Mock<ILog>(); _repository = new EducationalOrganisationRepository(_cacheProvider.Object, _azureService.Object, _logger.Object); }
public async Task RunUpdate() { try { var orgainsations = await _edubaseService.GetOrganisations(); _logger.Info("Retrieved educational organisations", new Dictionary <string, object> { { "TotalCount", orgainsations.Count } }); if (orgainsations == null || !orgainsations.Any()) { return; } var lookup = new EducationalOrganisationLookUp { Organisations = orgainsations }; var serialisedJsonData = _serialiser.SerialiseToJson(lookup); await _uploader.UploadDataToStorage(serialisedJsonData); } catch (Exception e) { _logger.Error(e, "Could not update educational organisations due to an error."); } }
public byte[] SerialiseToJson(EducationalOrganisationLookUp organisations) { try { using (var stream = new MemoryStream()) { using (var writer = new StreamWriter(stream)) { using (var jsonWriter = new JsonTextWriter(writer)) { jsonWriter.Formatting = Formatting.Indented; var serializer = new JsonSerializer(); serializer.Serialize(jsonWriter, organisations); } } return(stream.ToArray()); } } catch (Exception ex) { _logger.Error(ex, $"An error occurred generating education orgainsation json data: {ex.Message}"); throw new Exception($"An error occurred generating education orgainsation json data: {ex.Message}"); } }