コード例 #1
0
        public void WordCounter_CountsAllInstancesOfASingleWordInASentence_Int()
        {
            int expectedAnswer           = 4;
            WordFrequencyCounter newTest = new WordFrequencyCounter("Hello", "Hello, hello. HeLLo, the cheery man saying !Hello helloseph");
            int result = newTest.WordCounter();

            Assert.AreEqual(expectedAnswer, result);
        }
コード例 #2
0
        public void Empty_input_string_return_an_empty_list()
        {
            WordFrequencyCounter     wordCounter = new WordFrequencyCounter();
            Dictionary <string, int> expected    = new Dictionary <string, int>();
            string input = string.Empty;

            Dictionary <string, int> output = wordCounter.CountFrequency(input);

            CollectionAssert.AreEqual(expected, output);
        }
コード例 #3
0
        public void Total_unique_words_count()
        {
            WordFrequencyCounter wordCounter = new WordFrequencyCounter();
            int    expected = 3;
            string input    = "firstword secondword firstword thirdword secondword";

            wordCounter.CountFrequency(input);
            int output = wordCounter.TotalUniqueWords;

            Assert.AreEqual(expected, output);
        }
コード例 #4
0
        public void Word_repeats_()
        {
            WordFrequencyCounter     wordCounter = new WordFrequencyCounter();
            Dictionary <string, int> expected    = new Dictionary <string, int> {
                { "firstword", 2 }, { "secondword", 1 }
            };
            string input = "firstword secondword firstword";

            Dictionary <string, int> output = wordCounter.CountFrequency(input);

            CollectionAssert.AreEqual(expected, output);
        }
コード例 #5
0
        public void Remove_unwanted_characters_from_input()
        {
            WordFrequencyCounter     wordCounter = new WordFrequencyCounter();
            Dictionary <string, int> expected    = new Dictionary <string, int> {
                { "oneword", 1 }
            };
            string input = "`1234567890 -=[]; '\\,./~!@#$%^&*()_+{}:\"||<>?OneWord";

            Dictionary <string, int> output = wordCounter.CountFrequency(input);

            CollectionAssert.AreEqual(expected, output);
        }
コード例 #6
0
        public void One_word_on_input_is_one_word_on_output()
        {
            WordFrequencyCounter     wordCounter = new WordFrequencyCounter();
            Dictionary <string, int> expected    = new Dictionary <string, int> {
                { "oneword", 1 }
            };
            string input = "oneword";

            Dictionary <string, int> output = wordCounter.CountFrequency(input);

            CollectionAssert.AreEqual(expected, output);
        }
コード例 #7
0
        public MainPresenter CreateMainPresenter()
        {
            ToolbarView     toolbarView     = new ToolbarView();
            TextInputView   textInputView   = new TextInputView();
            WordCounterView wordCounterView = new WordCounterView();
            StatusBarView   statusBarView   = new StatusBarView();

            ToolbarModel toolbarModel = new ToolbarModel();
            //ToolbarPresenter toolbarPresenter = new ToolbarPresenter(toolbarView, toolbarModel);

            IModalDialogBuilder modalDialogBuilder = new ModalDialogBuilder();

            IFileSelectionView     fileSelectionView  = new FileSelectionView();
            FileSelectionModel     fileSelectionModel = new FileSelectionModel();
            FileSelectionPresenter openFilePresenter  = new FileSelectionPresenter(fileSelectionView, fileSelectionModel);

            TextInputModel     textInputModel     = new TextInputModel(fileSelectionModel);
            TextInputPresenter textInputPresenter = new TextInputPresenter(textInputView, textInputModel);

            WordFrequencyCounter wordFrequencyCounter = new WordFrequencyCounter();
            WordCounterModel     wordCounterModel     = new WordCounterModel(wordFrequencyCounter);
            WordCounterPresenter wordCounterPresenter = new WordCounterPresenter(wordCounterView, wordCounterModel);

            RunButtonNavigator runButtonNavigator = new RunButtonNavigator(toolbarView, wordCounterModel);

            MainView      mainView      = new MainView(toolbarView, textInputView, wordCounterView, statusBarView);
            MainModel     mainModel     = new MainModel();
            MainPresenter mainPresenter = new MainPresenter(mainView, mainModel);

            AboutView      aboutView      = new AboutView();
            AboutModel     aboutModel     = new AboutModel();
            AboutPresenter aboutPresenter = new AboutPresenter(aboutView, aboutModel);

            RunButtonNavigator   navigation           = new RunButtonNavigator(toolbarView, wordCounterModel);
            AboutButtonNavigator aboutButtonNavigator = new AboutButtonNavigator(toolbarView, aboutView);
            TextSynchronizer     modelConnector       = new TextSynchronizer(wordCounterModel, textInputModel);

            IFileSelectionDisplay fileSelectionDisplay = new FileSelectionDisplay(fileSelectionModel);

            ILoadTextFromFile           loadTextFromFile            = new LoadTextFromFile(fileSelectionDisplay);
            LoadTextFromFileToTextInput loadTextFromFileToTextInput = new LoadTextFromFileToTextInput(loadTextFromFile, textInputModel);
            FileSelectionNavigator      openFileButtonNavigator     = new FileSelectionNavigator(toolbarView, loadTextFromFileToTextInput);

            TextInputLoader textInputLoader = new TextInputLoader(textInputModel, fileSelectionModel);

            /*
             * Wyświetlanie MsgBox
             * Obsługa błędów otwarcia pliku
             */

            return(mainPresenter);
        }
コード例 #8
0
ファイル: Program.cs プロジェクト: elyen3824/Gracenote
        private static Dictionary <string, int> GetWordFrequency()
        {
            IList <ICleaningLogic <string> > cleanings = new List <ICleaningLogic <string> > {
                new SpecialCharacterCleaning(),
                new ParenthesisCleaning(),
                new EndingPeriodCleaning(),
                new Minimizer()
            };

            IFrequencyCounter frequencyCounter = new WordFrequencyCounter(new WordParseLogic(new Cleaner(cleanings)), new SortWordByFrequencyDesc());

            return(frequencyCounter.Count(fileContent.Result));
        }
コード例 #9
0
        public void Give_Word_And_Their_Respective_Frequency()
        {
            //Given
            string fileContent = data.Result;
            IList <ICleaningLogic <string> > cleanings = new List <ICleaningLogic <string> > {
                new SpecialCharacterCleaning(),
                new ParenthesisCleaning(),
                new EndingPeriodCleaning(),
                new Minimizer()
            };

            //When
            IFrequencyCounter        frequencyCounter = new WordFrequencyCounter(new WordParseLogic(new Cleaner(cleanings)), new SortWordByFrequencyDesc());
            Dictionary <string, int> result           = frequencyCounter.Count(fileContent);

            //Then
            Assert.Equal("feat", result.FirstOrDefault().Key);
        }