From 023e7a86ad0c599ce9e2d51141b066aef88aedd8 Mon Sep 17 00:00:00 2001 From: Nicolas Baccelli Date: Fri, 16 Jul 2021 15:21:19 +0200 Subject: [PATCH] Cleanup code and update acceptsale version --- scripts/bumpversion.py | 1 - shiba/__init__.py | 2 +- shiba/accountingmanagement.py | 2 -- shiba/compat.py | 2 +- shiba/inventorymanagement.py | 2 -- shiba/marketplacemanagement.py | 2 -- shiba/salesmanagement.py | 5 ++--- shiba/shibaconnection.py | 4 +--- shiba/shibaexceptions.py | 2 -- shiba/shibaresponseobject.py | 2 -- shiba/shibatools.py | 2 -- tests/offline/Assets/sample_accept_sale.xml | 24 ++++++++++++++------- tests/offline/__init__.py | 1 - tests/offline/test_accountingmanagement.py | 2 -- tests/offline/test_inventorymanagement.py | 2 -- tests/offline/test_marketplacemanagement.py | 2 -- tests/offline/test_salesmanagement.py | 6 +++--- tests/offline/test_shibatools.py | 2 -- tests/online/__init__.py | 2 -- tests/online/conftest.py | 2 -- tests/online/test_accountingmanagement.py | 2 -- tests/online/test_inventorymanagement.py | 2 -- tests/online/test_marketplacemanagement.py | 3 --- tests/online/test_salesmanagement.py | 5 ++--- tests/online/test_shibatools.py | 2 -- 25 files changed, 26 insertions(+), 57 deletions(-) diff --git a/scripts/bumpversion.py b/scripts/bumpversion.py index 7c7d3c5..a2619af 100755 --- a/scripts/bumpversion.py +++ b/scripts/bumpversion.py @@ -1,6 +1,5 @@ #!/usr/bin/env python # coding: utf-8 -from __future__ import unicode_literals, print_function import sys import os import re diff --git a/shiba/__init__.py b/shiba/__init__.py index f00743c..1091dc1 100644 --- a/shiba/__init__.py +++ b/shiba/__init__.py @@ -1,2 +1,2 @@ -__version__ = "1.1.12" +__version__ = "1.2.0" VERSION = __version__ diff --git a/shiba/accountingmanagement.py b/shiba/accountingmanagement.py index cf68180..82f3c2e 100644 --- a/shiba/accountingmanagement.py +++ b/shiba/accountingmanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from datetime import date from .shibaconnection import ShibaConnection diff --git a/shiba/compat.py b/shiba/compat.py index 4aaa787..3427df0 100644 --- a/shiba/compat.py +++ b/shiba/compat.py @@ -54,7 +54,7 @@ def reraise(tp, value, tb=None): def is_bytes(x): return isinstance(x, (bytes, memoryview, bytearray)) - from collections import Callable + from collections.abc import Callable def callable(obj): return isinstance(obj, Callable) diff --git a/shiba/inventorymanagement.py b/shiba/inventorymanagement.py index 9fcb24e..14f4b20 100644 --- a/shiba/inventorymanagement.py +++ b/shiba/inventorymanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from .shibaconnection import ShibaConnection from .shibaexceptions import ShibaCallingError from .shibatools import ( diff --git a/shiba/marketplacemanagement.py b/shiba/marketplacemanagement.py index 577f03b..8466455 100644 --- a/shiba/marketplacemanagement.py +++ b/shiba/marketplacemanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from .shibaconnection import ShibaConnection from .shibatools import inf_constructor, url_constructor, retrieve_obj_from_url from .compat import basestring diff --git a/shiba/salesmanagement.py b/shiba/salesmanagement.py index b801f78..813dfe4 100644 --- a/shiba/salesmanagement.py +++ b/shiba/salesmanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from datetime import date from .shibaconnection import ShibaConnection @@ -26,10 +24,11 @@ def get_new_sales(self): obj = retrieve_obj_from_url(url) return obj - def accept_sale(self, itemid): + def accept_sale(self, itemid, shippingfromcountry): """Accept the "itemid" sale. :param itemid: string for item ID + :param shippingfromcountry: string ISO code for country """ inf = inf_constructor(self.connection, "acceptsale", **locals()) url = url_constructor(self.connection, inf) diff --git a/shiba/shibaconnection.py b/shiba/shibaconnection.py index 8b1b1d4..b265e13 100644 --- a/shiba/shibaconnection.py +++ b/shiba/shibaconnection.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - class ShibaConnection(object): """The main Shiba class, standing as an initialization and mandatory for each submodules instancing. @@ -76,7 +74,7 @@ def __init__(self, login, pwd, sandbox=False): }, "acceptsale": { "cat": "sales_ws", - "version": "2010-09-20", + "version": "2021-04-08", "login": self.login, "pwd": self.pwd, }, diff --git a/shiba/shibaexceptions.py b/shiba/shibaexceptions.py index f8a1fda..bb9e550 100644 --- a/shiba/shibaexceptions.py +++ b/shiba/shibaexceptions.py @@ -1,7 +1,5 @@ # -*- coding: utf-8 -*- """ Those exception classes will usually be raised after an error returned from the WebServices.""" -from __future__ import unicode_literals - class ShibaException(Exception): """Main exception class, as you can catch the whole of Shiba exceptions from it""" diff --git a/shiba/shibaresponseobject.py b/shiba/shibaresponseobject.py index 5911d35..173a72d 100644 --- a/shiba/shibaresponseobject.py +++ b/shiba/shibaresponseobject.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - class ShibaResponseObject(object): """This class gathers all content from the returned XML. Separating the namespace for further usage and the actual diff --git a/shiba/shibatools.py b/shiba/shibatools.py index 8fb6064..b1a032b 100644 --- a/shiba/shibatools.py +++ b/shiba/shibatools.py @@ -1,7 +1,5 @@ # -*- coding: utf-8 -*- """ Tools used by Shiba data retrieving classes""" -from __future__ import unicode_literals - import re from collections import OrderedDict diff --git a/tests/offline/Assets/sample_accept_sale.xml b/tests/offline/Assets/sample_accept_sale.xml index 500b723..f0fc2ca 100644 --- a/tests/offline/Assets/sample_accept_sale.xml +++ b/tests/offline/Assets/sample_accept_sale.xml @@ -1,11 +1,19 @@ - - - vendeur - 2010-09-20 - 1046920728 + + + 2021-04-08 + uuyu + 589871029 + 156 + 56 - 2010-09-20 - Refused + 2021-04-08 + Accepted + 156 + 56 + + myOSSType + myOSSValue + - \ No newline at end of file + diff --git a/tests/offline/__init__.py b/tests/offline/__init__.py index f8e0572..efab47f 100644 --- a/tests/offline/__init__.py +++ b/tests/offline/__init__.py @@ -1,5 +1,4 @@ # coding: utf-8 -from __future__ import unicode_literals, print_function import os import pytest diff --git a/tests/offline/test_accountingmanagement.py b/tests/offline/test_accountingmanagement.py index 1b1ce57..3a33d3f 100644 --- a/tests/offline/test_accountingmanagement.py +++ b/tests/offline/test_accountingmanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from shiba.accountingmanagement import AccountingManagement from shiba.shibaconnection import ShibaConnection diff --git a/tests/offline/test_inventorymanagement.py b/tests/offline/test_inventorymanagement.py index 996dde7..dc81f48 100644 --- a/tests/offline/test_inventorymanagement.py +++ b/tests/offline/test_inventorymanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - import os.path as op from shiba.inventorymanagement import InventoryManagement from shiba.shibaconnection import ShibaConnection diff --git a/tests/offline/test_marketplacemanagement.py b/tests/offline/test_marketplacemanagement.py index 0670ae3..e6d507b 100644 --- a/tests/offline/test_marketplacemanagement.py +++ b/tests/offline/test_marketplacemanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from shiba.marketplacemanagement import MarketplaceManagement from shiba.shibaconnection import ShibaConnection diff --git a/tests/offline/test_salesmanagement.py b/tests/offline/test_salesmanagement.py index 25a4907..1eac575 100644 --- a/tests/offline/test_salesmanagement.py +++ b/tests/offline/test_salesmanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from shiba.salesmanagement import SalesManagement from shiba.shibaconnection import ShibaConnection from shiba.shibaexceptions import ( @@ -34,9 +32,10 @@ def test_accept_sale(monkeypatch): ShibaConnection("test", "test", "https://ws.fr.shopping.rakuten.com") ) itemid = "000000" + shippingfromcountry = "CN" obj = None try: - obj = sales_management.accept_sale(itemid) + obj = sales_management.accept_sale(itemid, shippingfromcountry) except ShibaServiceError: pass except ShibaParameterError: @@ -44,6 +43,7 @@ def test_accept_sale(monkeypatch): assert obj is not None + def test_refuse_sale(monkeypatch): """Only fail result, as refusing an actual sale is not simulable""" monkeypatch.setattr( diff --git a/tests/offline/test_shibatools.py b/tests/offline/test_shibatools.py index 5146730..c58066b 100644 --- a/tests/offline/test_shibatools.py +++ b/tests/offline/test_shibatools.py @@ -1,7 +1,5 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -from __future__ import unicode_literals - import os.path as op import xmltodict diff --git a/tests/online/__init__.py b/tests/online/__init__.py index 36417c2..59b1a83 100644 --- a/tests/online/__init__.py +++ b/tests/online/__init__.py @@ -1,6 +1,4 @@ # coding: utf-8 -from __future__ import unicode_literals, print_function - import pytest from contextlib import contextmanager diff --git a/tests/online/conftest.py b/tests/online/conftest.py index 0201312..efa595d 100644 --- a/tests/online/conftest.py +++ b/tests/online/conftest.py @@ -1,6 +1,4 @@ # coding: utf-8 -from __future__ import unicode_literals, print_function - import os import pytest diff --git a/tests/online/test_accountingmanagement.py b/tests/online/test_accountingmanagement.py index 67be771..c3db3b1 100644 --- a/tests/online/test_accountingmanagement.py +++ b/tests/online/test_accountingmanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from shiba.accountingmanagement import AccountingManagement from shiba.shibaexceptions import ShibaParameterError diff --git a/tests/online/test_inventorymanagement.py b/tests/online/test_inventorymanagement.py index bb3719a..d62612a 100644 --- a/tests/online/test_inventorymanagement.py +++ b/tests/online/test_inventorymanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from shiba.shibaexceptions import ShibaRightsError from shiba.inventorymanagement import InventoryManagement diff --git a/tests/online/test_marketplacemanagement.py b/tests/online/test_marketplacemanagement.py index 2be7918..5f7b6b2 100644 --- a/tests/online/test_marketplacemanagement.py +++ b/tests/online/test_marketplacemanagement.py @@ -1,6 +1,3 @@ -#!/usr/bin/env python -from __future__ import unicode_literals - from shiba.marketplacemanagement import MarketplaceManagement from shiba.shibaexceptions import * diff --git a/tests/online/test_salesmanagement.py b/tests/online/test_salesmanagement.py index 319ff35..c926455 100644 --- a/tests/online/test_salesmanagement.py +++ b/tests/online/test_salesmanagement.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from shiba.salesmanagement import SalesManagement from shiba.shibaexceptions import * @@ -16,9 +14,10 @@ def test_accept_sale(connection): """Only fail result, as accepting an actual sale is not simulable""" sales_management = SalesManagement(connection) itemid = "000000" + shippingfromcountry = "CN" obj = None try: - obj = sales_management.accept_sale(itemid) + obj = sales_management.accept_sale(itemid, shippingfromcountry) except ShibaServiceError: pass except ShibaParameterError: diff --git a/tests/online/test_shibatools.py b/tests/online/test_shibatools.py index 229e2b3..80c7778 100644 --- a/tests/online/test_shibatools.py +++ b/tests/online/test_shibatools.py @@ -1,6 +1,4 @@ # -*- coding: utf-8 -*- -from __future__ import unicode_literals - from shiba.shibatools import ( inf_constructor, retrieve_obj_from_url,