예제 #1
0
    def setUpClass(cls):
        super(CommonCase, cls).setUpClass()
        collection = _PseudoCollection("base.rest.demo.private.services",
                                       cls.env)
        cls.private_services_env = WorkContext(
            model_name="rest.service.registration", collection=collection)

        collection = _PseudoCollection("base.rest.demo.public.services",
                                       cls.env)
        cls.public_services_env = WorkContext(
            model_name="rest.service.registration", collection=collection)
예제 #2
0
 def work_on_services(self, **params):
     params = params or {}
     if 'shopinvader_backend' not in params:
         params['shopinvader_backend'] = self.backend
     if 'shopinvader_session' not in params:
         params['shopinvader_session'] = {}
     collection = _PseudoCollection('shopinvader.backend',  self.env)
     yield WorkContext(model_name='rest.service.registration',
                       collection=collection, **params)
예제 #3
0
    def test_public_service(self):
        collection = _PseudoCollection("emc.services", self.env)
        emc_services_env = WorkContext(model_name="rest.service.registration",
                                       collection=collection)

        service = emc_services_env.component(usage="ping")
        result = service.test()

        self.assertTrue("message" in result)
 def setUp(self, *args, **kwargs):
     super(TestTask, self).setUp(*args, **kwargs)
     self.env.user.image = self._get_image('partner-support-image.png')
     self.project = self.env.ref('project_api.project_project_1')
     self.partner = self.env.ref('project_api.partner_customer_help_desk')
     self.partner.help_desk_project_id = self.project
     collection = _PseudoCollection('project.project', self.env)
     self.work = WorkContext(model_name='rest.service.registration',
                             collection=collection,
                             partner=self.partner)
예제 #5
0
 def work_on_services(self, **params):
     params = params or {}
     if "shopinvader_backend" not in params:
         params["shopinvader_backend"] = self.backend
     if "shopinvader_session" not in params:
         params["shopinvader_session"] = {}
     collection = _PseudoCollection("shopinvader.backend", self.env)
     yield WorkContext(model_name="rest.service.registration",
                       collection=collection,
                       **params)
 def setUp(self):
     res = super().setUp()
     collection = _PseudoCollection("emc.services", self.env)
     emc_services_env = WorkContext(model_name="rest.service.registration",
                                    collection=collection)
     self.ap_service = emc_services_env.component(usage="payment")
     self.ai_service = emc_services_env.component(usage="invoice")
     self.demo_request_1 = self.browse_ref(
         "easy_my_coop.subscription_request_1_demo")
     return res
예제 #7
0
    def setUp(self):
        res = super().setUp()
        collection = _PseudoCollection("emc.services", self.env)
        emc_services_env = WorkContext(model_name="rest.service.registration",
                                       collection=collection)
        self.ai_service = emc_services_env.component(usage="invoice")

        self.share_type_A = self.browse_ref(
            "easy_my_coop.product_template_share_type_1_demo")
        self._capital_release_create()

        today = Date.to_string(Date.today())
        self.demo_invoice_dict = {
            "id":
            1,
            "name":
            "Capital Release Example",
            "partner": {
                "id": 1,
                "name": "Catherine des Champs"
            },
            "account": {
                "id": 1,
                "name": "Cooperators"
            },
            "journal": {
                "id": 1,
                "name": "Subscription Journal"
            },
            "subscription_request": {},
            "state":
            "open",
            "date":
            today,
            "date_invoice":
            today,
            "date_due":
            today,
            "type":
            "out_invoice",
            "invoice_lines": [{
                "name": "Share Type A",
                "product": {
                    "id": 1,
                    "name": "Part A - Founder"
                },
                "price_unit": 100.0,
                "quantity": 2.0,
                "account": {
                    "id": 2,
                    "name": "Equity"
                },
            }],
        }
        return res
예제 #8
0
 def work_on_services(cls, **params):
     params = params or {}
     if "shopinvader_backend" not in params:
         params["shopinvader_backend"] = cls.backend
     if "shopinvader_session" not in params:
         params["shopinvader_session"] = {}
     if not params.get("partner_user") and params.get("partner"):
         params["partner_user"] = params["partner"]
     collection = _PseudoCollection("shopinvader.backend", cls.env)
     yield WorkContext(model_name="rest.service.registration",
                       collection=collection,
                       **params)
예제 #9
0
 def setUp(self):
     super().setUp()
     # As the env.user is superuser anyways for our controllers,
     # for now we neglect it for tests
     superuser = self.env["res.users"].browse([SUPERUSER_ID])
     self.env = self.env(user=superuser)
     self.cr = self.env.cr
     self.api_key = "ASecureKeyEbay"
     collection = _PseudoCollection("sale.import.rest.services", self.env)
     self.sale_import_service_env = WorkContext(model_name="sale.order",
                                                collection=collection)
     self.service = self.sale_import_service_env.component(usage="sale")
     self.api_key = "ASecureKeyEbay"
예제 #10
0
 def _confirm_and_invalidate_session(self, sale_order):
     shopinvader_backend = sale_order.shopinvader_backend_id
     if not shopinvader_backend:
         return
     sale_order.action_confirm_cart()
     response = shopinvader_response.get()
     response.set_session("cart_id", 0)
     response.set_store_cache("cart", {})
     # TODO we should not have to return the last_sale information into the
     # response, only the id...
     # This code is an awful hack... We should never have to call
     # a service implementation from here. That should be the responsibility
     # of the client to request the cart info to store into ist cache once
     # once the cache is reset
     collection = _PseudoCollection("shopinvader.backend", self.env)
     work = self.work.work_on(collection=collection)
     setattr(work, "shopinvader_backend", shopinvader_backend)
     res = work.component(usage="cart")._to_json(sale_order)
     response.set_store_cache("last_sale", res.get("data", {}))
    def setUp(self):
        super().setUp()
        collection = _PseudoCollection("emc.services", self.env)
        emc_services_env = WorkContext(model_name="rest.service.registration",
                                       collection=collection)

        self.sr_service = emc_services_env.component(
            usage="subscription-request")

        self.demo_request_1 = self.browse_ref(
            "easy_my_coop.subscription_request_1_demo")
        self.demo_request_2 = self.browse_ref(
            "easy_my_coop.subscription_request_waiting_demo")
        self.demo_share_product = (
            self.demo_request_1.share_product_id.product_tmpl_id)

        date = Date.to_string(self.demo_request_1.date)
        self.demo_request_1_dict = {
            "id": self.demo_request_1.get_api_external_id(),
            "name": "Manuel Dublues",
            "email": "*****@*****.**",
            "date": date,
            "state": "draft",
            "ordered_parts": 3,
            "share_product": {
                "id": self.demo_share_product.get_api_external_id(),
                "name": self.demo_share_product.name,
            },
            "address": {
                "street": "schaerbeekstraat",
                "zip_code": "1111",
                "city": "Brussels",
                "country": "BE",
            },
            "lang": "en_US",
            "capital_release_request": [],
        }
예제 #12
0
def work_on_service(env, **params):
    """Work on a shopinvader service."""
    collection = _PseudoCollection("shopinvader.backend", env)
    yield WorkContext(model_name="rest.service.registration",
                      collection=collection,
                      **params)
예제 #13
0
 def _get_service(self, usage):
     collection = _PseudoCollection("res.partner", self.env)
     work = WorkContext(
         model_name="rest.service.registration", collection=collection
     )
     return work.component(usage=usage)