public void AddDictionary(Dictionary dictionary)
 {
     _chineseCharacterTrainerService.AddDictionary(dictionary);
     foreach (var entry in dictionary.Entries)
     {
         _chineseCharacterTrainerService.AddDictionaryEntry(entry);
     }
 }
        public void ShouldInitializeSummaryViewModelWhenQuestionsAreFinished()
        {
            var selectedDictionary = new Dictionary("Test", null);
            RaiseStartCompetitionEvent();
            _menuVMMock.Setup(p => p.SelectedDictionary).Returns(selectedDictionary);
            var questionResult = new QuestionResult();

            _questionVMMock.Raise(p => p.QuestionsFinished += null, questionResult);

            _competitionSummaryVMMock.Verify(p => p.Initialize(_menuVMMock.Object.SelectedDictionary, questionResult),
                                             Times.Once());
        }
        public async Task<Dictionary> ImportAsync(string name, string fileName)
        {
            var result = await Task.Run(() =>
                {
                    var lines = _textFileReader.Read(fileName);
                    var entries = _wordlistParser.Import(lines);
                    var dictionary = new Dictionary(name, entries);
                    _repository.AddDictionary(dictionary);
                    return dictionary;
                });

            return result;
        }
 public void Initialize(Dictionary dictionary, QuestionResult questionResult)
 {
     Initialize(questionResult);
     _dictionary = dictionary;
 }
 private Dictionary CreateTestDictionaryWithEntries()
 {
     var entries = new List<DictionaryEntry> { new DictionaryEntry("你", "ni3", null) };
     var dictionary = new Dictionary("Test", entries);
     return dictionary;
 }
 private static Highscore CreateHighscore(string username, Dictionary dictionary, int seconds)
 {
     var questionResult = new QuestionResult();
     questionResult.AddAnswer(new Answer(true, DateTime.Now, TimeSpan.FromSeconds(seconds), null));
     return new Highscore(username, dictionary.Id, questionResult);
 }