示例#1
0
    def test_error_maker_preposition_errors_p_error_gte_one(self):
        sentences = [
            Sentence([
                Pronoun.I,
                Verb('go'),
                BasicWord.preposition('with'), Pronoun.HIM, Punctuation.PERIOD
            ]),
            Sentence([
                Pronoun.HE,
                Verb('run'),
                BasicWord.preposition('over'), Pronoun.IT, Punctuation.PERIOD
            ])
        ]
        paragraph = Paragraph(sentences)
        error_maker = ErrorMaker(paragraph)

        error_paragraph = error_maker.preposition_errors(1.0).get_paragraph()
        expected = [
            Sentence([
                Pronoun.I,
                BasicWord.preposition('with'), Pronoun.HIM,
                Verb('go'), Punctuation.PERIOD
            ]),
            Sentence([
                Pronoun.HE,
                BasicWord.preposition('over'), Pronoun.IT,
                Verb('run'), Punctuation.PERIOD
            ])
        ]
        self.assertEqual(error_paragraph.sentence_list(), expected)
示例#2
0
    def test_error_maker_order_of_errors_preposition_errors_affect_is_do_errors(
            self):
        sentences = [
            Sentence([
                CapitalPronoun.I,
                Verb('play'), Punctuation.PERIOD,
                BasicWord.preposition('with'), Pronoun.HIM
            ]),
            Sentence([
                Noun('dog').definite(),
                Verb('play').third_person(), Punctuation.PERIOD,
                BasicWord.preposition('with'), Pronoun.HIM
            ]),
        ]
        error_maker = ErrorMaker(Paragraph(sentences))

        is_do_preposition = error_maker.is_do_errors(1.0).preposition_errors(
            1.0).get_paragraph()
        expected_str = 'I with him am play. the dog with him is play.'
        self.assertEqual(str(is_do_preposition), expected_str)

        preposition_is_do = error_maker.preposition_errors(1.0).is_do_errors(
            1.0).get_paragraph()
        expected_str = 'I with him is play. the dog with him is play.'
        self.assertEqual(str(preposition_is_do), expected_str)
示例#3
0
    def test_error_maker_preposition_error_does_not_affect_others(self):
        sentences = [
            Sentence([
                Verb('a'),
                Noun('a'), BeVerb.AM, Pronoun.HIM, CapitalPronoun.ME,
                Punctuation.COMMA
            ])
        ]
        error_maker = ErrorMaker(Paragraph(sentences))

        error_paragraph = error_maker.preposition_errors(1.0).get_paragraph()
        self.assertEqual(error_paragraph.sentence_list(), sentences)
示例#4
0
    def test_error_maker_preposition_errors_p_error_lte_zero(self):
        sentences = [
            Sentence([
                Pronoun.I,
                Verb('go'),
                BasicWord.preposition('with'), Pronoun.HIM
            ]),
            Sentence([
                Pronoun.HE,
                Verb('run'),
                BasicWord.preposition('over'), Pronoun.IT
            ])
        ]
        paragraph = Paragraph(sentences)
        error_maker = ErrorMaker(paragraph)

        error_paragraph = error_maker.preposition_errors(0.0).get_paragraph()
        self.assertEqual(error_paragraph.sentence_list(), sentences)

        error_paragraph = error_maker.preposition_errors(-1.0).get_paragraph()
        self.assertEqual(error_paragraph.sentence_list(), sentences)
示例#5
0
    def test_error_maker_empty_paragraph(self):
        paragraph = Paragraph([])
        error_maker = ErrorMaker(paragraph)

        self.assertEqual(
            error_maker.noun_errors(1.0).get_paragraph().sentence_list(), [])
        self.assertEqual(
            error_maker.pronoun_errors(1.0).get_paragraph().sentence_list(),
            [])
        self.assertEqual(
            error_maker.verb_errors(1.0).get_paragraph().sentence_list(), [])
        self.assertEqual(
            error_maker.is_do_errors(1.0).get_paragraph().sentence_list(), [])
        self.assertEqual(
            error_maker.preposition_errors(
                1.0).get_paragraph().sentence_list(), [])
        self.assertEqual(
            error_maker.punctuation_errors(
                1.0).get_paragraph().sentence_list(), [])
示例#6
0
    def test_error_maker_preposition_errors_p_error_middle_value(self):
        random.seed(5812)
        sentences = [
            Sentence([Verb('go'),
                      BasicWord.preposition('with'), Pronoun.ME]),
            Sentence([
                Verb('go'),
                BasicWord.preposition('over'),
                BasicWord('there')
            ]),
            Sentence([Verb('go'),
                      BasicWord.preposition('into'), Pronoun.IT]),
            Sentence([
                Verb('go'),
                BasicWord.preposition('under'),
                BasicWord('that')
            ])
        ]
        paragraph = Paragraph(sentences)
        error_maker = ErrorMaker(paragraph)

        error_paragraph = error_maker.preposition_errors(0.5).get_paragraph()
        expected = [
            Sentence([Verb('go'),
                      BasicWord.preposition('with'), Pronoun.ME]),
            Sentence([
                BasicWord.preposition('over'),
                BasicWord('there'),
                Verb('go')
            ]),
            Sentence([BasicWord.preposition('into'), Pronoun.IT,
                      Verb('go')]),
            Sentence([
                Verb('go'),
                BasicWord.preposition('under'),
                BasicWord('that')
            ])
        ]
        self.assertEqual(error_paragraph.sentence_list(), expected)