コード例 #1
0
 def test_repr(self):
     ds = DraftService()
     assert repr(
         ds
     ) == '<DraftService: id=None, service_id=None, supplier_code=None, lot=None>'
     s = Supplier()
     assert repr(s) == '<Supplier: id=None, name=None>'
コード例 #2
0
def draft_service(request, app, supplier_framework):
    with app.app_context():
        supplier_id = Supplier.query.filter(
            Supplier.supplier_id == supplier_framework['supplierId']).first()
        framework = Framework.query.filter(
            Framework.slug == supplier_framework['frameworkSlug']).first()
        lot = Lot.query.filter(Lot.slug == 'digital-specialists').first()
        fl_query = {'framework_id': framework.id, 'lot_id': lot.id}
        fl = FrameworkLot(**fl_query)

        ds = DraftService(
            framework=framework,
            lot=lot,
            service_id="1234567890",
            supplier=supplier_id,
            data={},
            status='submitted',
            updated_at=datetime.now(),
            created_at=datetime.now(),
            lot_one_service_limit=lot.one_service_limit,
        )
        db.session.add(fl)
        db.session.add(ds)
        db.session.commit()

        def teardown():
            with app.app_context():
                FrameworkLot.query.filter(*[
                    getattr(FrameworkLot, k) == v for k, v in fl_query.items()
                ]).delete(synchronize_session=False)
                Service.query.filter(
                    Service.service_id == ds.service_id).delete(
                        synchronize_session=False)
                DraftService.query.filter(
                    DraftService.service_id == ds.service_id).delete(
                        synchronize_session=False)
                db.session.commit()

        request.addfinalizer(teardown)

        with mock.patch('app.models.main.url_for',
                        autospec=lambda i, **values: 'test.url/test'):
            Service.create_from_draft(ds, 'enabled')
            return ds.serialize()
コード例 #3
0
def draft_service(request, app, supplier_framework):
    with app.app_context():
        supplier_id = Supplier.query.filter(Supplier.supplier_id == supplier_framework['supplierId']).first()
        framework = Framework.query.filter(Framework.slug == supplier_framework['frameworkSlug']).first()
        lot = Lot.query.filter(Lot.slug == 'digital-specialists').first()
        fl_query = {
            'framework_id': framework.id,
            'lot_id': lot.id
        }
        fl = FrameworkLot(**fl_query)

        ds = DraftService(
            framework=framework,
            lot=lot,
            service_id="1234567890",
            supplier=supplier_id,
            data={},
            status='submitted',
            updated_at=datetime.now(),
            created_at=datetime.now()
        )
        db.session.add(fl)
        db.session.add(ds)
        db.session.commit()

        def teardown():
            with app.app_context():
                FrameworkLot.query.filter(
                    *[getattr(FrameworkLot, k) == v for k, v in fl_query.items()]
                ).delete(synchronize_session=False)
                Service.query.filter(Service.service_id == ds.service_id).delete(synchronize_session=False)
                DraftService.query.filter(DraftService.service_id == ds.service_id).delete(synchronize_session=False)
                db.session.commit()

        request.addfinalizer(teardown)

        with mock.patch('app.models.main.url_for', autospec=lambda i, **values: 'test.url/test'):
            Service.create_from_draft(ds, 'enabled')
            return ds.serialize()
コード例 #4
0
    def create_drafts(self, framework_id, supplier_id_count_pairs, status='not-submitted'):
        with self.app.app_context():
            for supplier_id, count in supplier_id_count_pairs:
                for ind in range(count):
                    db.session.add(
                        DraftService(
                            lot_id=1 + (ind % 4),
                            framework_id=framework_id,
                            supplier_id=supplier_id,
                            data={},
                            status=status
                        )
                    )

            db.session.commit()
コード例 #5
0
    def create_drafts(self, framework_id, supplier_id_count_pairs, status='not-submitted'):
        framework = Framework.query.get(framework_id)
        framework_lots = framework.lots
        for supplier_id, count in supplier_id_count_pairs:
            for ind in range(count):
                db.session.add(
                    DraftService(
                        lot=framework_lots[ind % 4],
                        framework_id=framework_id,
                        supplier_id=supplier_id,
                        data={},
                        status=status
                    )
                )

        db.session.commit()