コード例 #1
0
ファイル: fixtures.py プロジェクト: yamila-moreno/api-example
def load_fixtures():
    session_manager.create_session()

    _load_users_fixtures()

    session_manager.commit_session()
    session_manager.close_session()
コード例 #2
0
ファイル: fixtures.py プロジェクト: JaakkoTulkki/api-example
def load_fixtures():
    session_manager.create_session()

    _load_users_fixtures()

    _create_stocks_with_data()

    session_manager.commit_session()
    session_manager.close_session()
コード例 #3
0
    def wrapper(request, *args, **kwargs):
        session_manager.create_session()
        try:
            response = func(request, *args, **kwargs)
            session_manager.commit_session()
        except:
            session_manager.rollback_session()
            raise
        finally:
            session_manager.close_session()

        return response
コード例 #4
0
ファイル: fixtures.py プロジェクト: JaakkoTulkki/api-example
def _create_stocks_with_data():
    for e in range(20):
        stock = StockTable()
        stock.ticker = "".join(random.choice(string.ascii_lowercase) for i in range(4))
        stock.name = "".join(random.choice(string.ascii_uppercase) for i in range(12))
        stock.number_of_stocks = random.randint(100, 1000)

        financial = FinancialDataTable()
        financial.profit = random.randint(-10, 10000)
        financial.book_value = random.randint(100, 10000)
        financial.dividend = random.randint(33, 66)/100*(financial.profit / stock.number_of_stocks)
        financial.market_value = financial.profit * random.randint(3, 25)
        if financial.market_value < 0:
            financial.market_value * -1

        stock.financial = financial

        sm.session.add(stock, financial)
        sm.commit_session()
コード例 #5
0
def test_create_books_with_tags():
    author = create_author(**DATA)
    book = create_book(author=author, title="My Little Pony")
    assert isinstance(book, BookTable)

    assert book.author is author
    assert book.title == "My Little Pony"

    book_in_db = sm.session.query(BookTable).filter_by(title="My Little Pony").first()
    assert book_in_db is book

    # create another book
    second_book = create_book(author=author, title="Chicken in the farm")

    assert len(author.books) == 2
    assert author.books[0] is book
    assert author.books[1] is second_book

    # time to create tags for the book
    t, tag = create_tag(tag="romance")
    tag.books.append(book)
    tag.books.append(second_book)
    sm.session.add(tag)
    sm.commit_session()

    tag = sm.session.query(TagTable).filter_by(tag="romance").first()
    assert len(tag.books) == 2
    assert book in tag.books

    # create another tag
    t, second_tag = create_tag(tag="horror")
    second_tag.books.append(book)
    sm.session.add(second_tag)
    sm.commit_session()

    book = sm.session.query(BookTable).filter_by(title=book.title).first()
    assert len(book.tags) == 2
    assert sorted([t.tag for t in book.tags]) == ['horror', 'romance']
コード例 #6
0
def test_create_author_entity():
    data ={
        'first_name': "Ernest",
        'last_name': 'Hemingway',
    }

    author = create_author(**data)
    assert(author.first_name == data['first_name'])
    assert(author.id == 1)

    ernest = sm.session.query(AuthorTable).filter_by(first_name=data['first_name']).first()
    assert(ernest.first_name == data['first_name'])
    assert author is ernest

    # add birthday
    bday = datetime.date(year=1900, day=2, month=7)
    ernest.birth_date = bday
    death_day = datetime.date(1959, day=30, month=8)
    ernest.date_of_death = death_day
    sm.commit_session()

    ernest = sm.session.query(AuthorTable).filter_by(first_name=data['first_name']).first()
    assert ernest.birth_date == bday
    assert ernest.date_of_death != bday
コード例 #7
0
ファイル: conftest.py プロジェクト: JaakkoTulkki/api-example
 def end_session():
     session_manager.commit_session()
     session_manager.close_session()