コード例 #1
0
    def test_check_order_by(self, app):
        # When
        with pytest.raises(ApiErrors) as e:
            handle_rest_get_list(Stock, order_by='(SELECT * FROM "user")')

        # Then
        assert 'order_by' in e.value.errors
コード例 #2
0
ファイル: offerers.py プロジェクト: Soulou/pass-culture-api
def list_offerers():

    is_filtered_by_offerer_status = (request.args.get('validated') is not None)
    only_validated_offerers = parse_boolean_param_validated(request)

    query = Offerer.query

    if not current_user.isAdmin:
        query = query_filter_offerer_by_user(query)

    if is_filtered_by_offerer_status:
        if only_validated_offerers:
            query = query_filter_offerer_is_validated(query)
        else:
            query = query_filter_offerer_is_not_validated(query)

    keywords = request.args.get('keywords')
    if keywords is not None:
        query = filter_offerers_with_keywords_string(query.join(Venue),
                                                     keywords)

    offerers = query.all()

    for offerer in offerers:
        offerer.append_user_has_access_attribute(current_user)

    return handle_rest_get_list(Offerer,
                                query=query,
                                order_by=Offerer.name,
                                includes=OFFERER_INCLUDES,
                                paginate=10,
                                page=request.args.get('page'))
コード例 #3
0
    def test_return_only_not_soft_deleted_stock(self, app):
        # Given
        offerer = create_offerer()
        venue = create_venue(offerer)
        offer = create_offer_with_event_product(venue)
        event_occurrence = create_event_occurrence(offer)
        stock1 = create_stock_from_event_occurrence(event_occurrence)
        stock2 = create_stock_from_event_occurrence(event_occurrence)
        stock3 = create_stock_from_event_occurrence(event_occurrence)
        stock4 = create_stock_from_event_occurrence(event_occurrence)
        stock1.isSoftDeleted = True
        PcObject.save(stock1, stock2, stock3, stock4)

        # When
        request = handle_rest_get_list(Stock)

        # Then
        assert '"id":"{}"'.format(humanize(stock1.id)) not in str(
            request[0].response)
        assert '"id":"{}"'.format(humanize(stock2.id)) in str(
            request[0].response)
        assert '"id":"{}"'.format(humanize(stock3.id)) in str(
            request[0].response)
        assert '"id":"{}"'.format(humanize(stock4.id)) in str(
            request[0].response)
コード例 #4
0
def list_offerers():
    query = app.model.Offerer.query
    if not current_user.isAdmin:
        query = query.join(UserOfferer)\
                     .filter_by(user=current_user)
    return handle_rest_get_list(Offerer,
                                query=query,
                                include=OFFERERS_INCLUDES)
コード例 #5
0
ファイル: users.py プロジェクト: jimybot/music-pattern-flask
def get_users():

    query = User.query

    roles = request.args.get('roles', '').split(',')
    query = query.filter(
        and_(*[User.roles.any(Role.type == role) for role in roles]))

    search = request.args.get('search')
    if search is not None:
        query = query.filter(get_search_filter([User], search))

    return handle_rest_get_list(User,
                                include=USER_INCLUDES,
                                query=query,
                                page=request.args.get('page'),
                                paginate=10,
                                order_by='id desc')
コード例 #6
0
def list_offers():
    offerer_id = dehumanize(request.args.get('offererId'))
    venue_id = dehumanize(request.args.get('venueId'))
    venue = venue_queries.find_by_id(venue_id)

    check_venue_exists_when_requested(venue, venue_id)
    check_user_has_rights_for_query(offerer_id, venue, venue_id)

    query = find_offers_with_filter_parameters(
        current_user,
        offerer_id=offerer_id,
        venue_id=venue_id,
        keywords_string=request.args.get('keywords'))

    return handle_rest_get_list(Offer,
                                query=query,
                                order_by='offer.id desc',
                                includes=OFFER_INCLUDES,
                                paginate=10,
                                page=request.args.get('page'))
コード例 #7
0
def list_activation_offers():
    departement_code = current_user.departementCode
    query = find_activation_offers(departement_code)

    return handle_rest_get_list(Offer, query=query, includes=OFFER_INCLUDES)
コード例 #8
0
def list_event_occurences():
    return handle_rest_get_list(app.model.EventOccurence)
コード例 #9
0
ファイル: offers.py プロジェクト: SchawnnDev/pass-culture-api
def list_offers():
    return handle_rest_get_list(Offer,
                                query=make_offer_query(),
                                include=OFFERS_INCLUDES,
                                paginate=50)
コード例 #10
0
def list_venues():
    return handle_rest_get_list(app.model.Venue)
コード例 #11
0
ファイル: stocks.py プロジェクト: Soulou/pass-culture-api
def list_stocks():
    filters = request.args.copy()
    return handle_rest_get_list(Stock,
                                query=find_stocks_with_possible_filters(
                                    filters, current_user),
                                paginate=50)
コード例 #12
0
def list_things():
    return handle_rest_get_list(Thing)