channel-app 0.0.153__tar.gz → 0.0.155__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {channel_app-0.0.153/channel_app.egg-info → channel_app-0.0.155}/PKG-INFO +1 -1
- channel_app-0.0.155/bitbucket-pipelines.yml +24 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/data.py +1 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/addresses.py +2 -2
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/test_orders.py +61 -6
- {channel_app-0.0.153 → channel_app-0.0.155/channel_app.egg-info}/PKG-INFO +1 -1
- {channel_app-0.0.153 → channel_app-0.0.155}/setup.py +1 -1
- channel_app-0.0.153/bitbucket-pipelines.yml +0 -14
- {channel_app-0.0.153 → channel_app-0.0.155}/.gitignore +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/.vscode/settings.json +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/Makefile +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/Procfile-dist +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/README.md +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/akinon.json-dist +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/build.sh-dist +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/order/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/order/service.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product/service.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product_image/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product_image/service.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product_price/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product_price/service.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product_stock/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/product_stock/service.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/setup/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/app/setup/service.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/orders/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/orders/orders.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/product_categories.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/product_images.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/product_prices.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/product_stocks.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/products.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/setup.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/integration.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/clients.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/commands.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/integration.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/products.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/settings.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/tests.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/core/utilities.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/batch_request.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/batch_requests.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/error_reports.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/integration_actions.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/cargo_companies.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/customers.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/orders.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/product_categories.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/product_images.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/product_prices.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/product_stocks.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/products.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/setup.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/__init__.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/test_product_images.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/test_product_prices.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/test_product_stocks.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/test_products.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/constants.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/exceptions.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/integration.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app.egg-info/SOURCES.txt +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app.egg-info/dependency_links.txt +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app.egg-info/requires.txt +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/channel_app.egg-info/top_level.txt +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/Makefile +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/make.bat +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/requirements.txt +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/architecture.rst +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/command_reference.rst +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/conf.py +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/flows.rst +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/images/async.png +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/images/batch_request_state_machine.png +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/images/sync.png +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/index.rst +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/installation_and_usage.rst +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/docs/source/terminology.rst +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/requirements-dev.txt +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/requirements.txt +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/setup.cfg +0 -0
- {channel_app-0.0.153 → channel_app-0.0.155}/tox.ini +0 -0
@@ -0,0 +1,24 @@
|
|
1
|
+
image: python:3.8.10
|
2
|
+
|
3
|
+
pipelines:
|
4
|
+
pull-requests:
|
5
|
+
'**':
|
6
|
+
- step:
|
7
|
+
name: Test
|
8
|
+
caches:
|
9
|
+
- pip
|
10
|
+
script:
|
11
|
+
- python -m pip install --upgrade setuptools
|
12
|
+
- make install && make install-dev
|
13
|
+
- make test
|
14
|
+
- make coverage
|
15
|
+
tags:
|
16
|
+
'*':
|
17
|
+
- step:
|
18
|
+
name: Publish to PyPI
|
19
|
+
image: python:3.7-alpine
|
20
|
+
script:
|
21
|
+
- apk add gcc git libffi-dev musl-dev openssl-dev python3-dev
|
22
|
+
- pip install setuptools setuptools_scm twine
|
23
|
+
- python setup.py sdist bdist_wheel
|
24
|
+
- twine upload -u __token__ -p $PYPI_TOKEN --skip-existing dist/*
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/addresses.py
RENAMED
@@ -60,8 +60,8 @@ class GetOrCreateAddress(OmnitronCommandInterface):
|
|
60
60
|
data = {
|
61
61
|
"email": address.email[:254],
|
62
62
|
"phone_number": address.phone_number[:128],
|
63
|
-
"first_name": customer.first_name[:255],
|
64
|
-
"last_name": customer.last_name[:255],
|
63
|
+
"first_name": (address.first_name or customer.first_name)[:255],
|
64
|
+
"last_name": (address.last_name or customer.last_name)[:255],
|
65
65
|
"customer": customer.pk,
|
66
66
|
"country": country_pk,
|
67
67
|
"city": city_pk,
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/test_orders.py
RENAMED
@@ -8,10 +8,19 @@ from omnisdk.omnitron.endpoints import (
|
|
8
8
|
ChannelOrderItemEndpoint,
|
9
9
|
ChannelCancellationRequestEndpoint,
|
10
10
|
ChannelBatchRequestEndpoint)
|
11
|
-
from omnisdk.omnitron.models import
|
12
|
-
|
13
|
-
|
11
|
+
from omnisdk.omnitron.models import (
|
12
|
+
CancellationRequest,
|
13
|
+
Customer
|
14
|
+
)
|
15
|
+
|
16
|
+
from channel_app.core.data import (
|
17
|
+
AddressDto,
|
18
|
+
CancellationRequestDto,
|
19
|
+
CustomerDto,
|
20
|
+
OrderBatchRequestResponseDto,
|
21
|
+
)
|
14
22
|
from channel_app.core.tests import BaseTestCaseMixin
|
23
|
+
from channel_app.omnitron.commands.orders.addresses import GetOrCreateAddress
|
15
24
|
from channel_app.omnitron.commands.orders.cargo_companies import GetCargoCompany
|
16
25
|
from channel_app.omnitron.commands.orders.customers import GetOrCreateCustomer
|
17
26
|
from channel_app.omnitron.commands.orders.orders import (
|
@@ -20,11 +29,12 @@ from channel_app.omnitron.commands.orders.orders import (
|
|
20
29
|
GetOrderItems,
|
21
30
|
GetOrderItemsWithOrder,
|
22
31
|
ProcessOrderBatchRequests,
|
23
|
-
|
32
|
+
)
|
24
33
|
from channel_app.omnitron.constants import (
|
25
34
|
BatchRequestStatus,
|
26
35
|
CancellationType,
|
27
|
-
CustomerIdentifierField
|
36
|
+
CustomerIdentifierField
|
37
|
+
)
|
28
38
|
|
29
39
|
|
30
40
|
class TestProcessOrderBatchRequests(BaseTestCaseMixin):
|
@@ -338,6 +348,49 @@ class TestGetOrCreateCustomer(BaseTestCaseMixin):
|
|
338
348
|
self.assertEqual(getattr(customer, key), value)
|
339
349
|
|
340
350
|
|
351
|
+
class TestGetOrCreateAddress(BaseTestCaseMixin):
|
352
|
+
"""
|
353
|
+
Test case for GetOrCreateAddress
|
354
|
+
|
355
|
+
run: python -m unittest channel_app.omnitron.commands.tests.test_orders.TestGetOrCreateAddress
|
356
|
+
"""
|
357
|
+
|
358
|
+
def setUp(self) -> None:
|
359
|
+
self.instance = GetOrCreateAddress(
|
360
|
+
integration=self.mock_integration,
|
361
|
+
)
|
362
|
+
self.instance.objects = {}
|
363
|
+
self.instance.objects["address"]: AddressDto = AddressDto(
|
364
|
+
email="john.doe@akinon.com",
|
365
|
+
phone_number="05556667788",
|
366
|
+
first_name="John",
|
367
|
+
last_name="Doe",
|
368
|
+
country="1",
|
369
|
+
city="80",
|
370
|
+
line="Hemen sahil kenarı"
|
371
|
+
)
|
372
|
+
self.instance.objects["customer"]: Customer = Customer(
|
373
|
+
pk="1",
|
374
|
+
first_name="Customer John",
|
375
|
+
last_name="Customer Doe",
|
376
|
+
)
|
377
|
+
|
378
|
+
|
379
|
+
@patch.object(GetOrCreateAddress, 'get_location_objects')
|
380
|
+
def test_get_data(self, mock_get_location_objects):
|
381
|
+
mock_get_location_objects.return_value = (1, 80, None, None)
|
382
|
+
data = self.instance.get_data()
|
383
|
+
|
384
|
+
self.assertEqual(
|
385
|
+
data["first_name"],
|
386
|
+
self.instance.objects["address"].first_name
|
387
|
+
)
|
388
|
+
self.assertEqual(
|
389
|
+
data["last_name"],
|
390
|
+
self.instance.objects["address"].last_name
|
391
|
+
)
|
392
|
+
|
393
|
+
|
341
394
|
class TestGetCargoCompany(BaseTestCaseMixin):
|
342
395
|
"""
|
343
396
|
Test case for GetCargoCompany
|
@@ -570,7 +623,9 @@ class TestCreateCancellationRequest(BaseTestCaseMixin):
|
|
570
623
|
order_item='1',
|
571
624
|
reason='reason_code',
|
572
625
|
remote_id='2',
|
573
|
-
cancellation_type=CancellationType.refund.value
|
626
|
+
cancellation_type=CancellationType.refund.value,
|
627
|
+
description='description',
|
628
|
+
)
|
574
629
|
return super().setUp()
|
575
630
|
|
576
631
|
@patch.object(BaseClient, 'get_instance')
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/channel/commands/product_categories.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/integration_actions.py
RENAMED
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/__init__.py
RENAMED
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/cargo_companies.py
RENAMED
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/orders/customers.py
RENAMED
File without changes
|
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/product_categories.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/channel_app/omnitron/commands/tests/test_products.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{channel_app-0.0.153 → channel_app-0.0.155}/docs/source/images/batch_request_state_machine.png
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|