public void TestMethodUseTwoExtremisstText()
        {
            ExtremistTextVocabulary vocabulary = new ExtremistTextVocabulary();
            Text textAnalize = new Text("Известный американский ученый Девид Лейн, который высказал бессмертные 14 слов, " +
                                        "про одно из них считал, что пропитанная семитизмом религия, которая противоречит законам природы естественного отбора, " +
                                        "одурманивает мозг человека. Данная машина либеральной пропаганды, прикидывающаяся нашей властью и религией, " +
                                        "мешает строить наше и наших родных будущее.");
            ExtremistAnalysisText analysisText = new ExtremistAnalysisText(textAnalize);
            List <AvailabilityExtremistTextResult> listresult = new List <AvailabilityExtremistTextResult>();

            listresult.Add(new AvailabilityExtremistTextResult(60, vocabulary.texts[1], new List <int>()
            {
                233, 306
            }, new List <int>()
            {
                294, 326
            }));
            listresult.Add(new AvailabilityExtremistTextResult(66.67, vocabulary.texts[2], new List <int>()
            {
                58, 83, 107, 147
            }, new List <int>()
            {
                79, 95, 139, 176
            }));
            List <AvailabilityExtremistTextResult> list = analysisText.AvailabilityExtremistText(vocabulary);

            CollectionAssert.AreEqual(listresult, list);
        }
        public void TestMethodEmptyInput()
        {
            ExtremistTextVocabulary vocabulary = new ExtremistTextVocabulary();
            Text textAnalize = new Text("");
            ExtremistAnalysisText analysisText = new ExtremistAnalysisText(textAnalize);
            List <AvailabilityExtremistTextResult> listresult = new List <AvailabilityExtremistTextResult>();
            List <AvailabilityExtremistTextResult> list       = analysisText.AvailabilityExtremistText(vocabulary);

            CollectionAssert.AreEqual(listresult, list);
        }
        public void TestMethodNeutralText()
        {
            ExtremistPhraseVocabulary vocabulary = new ExtremistPhraseVocabulary();
            Text textAnalize = new Text("Человек и природа неразделимы. Мы неразрывно связаны с окружающим нас животным и растительным миром и в немалой степени зависим от него.");
            ExtremistAnalysisText analysisText            = new ExtremistAnalysisText(textAnalize);
            AvailabilityExtremistPhrasesResult testResult = new AvailabilityExtremistPhrasesResult(new double[] { 0, 0, 0, 0 },
                                                                                                   new List <int>(), new List <int>());
            AvailabilityExtremistPhrasesResult test = analysisText.AvailabilityExtremistPhrases(vocabulary);

            Assert.AreEqual(testResult, test);
        }
        public void TestMethodEmptyInput()
        {
            ExtremistPhraseVocabulary vocabulary = new ExtremistPhraseVocabulary();
            Text textAnalize = new Text("");
            ExtremistAnalysisText analysisText            = new ExtremistAnalysisText(textAnalize);
            AvailabilityExtremistPhrasesResult testResult = new AvailabilityExtremistPhrasesResult(new double[] { 0, 0, 0, 0 },
                                                                                                   new List <int>(), new List <int>());
            AvailabilityExtremistPhrasesResult test = analysisText.AvailabilityExtremistPhrases(vocabulary);

            Assert.AreEqual(testResult, test);
        }
        public void TestMethodNeutralText()
        {
            ExtremistTextVocabulary vocabulary = new ExtremistTextVocabulary();
            Text textAnalize = new Text("Верность, доверие, любовь, уважение, поддержка – основные понятия," +
                                        " из которых складывается большинство вечных человеческих ценностей." +
                                        " Но даже в таком, казалось бы, достаточно неоспоримом вопросе," +
                                        " в зависимости от условий и сложившихся обстоятельств могут возникнуть определенные противоречия.");
            ExtremistAnalysisText analysisText = new ExtremistAnalysisText(textAnalize);
            List <AvailabilityExtremistTextResult> listresult = new List <AvailabilityExtremistTextResult>();
            List <AvailabilityExtremistTextResult> list       = analysisText.AvailabilityExtremistText(vocabulary);

            CollectionAssert.AreEqual(listresult, list);
        }
        public void TestMethodNationalText()
        {
            ExtremistPhraseVocabulary vocabulary = new ExtremistPhraseVocabulary();
            Text textAnalize = new Text("Лично меня очень обижает, когда меня называют 'хохол'. Будучи русским в четвертом поколении, я слово 'хохол', сказанное в свой адрес, воспринимаю как оскорбление.");
            ExtremistAnalysisText analysisText            = new ExtremistAnalysisText(textAnalize);
            AvailabilityExtremistPhrasesResult testResult = new AvailabilityExtremistPhrasesResult(new double[] { 0, 0, 100, 0 },
                                                                                                   new List <int>()
            {
                45, 100
            }, new List <int>()
            {
                54, 109
            });
            AvailabilityExtremistPhrasesResult test = analysisText.AvailabilityExtremistPhrases(vocabulary);

            Assert.AreEqual(testResult, test);
        }
        public void TestMethodReligiousAndNationalText()
        {
            ExtremistPhraseVocabulary vocabulary = new ExtremistPhraseVocabulary();
            Text textAnalize = new Text("По словам бывшего раввина Израиля, пропитанная семитизмом религия ... Наша чаша терпения переполнена, несмотря на то, что она чрезвычайно глубока.");
            ExtremistAnalysisText analysisText            = new ExtremistAnalysisText(textAnalize);
            AvailabilityExtremistPhrasesResult testResult = new AvailabilityExtremistPhrasesResult(new double[] { 0, 50, 50, 0 },
                                                                                                   new List <int>()
            {
                34, 46
            }, new List <int>()
            {
                65, 57
            });
            AvailabilityExtremistPhrasesResult test = analysisText.AvailabilityExtremistPhrases(vocabulary);

            Assert.AreEqual(testResult, test);
        }
        public void TestMethodUseOneExtremisstTextIncompleteMatch()
        {
            ExtremistTextVocabulary vocabulary = new ExtremistTextVocabulary();
            Text textAnalize = new Text("Данная машина либеральной пропаганды, которая прикидывается нашей властью, ненавидит нас и препятствует строить будущее наших родных и близких!!!");
            ExtremistAnalysisText analysisText = new ExtremistAnalysisText(textAnalize);
            List <AvailabilityExtremistTextResult> listresult = new List <AvailabilityExtremistTextResult>();

            listresult.Add(new AvailabilityExtremistTextResult(73.33, vocabulary.texts[1], new List <int>()
            {
                6, 45, 111
            }, new List <int>()
            {
                37, 74, 145
            }));
            List <AvailabilityExtremistTextResult> list = analysisText.AvailabilityExtremistText(vocabulary);

            CollectionAssert.AreEqual(listresult, list);
        }
        public void TestMethodUseOneExtremisstTextCompleteCoincidence()
        {
            ExtremistTextVocabulary vocabulary = new ExtremistTextVocabulary();
            Text textAnalize = new Text("Девид Лейн – известен за бессмертных 14 слов. Одно из них он выделил пропитанную семитизмом религию, противоречащая законам природы");
            ExtremistAnalysisText analysisText = new ExtremistAnalysisText(textAnalize);
            List <AvailabilityExtremistTextResult> listresult = new List <AvailabilityExtremistTextResult>();

            listresult.Add(new AvailabilityExtremistTextResult(100, vocabulary.texts[2], new List <int>()
            {
                0
            }, new List <int>()
            {
                131
            }));
            List <AvailabilityExtremistTextResult> list = analysisText.AvailabilityExtremistText(vocabulary);

            CollectionAssert.AreEqual(listresult, list);
        }
        public void TestMethodSocialText()
        {
            ExtremistPhraseVocabulary vocabulary = new ExtremistPhraseVocabulary();
            Text textAnalize = new Text("'Их даже можно приручить и кормить с руки', - говорит потенциальный крокодиловый магнат." +
                                        " В еде кайманы тоже не особо притязательны - для нормальной полноценной жизни им хватает одного кормления в неделю.");
            ExtremistAnalysisText analysisText            = new ExtremistAnalysisText(textAnalize);
            AvailabilityExtremistPhrasesResult testResult = new AvailabilityExtremistPhrasesResult(new double[] { 0, 0, 0, 100 },
                                                                                                   new List <int>()
            {
                67
            }, new List <int>()
            {
                88
            });
            AvailabilityExtremistPhrasesResult test = analysisText.AvailabilityExtremistPhrases(vocabulary);

            Assert.AreEqual(testResult, test);
        }
        public void TestMethodPoliticalText()
        {
            ExtremistPhraseVocabulary vocabulary = new ExtremistPhraseVocabulary();
            Text textAnalize = new Text("Либеральная пропаганда – это мутировавшая логико-риторическая субстанция, " +
                                        "образовавшаеся в результате слияния социал-демократических ценностей с практикой фашизма. Но, мы стоим перед фактом: наша власть завела страну в тупик.");
            ExtremistAnalysisText analysisText            = new ExtremistAnalysisText(textAnalize);
            AvailabilityExtremistPhrasesResult testResult = new AvailabilityExtremistPhrasesResult(new double[] { 100, 0, 0, 0 },
                                                                                                   new List <int>()
            {
                0, 190
            }, new List <int>()
            {
                22, 202
            });
            AvailabilityExtremistPhrasesResult test = analysisText.AvailabilityExtremistPhrases(vocabulary);

            Assert.AreEqual(testResult, test);
        }
        public void TestMethodAllTypeExtremistText()
        {
            ExtremistPhraseVocabulary vocabulary = new ExtremistPhraseVocabulary();
            Text textAnalize = new Text("Наша власть завела страну в тупик..." +
                                        "По словам бывшего раввина Израиля, пропитанная семитизмом религия ..." +
                                        "...крокодиловый магнат.");
            ExtremistAnalysisText analysisText            = new ExtremistAnalysisText(textAnalize);
            AvailabilityExtremistPhrasesResult testResult = new AvailabilityExtremistPhrasesResult(new double[] { 25, 25, 25, 25 },
                                                                                                   new List <int>()
            {
                0, 70, 82, 101
            }, new List <int>()
            {
                11, 101, 93, 128
            });
            AvailabilityExtremistPhrasesResult test = analysisText.AvailabilityExtremistPhrases(vocabulary);

            Assert.AreEqual(testResult, test);
        }