diff --git a/README.md b/README.md index 60b2014..10b53c8 100644 --- a/README.md +++ b/README.md @@ -146,3 +146,36 @@ users = generated.User.list(api_context) ##### Example See [`UserListExample.py`](./examples/user_list_example.py) + +## Running Samples +In order to make the experience of getting into bunq Python SDK smoother, we +have bundled it with example use cases (located under `/examples`). + +To run an example, please do the following: +1. In your IDE, open the example you are interested in and adjust the constants, +such as `_API_KEY` or `_USER_ID`, to hold your data. +2. In your terminal, go to the root of bunq SDK project: + +```shell +$ cd /path/to/bunq/sdk/ +``` +3. In the terminal, run: + +```shell +$ python3 run.py examples/ +``` + Replace `` with the name of the example you would like + to run. If you wish to run the example with python 2, also replace + `python3` with `python`. + +In order for examples to run, you would need a valid context file (`bunq.conf`) +to be present in the bunq SDK project root directory. The file can either copied +from somewhere else (e.g. tests) or created by running the following command +in your bunq SDK project root directory: + +```shell +$ python3 run.py examples/api_context_save_example.py +``` + +Please do not forget to set the `_API_KEY` constant in +`api_context_save_example.py` to your actual API key before running the sample! diff --git a/tests/assets/config.example.json b/tests/assets/config.example.json index 648dda0..d2753da 100644 --- a/tests/assets/config.example.json +++ b/tests/assets/config.example.json @@ -1,8 +1,8 @@ { "API_KEY": "", "USER_ID": "xxxx", - "MA_ID": "xxxx", - "MA_ID2": "xxxx", + "MONETARY_ACCOUNT_ID": "xxxx", + "MONETARY_ACCOUNT_ID2": "xxxx", "ipAddress": "", "AttachmentPublicTest":{ "CONTENT_TYPE": "image/png", diff --git a/tests/bunq_test.py b/tests/bunq_test.py index 5d43392..c3708df 100644 --- a/tests/bunq_test.py +++ b/tests/bunq_test.py @@ -19,7 +19,7 @@ class BunqSdkTestCase(unittest.TestCase): _DEVICE_DESCRIPTION = 'Python test device' @classmethod - def get_api_context(cls): + def _get_api_context(cls): """ Calls IsSessionActive to check if the session token is still active and returns the ApiContext. diff --git a/tests/config.py b/tests/config.py index 86d684f..fe2d1a5 100644 --- a/tests/config.py +++ b/tests/config.py @@ -12,8 +12,8 @@ class Config: _FIELD_ALIAS = "Alias" _FIELD_TAB_USAGE = "TabUsageSingleTest" _FIELD_CASH_REGISTER_ID = "CASH_REGISTER_ID" - _FIELD_MONETARY_ACCOUNT_ID_1 = "MA_ID" - _FIELD_MONETARY_ACCOUNT_ID_2 = "MA_ID2" + _FIELD_MONETARY_ACCOUNT_ID_1 = "MONETARY_ACCOUNT_ID" + _FIELD_MONETARY_ACCOUNT_ID_2 = "MONETARY_ACCOUNT_ID2" _FIELD_USER_ID = "USER_ID" _FIELD_API_KEY = "API_KEY" _FIELD_ATTACHMENT_PUBLIC = "AttachmentPublicTest" diff --git a/tests/model/generated/test_attachment_public.py b/tests/model/generated/test_attachment_public.py index 07516bd..cfc0204 100644 --- a/tests/model/generated/test_attachment_public.py +++ b/tests/model/generated/test_attachment_public.py @@ -20,7 +20,7 @@ def setUpClass(cls): cls._CONTENT_TYPE = Config.get_attachment_content_type() cls._ATTACHMENT_DESCRIPTION = Config.get_attachment_description() cls._ATTACHMENT_PATH_IN = Config.get_attachment_path_in() - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_file_upload_and_retrieval(self): """ diff --git a/tests/model/generated/test_avatar.py b/tests/model/generated/test_avatar.py index c1f0192..eb6f7bb 100644 --- a/tests/model/generated/test_avatar.py +++ b/tests/model/generated/test_avatar.py @@ -22,7 +22,7 @@ def setUpClass(cls): cls._CONTENT_TYPE = Config.get_attachment_content_type() cls._ATTACHMENT_DESCRIPTION = Config.get_attachment_description() cls._ATTACHMENT_PATH_IN = Config.get_attachment_path_in() - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_avatar_creation(self): """ diff --git a/tests/model/generated/test_card_debit.py b/tests/model/generated/test_card_debit.py index 2d26b11..2515619 100644 --- a/tests/model/generated/test_card_debit.py +++ b/tests/model/generated/test_card_debit.py @@ -25,7 +25,7 @@ def setUpClass(cls): cls._SECOND_LINE_LENGTH_MAXIMUM = 20 cls._STRING_EMPTY = '' cls._USER_ID = Config.get_user_id() - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_order_debit_card(self): """ diff --git a/tests/model/generated/test_draft_share_invite_bank.py b/tests/model/generated/test_draft_share_invite_bank.py index b28ddb4..3fff1d4 100644 --- a/tests/model/generated/test_draft_share_invite_bank.py +++ b/tests/model/generated/test_draft_share_invite_bank.py @@ -23,7 +23,7 @@ def setUpClass(cls): cls._WRITE_BYTES = 'wb' cls._EXPIRATION_ADDED_TIME = 1 cls._USER_ID = Config.get_user_id() - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_draft_share_invite_bank(self): """ diff --git a/tests/model/generated/test_monetary_account_bank.py b/tests/model/generated/test_monetary_account_bank.py index c3feef3..5bdfee8 100644 --- a/tests/model/generated/test_monetary_account_bank.py +++ b/tests/model/generated/test_monetary_account_bank.py @@ -20,7 +20,7 @@ def setUpClass(cls): cls._FIELD_CURRENCY = 'EUR' cls._MONETARY_ACCOUNT_PREFIX = 'Python_test' cls._USER_ID = Config.get_user_id() - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_create_new_monetary_account(self): """ diff --git a/tests/model/generated/test_payment.py b/tests/model/generated/test_payment.py index fda0103..e938737 100644 --- a/tests/model/generated/test_payment.py +++ b/tests/model/generated/test_payment.py @@ -24,7 +24,7 @@ def setUpClass(cls): cls._COUNTER_PARTY_OTHER_USER = Config.get_pointer_counter_party_other() cls._COUNTER_PARTY_SAME_USER = Config.get_pointer_counter_party_self() cls._MONETARY_ACCOUNT_ID = Config.get_monetary_account_id_1() - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_payment_to_other_user(self): """ diff --git a/tests/model/generated/test_request_inquiry.py b/tests/model/generated/test_request_inquiry.py index b00b5c2..7a615cb 100644 --- a/tests/model/generated/test_request_inquiry.py +++ b/tests/model/generated/test_request_inquiry.py @@ -23,7 +23,7 @@ def setUpClass(cls): cls._COUNTER_PARTY_SAME_USER = Config.get_pointer_counter_party_self() cls._MONETARY_ACCOUNT_ID = Config.get_monetary_account_id_1() cls._MONETARY_ACCOUNT_ID2 = Config.get_monetary_account_id_2() - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_sending_and_accepting_request(self): """ diff --git a/tests/model/generated/test_session.py b/tests/model/generated/test_session.py index 9324816..af0acf6 100644 --- a/tests/model/generated/test_session.py +++ b/tests/model/generated/test_session.py @@ -17,7 +17,7 @@ def setUpClass(cls): cls._API_KEY = Config.get_api_key() cls._BUNQ_CONFIG_FILE = "bunq-test.conf" cls._DEVICE_DESCRIPTION = 'Python test device' - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_session_delete(self): """ diff --git a/tests/model/generated/test_tab_usage_single.py b/tests/model/generated/test_tab_usage_single.py index 707f988..71c56c8 100644 --- a/tests/model/generated/test_tab_usage_single.py +++ b/tests/model/generated/test_tab_usage_single.py @@ -23,7 +23,7 @@ def setUpClass(cls): cls._TAB_ITEM_FIELD_DESCRIPTION = 'Super expensive python tea' cls._STATUS_WAITING = 'WAITING_FOR_PAYMENT' cls._TAB_FIELD_DESCRIPTION = 'Pay the tab for Python test please.' - cls._API_CONTEXT = cls.get_api_context() + cls._API_CONTEXT = cls._get_api_context() def test_create_and_update_tab(self): """