private byte[] ReadCurrentImageFromCache(int userId) { byte[] imageByteArray; { imageByteArray = _imageFromCacheService.GetCurrentImageAsByteArray(); LogReadOldImageFromCache(userId); } return(imageByteArray); }
public void GetImageAsByteArray_WhenCannotReadNewImageFromCacheAndCannotReadFromWebCam_ReturnCurrentImageFromCache(int userId, int cacheUpdaterUserId) { // Arrange const string userUtc = "some_UTC_value"; _dateTimeProvider.DateTimeNow.Returns(new DateTime(2019, 05, 01, 15, 30, 30, 100)); (int waitTimeMilliSec, string reason)valueTuple = (0, ""); _imageFromCacheService.WaitBeforeGettingNextImage(Arg.Any <int>(), Arg.Any <DateTime>()).Returns(valueTuple); _imageFromCacheService.GetNewImageAsByteArray(Arg.Any <int>(), Arg.Any <DateTime>()).Returns((byte[])null); var currentImageArrayFromCache = new byte[20]; _imageFromCacheService.GetCurrentImageAsByteArray().Returns(currentImageArrayFromCache); _cacheUpdater.Update(userId: cacheUpdaterUserId, lastUpdate: _dateTimeProvider.DateTimeNow); var imageFromWebCam = new Bitmap(1, 1); byte[] imageArrayFromWebCam = ImageHelper.ConvertImageToByteArray(imageFromWebCam); _imageFromWebCamService.GetImage(Arg.Any <string>()).Returns(imageFromWebCam); IImageProviderService imageProviderService = CreateValidImageProviderService(); // Act bool canReadImageFromWebCam = imageProviderService.CanReadImageFromWebCam(userId, _dateTimeProvider.DateTimeNow); byte[] imageAsByteArray = imageProviderService.GetImageAsByteArray(userId, userUtc); // Assert Assert.That(canReadImageFromWebCam, Is.False); Assert.That(imageAsByteArray, Is.Not.Null); Assert.That(imageAsByteArray.Length, Is.EqualTo(currentImageArrayFromCache.Length)); Assert.That(imageAsByteArray.Length, Is.Not.EqualTo(imageArrayFromWebCam.Length)); Assert.That(_cacheUpdater.UserId, Is.Not.EqualTo(userId)); }