/// <summary> /// Removes the entry. /// </summary> /// <param name="customerId">The customer identifier.</param> /// <param name="entryId">The entry identifier.</param> /// <returns></returns> public async Task RemoveEntry(int customerId, Guid entryId) { var cachedEntries = await GetAllCachedEntries(customerId); SearchEntryDto removedEntry = null; cachedEntries.TryRemove(entryId, out removedEntry); }
public SearchEntryDto AddSearchEntry(SearchEntryDto searchEntryDto) { var searchEntry = new SearchEntry(); searchEntry.FromDto(searchEntryDto); _searchEntryRepository.Insert(searchEntry); var task = _searchEntryRepository.SaveChangesAsync(); task.Wait(); searchEntryDto.DateAdded = searchEntry.DateAdded; searchEntryDto.Id = searchEntry.Id; return(searchEntryDto); }
public void SearchEntryTests_IDtoConvertable_Implements() { SearchEntryDto dto = _searchEntry.ToDto(); Assert.Equal(dto.Id, _searchEntry.Id); Assert.Equal(dto.SearchPhrase, _searchEntry.SearchPhrase); Assert.Equal(dto.UserId, _searchEntry.UserId); SearchEntry entry = new SearchEntry(); entry.FromDto(dto); Assert.Equal(dto.SearchPhrase, entry.SearchPhrase); Assert.Equal(dto.UserId, entry.UserId); Assert.Equal(dto.Id, _searchEntry.Id); }
public void SearchEntryServiceTests_AddSearchEntry_AddsSearchEntry() { // Setup var setup = new TestSetup(); // Object we will be adding var searchEntryDto = new SearchEntryDto() { SearchPhrase = "Hello" }; // Call the method we are testing var result = setup.SearchEntryService.AddSearchEntry(searchEntryDto); // Check that same Phrase is returned Assert.Equal(result.SearchPhrase, searchEntryDto.SearchPhrase); // Verify repository has the item Assert.NotNull(setup.Repository.Queryable().Where(x => x.SearchPhrase == searchEntryDto.SearchPhrase).FirstOrDefault()); var searchEntries = setup.SearchEntryService.FindRecentSearchEntries(); // One from this test and one default. Assert.Equal(searchEntries.Count(), 2); }
/// <summary> /// Tries to update entry. /// </summary> /// <param name="customerId">The customer identifier.</param> /// <param name="entry">The entry.</param> /// <returns></returns> public async Task AddOrUpdateEntry(int customerId, SearchEntryDto entry) { var cachedEntries = await GetAllCachedEntries(customerId); cachedEntries.AddOrUpdate(entry.Id, entry, (key, oldValue) => entry); }