public void DeleteUserAsync_IdLessThanOne_ThrowsArgumentNullException()
        {
            var mockDal       = Substitute.For <IUserDal>();
            var mockLogger    = Substitute.For <ILogger <UserAdministrationService> >();
            var mockCryptoSvc = Substitute.For <ICryptographyService>();

            var adminSvc = new UserAdministrationService(mockLogger, mockDal, mockCryptoSvc);

            var e = Assert.Throws <ArgumentOutOfRangeException>(() => adminSvc.DeleteUserAsync(0).GetAwaiter().GetResult());

            Assert.That(e.Message, Does.Contain("Id provided cannot be less than 1"));
        }
        public void DeleteUserAsync_DeleteSuccess_ReturnsServiceResultStatusCodeFailed()
        {
            var mockDal       = Substitute.For <IUserDal>();
            var mockLogger    = Substitute.For <ILogger <UserAdministrationService> >();
            var mockCryptoSvc = Substitute.For <ICryptographyService>();

            mockDal.DeleteAsync(1).Returns((false));

            var adminSvc = new UserAdministrationService(mockLogger, mockDal, mockCryptoSvc);

            var result = adminSvc.DeleteUserAsync(1).GetAwaiter().GetResult();

            Assert.That(result, Is.EqualTo(ServiceResultStatusCode.Failed));
        }