コード例 #1
0
 def test_create_verb_does_not_raise_error_when_past_tense_not_the_same(
         self):
     first = Verb(value='hang', irregular_past='hung')
     second = Verb(value='hang', irregular_past='hanged')
     self.session.add(first)
     self.session.add(second)
     self.assertIsNone(self.session.commit())
コード例 #2
0
 def test_create_verb_raises_error_over_non_unique_values_when_irregular_past_is_empty_str(
         self):
     first = Verb(value='go', irregular_past='')
     second = Verb(value='go', irregular_past='')
     self.session.add(first)
     self.session.add(second)
     self.assertRaises(IntegrityError, self.session.commit)
コード例 #3
0
    def setUp(self):
        # TODO delete all but user
        super(TestWordList, self).setUp()
        self.with_ = Word(value='with', tag=Tag.PREPOSITION)
        self.away = Word(value='away', tag=Tag.PARTICLE)

        self.go = Verb(value='go', irregular_past='went')
        self.play = Verb(value='play')

        self.water = UncountableNoun(value='water')
        self.air = UncountableNoun(value='air')

        self.dog = CountableNoun(value='dog')
        self.child = CountableNoun(value='child', irregular_plural='children')

        self.joe = StaticNoun(value='Joe', is_plural=False)
        self.herbs = StaticNoun(value='Herbs', is_plural=True)

        self.words = [self.with_, self.away]
        self.verbs = [self.go, self.play]
        self.countable_nouns = [self.dog, self.child]
        self.uncountable_nouns = [self.water, self.air]
        self.static_nouns = [self.joe, self.herbs]

        self.test_teacher = Teacher(password='******', email='email')

        self.session.add(self.test_teacher)
        self.session.commit()
        self.session.add_all(
            chain(self.words, self.verbs, self.countable_nouns,
                  self.uncountable_nouns, self.static_nouns))
        self.session.commit()
コード例 #4
0
 def test_get_json(self):
     value = 'x'
     irregular_past = 'y'
     verb = Verb(value=value, irregular_past=irregular_past)
     self.session.add(verb)
     self.session.commit()
     expected = {
         'value': value,
         'irregular_past': irregular_past,
         'id': verb.id
     }
     self.assertEqual(expected, verb.get_json())
コード例 #5
0
 def test_create_verb_irregular_past_commit(self):
     verb = Verb(value='go', irregular_past='went')
     self.session.add(verb)
     self.session.commit()
     answer = self.session.query(Verb).first()
     self.assertEqual(answer, verb)
     self.assertIsInstance(verb.id, int)
コード例 #6
0
 def test_create_verb_no_irregular_past_commit(self):
     verb = Verb(value='play')
     self.session.add(verb)
     self.session.commit()
     answer = self.session.query(Verb).first()
     self.assertEqual(verb, answer)
     self.assertIsInstance(verb.id, int)
     self.assertEqual(verb.irregular_past, '')
コード例 #7
0
 def test_create_verb_no_irregular_past(self):
     verb = Verb(value='play', irregular_past='')
     self.assertEqual(verb.value, 'play')
     self.assertEqual(verb.irregular_past, '')
コード例 #8
0
 def test_create_verb_irregular_past(self):
     verb = Verb(value='go', irregular_past='went')
     self.assertEqual(verb.value, 'go')
     self.assertEqual(verb.irregular_past, 'went')
コード例 #9
0
 def test_create_verb_irregular_past_defaults_to_empty_str(self):
     verb = Verb(value='play')
     self.assertEqual(verb.irregular_past, '')
コード例 #10
0
"""
DataBaseSession = sessionmaker()


@contextmanager
def data_base_session_scope():
    session = DataBaseSession()
    try:
        yield session
    finally:
        session.close()


app_engine = create_engine(
    'postgresql+psycopg2://postgres:[email protected]/paragraph_generator')

DataBaseSession.configure(bind=app_engine)

Base.metadata.create_all(app_engine)

with data_base_session_scope() as a_session:
    print(a_session)
    go = Verb(value='go', irregular_past='went')
    play = Verb(value='play')
    stupid_go = Verb(value='go')
    a_session.add(go)
    a_session.commit()

with data_base_session_scope() as a_session:
    print(a_session.query(Verb).all())
コード例 #11
0
 def create_verb(self, value: str, irregular_past: str = '') -> dict:
     verb = Verb(value=value, irregular_past=irregular_past)
     return self._commit_and_get_json(verb)