Esempio n. 1
0
        /// <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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }
Esempio n. 5
0
        /// <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);
        }