Wykres commitów

7 Commity (85e4cfed61948e8472daacb61f742fa09b8c9734)

Autor SHA1 Wiadomość Data
thenewguy 85e4cfed61 Issue 219 calculated rates base class (#230)
* add test for get_shipping_cost with a basket rate

* add fields to allow us to tie shipping rate to a basket & address

* add test for testing specified address and basket

* add migration for new shipping rate fields

* add missing import

* fix name errors

* add shipping possibilities based on shipping address and basket id

* test basket, shipping address, & basket+shipping address rate assignment

* return correct rates for basket and address rate cases

* rename shipping rate address for clarity (origin/destination)

* send basket modified signal when basket is modified via api endpoints

* test address only rate

* remove basket rates when the basket_modified signal is sent

* show response content on error

* print response content on failure for more tests and include more 200
statuses for put

* getting different status codes back from our endpoints, check success

* clear shipping rates based on destination address when address modified

* allow get params

* return cost and rate options for more cases (test not complete)

* fix mock

* return applicable shipping options and test some combinations

* stub the rate processor interface

* add fk from rate to processor that created it

* set rate basket and destination

* shipping processor instance can apply to more than one country

* run processor get_rates if configured

* let child models handle assignment

* add some initial testing for processor

* rename _get_rates() to process_rates()

* allow disabling the success check

* test country shipping option with processor requires destination

* test that the endpoint calls get_rate on the processor

* test that multiple processors are called once

* add shipping_origin fk to site settings

* add default cache key based on origin, destination, & basket items

* test a trivial rate processor implementation is used

* test cost endpoint returns the processed rate

* pin version requirement

* fix wagtail version

* start vagrant config

* get tox to run

* install nvm for vagrant user

* add instructions to move npm deps off shared folder for speed

* compact into a shell script for ease of use

* add some more examples as temporary documentation

* tests require dev reqs

* clean this up a little

* add migrations for productrequest app to fix test runner

* raise exception on error instead of returning error response

* test exception raised when country and country code specified

* test for destination address does not exist

* test exception when country and country code are not supplied

* set request.site as it is expected

* test get_shipping_cost_kwargs with only country code

* check the basket id and the settings

* value passed for country is supposed to be PK

* test with country specified

* write test so we can test with iso as string of known value

* tes destination is respected

* test with destination and country code

* test shipping_rate_name is set as name

* move models

* rename models.py

* rename to be consistent with rates being plural

* move serializers

* move models

* ignore private vagrant subdir

* move code around to fix circular imports to allow top level imports

* move address serializer import to top level

* ws

* ws
2019-11-06 13:46:07 +01:00
James Ramm 8ff51b9274
Longclaw 1.0 (#205)
* Compatibility with Wagtail 2 and Django 2
* Fixes #154 

Wagtail 2 compatibility:

* Fixes references to Wagtail packages which use the `wagtail.wagtail*` naming scheme. Wagtail 2 removes the redundancy.
* Wraps imports in `try`/`except` blocks to maintain compatibility with Wagtail 1.

Django 2 comaptibility:

Included because Wagtail 2 adds support for Django 2.

* Adds `on_delete` to all `ForeignKey` model fields, which is now required by Django 2.

* Updates for wagtail 2

* rename modules

* Longclaw v2: Rename and new migrations

* Longclaw 2: Reduce fails to 2 errors

* Longclaw v2: All tests passing

* Update travisconf

* Travis: Enable py37

* Update project template for v2

* longclawv2: update project template

* Fix migrations for longclaw 2

* Corrections in project template for longclaw1.0

* Correct location of templates and update docs

* Automatically load shipping countries

* Add loadcountries command

* Add info on loading country data
2018-12-26 12:58:05 +01:00
JamesRamm 1c93a620eb Provides a project template 2017-02-17 09:03:21 +00:00
JamesRamm 0985ac1e08 Final shipping rate changes, fixes #3 2017-02-12 16:22:12 +00:00
JamesRamm b926d2756b Make some settings configurable 2017-02-12 16:05:03 +00:00
JamesRamm 8858545082 Adds shipping countries to model admin & use django-countries 2017-02-11 21:52:13 +00:00
JamesRamm 8b9867b740 Separate shipping models and address and register with modeladmin 2017-02-11 17:06:19 +00:00