Exemplo n.º 1
0
 public async void RemoveColidEntrySubscription_ThrowsException_IfSearchFilterNotExists()
 {
     var userId = Guid.NewGuid();
     var dto    = new ColidEntrySubscriptionBuilder().WithColidEntry("http://non.existing.uri/whats#up").BuildDto();
     var colidEntrySubscription = _mockColidEntrySubscriptionService.Setup(x => x.GetOne(userId, dto)).Throws(new EntityNotFoundException());
     await Assert.ThrowsAsync <EntityNotFoundException>(() => _userService.RemoveColidEntrySubscriptionAsync(userId, dto));
 }
Exemplo n.º 2
0
        public async void AddColidEntrySubscriptionAsync_Should_InvokeUserRepositoryUpdate_Once()
        {
            var ceDto = new ColidEntrySubscriptionBuilder().WithColidEntry(new Uri("http://meh.com/specialmeh")).BuildDto();
            await _userService.AddColidEntrySubscriptionAsync(_user.Id, ceDto);

            _mockUserRepository.Verify(x => x.GetOneAsync(_user.Id, It.IsAny <bool>()), Times.Once);
            _mockUserRepository.Verify(x => x.Update(It.IsAny <User>()), Times.Once);
        }
Exemplo n.º 3
0
        public async void AddColidEntrySubscriptionAsync_ThrowsException_IfUserIsAlreadySubscribed()
        {
            var ceDto = new ColidEntrySubscriptionBuilder().WithColidEntry(new Uri("http://meh.com/specialmeh")).BuildDto();
            await _userService.AddColidEntrySubscriptionAsync(_user.Id, ceDto);

            await Assert.ThrowsAsync <EntityAlreadyExistsException>(() => _userService.AddColidEntrySubscriptionAsync(_user.Id, ceDto));

            _mockUserRepository.Verify(x => x.GetOneAsync(_user.Id, It.IsAny <bool>()), Times.Exactly(2));
            _mockUserRepository.Verify(x => x.Update(It.IsAny <User>()), Times.Once);
        }
Exemplo n.º 4
0
        public async void RemoveColidEntrySubscription_Should_InvokeColidEntrySubscriptionService_Once()
        {
            var colidPidUri = "http://hello.com/how_are_you#123";
            var ceBuilder   = new ColidEntrySubscriptionBuilder().WithColidEntry(colidPidUri);
            var ceList      = new List <ColidEntrySubscription>()
            {
                ceBuilder.WithId(99).Build()
            };
            var userId = Guid.NewGuid();
            var user   = new UserBuilder().WithId(userId).WithEmailAddress("*****@*****.**").WithColidEntrySubscriptions(ceList).Build();

            _mockUserRepository.Setup(x => x.GetOneAsync(userId, It.IsAny <bool>())).ReturnsAsync(user);

            await _userService.RemoveColidEntrySubscriptionAsync(userId, ceBuilder.BuildDto());

            _mockColidEntrySubscriptionService.Verify(x => x.GetOne(It.IsAny <Guid>(), It.IsAny <ColidEntrySubscriptionDto>()), Times.Once);
            _mockColidEntrySubscriptionService.Verify(x => x.Delete(It.IsAny <ColidEntrySubscription>()), Times.Once);
            _mockUserRepository.Verify(x => x.GetOneAsync(userId, It.IsAny <bool>()), Times.Once);
        }
        public ColidEntrySubscriptionServiceTests()
        {
            _mockSubscriptionRepository = new Mock <IColidEntrySubscriptionRepository>();
            _mockLogger          = new Mock <ILogger <ColidEntrySubscriptionService> >();
            _subscriptionService = new ColidEntrySubscriptionService(_mockSubscriptionRepository.Object, _mockLogger.Object);

            // Init testdata
            _userId = Guid.NewGuid();
            var builder = new ColidEntrySubscriptionBuilder().WithColidEntry(new Uri($"https://pid.bayer.com/kos19050#{Guid.NewGuid()}"));

            _colidEntrySubscription    = builder.Build();
            _colidEntrySubscriptionDto = builder.BuildDto();

            // Init mock behaviour
            _mockSubscriptionRepository.Setup(x => x.GetOne(It.IsAny <Guid>(), It.IsAny <Uri>()))
            .Returns(_colidEntrySubscription);

            IList <User> subscribedUsers;

            _mockSubscriptionRepository.Setup(x => x.TryGetAllUsers(It.IsAny <Uri>(), out subscribedUsers));
        }