Marcello Stanisci
e6c1d262a8
Never set HTTP headers before invoking libgnunetcurl.
2019-05-13 17:39:06 +02:00
Florian Dold
8868952735
bank-lib: fix context
2019-05-12 22:20:36 +02:00
Florian Dold
7fa67030a8
hack in bank-lib compression
2019-05-12 21:59:59 +02:00
Christian Grothoff
9c194f79a5
adapt to GNUnet API change
2019-05-02 22:25:47 +02:00
Christian Grothoff
9c515d218b
use uint64_t for serial_id
2019-04-22 21:35:19 +02:00
Marcello Stanisci
4c9c7482f9
Install taler-bank-transfer again. Needed by reserve topper.
2019-04-19 19:08:25 +02:00
Marcello Stanisci
c93e699d58
Still on making the compiler happy.
2019-04-12 16:20:24 +02:00
Marcello Stanisci
054fe2fb05
Address more warnings on types.
2019-04-12 15:56:48 +02:00
Marcello Stanisci
25f444a361
Address compilation warnings.
2019-04-11 00:33:01 +02:00
Marcello Stanisci
2025e11685
Address compilation warnings.
2019-04-11 00:24:57 +02:00
Marcello Stanisci
12aa516024
Fix history CMD loop, + make fakebank demonize.
...
This latter enable us to call the "check-service" CMD
against the Fakebank, instead of doing forced X seconds
sleep.
2019-04-11 00:23:28 +02:00
Christian Grothoff
123d5077e9
fix build trouble
2019-04-11 00:07:52 +02:00
Marcello Stanisci
66425084c1
Test /history-range after transactions happened.
2019-04-10 17:34:27 +02:00
Marcello Stanisci
5c49663309
Fixing twisted tests.
...
It has been observed that when a "twisted" test has "very little"
commands in the stack, it uses to fail since the proxied service
cannot be reached.
This commit puts some delay before the first command gets run
by the test interpreter; both in the form of a "blind" sleep, and
with a more structured 'wget' loop.
2019-04-10 17:07:14 +02:00
Marcello Stanisci
ca718b9f1f
minor fixes
2019-04-10 17:07:14 +02:00
Marcello Stanisci
814522d21c
Time math macros.
2019-04-10 17:07:14 +02:00
Marcello Stanisci
75ac6b8063
minor fixes
2019-04-10 17:07:13 +02:00
Marcello Stanisci
f3d80b58f6
Make the API-agnostic iterator work.
...
This allows to build local histories to be matched
against the ones returned by the bank; in particular,
this version builds those stories regardless of /history
or /history-range being run.
2019-04-10 17:07:13 +02:00
Marcello Stanisci
ed0da1fdb3
/history-range.
...
Implementing the "lib" and "testing-lib" functions to use it.
2019-04-08 23:56:46 +02:00
Marcello Stanisci
e13a8902f0
Put /history[-range] logic in a dedicate file.
2019-04-08 02:37:46 +02:00
Marcello Stanisci
9fc380f7c8
Set range pointer.
2019-04-08 02:37:45 +02:00
Marcello Stanisci
e24e845b7d
debug message
2019-04-08 02:37:45 +02:00
Marcello Stanisci
704e0913c6
Fix compilation warnings, + enable polymorphic /history handler.
2019-04-08 02:37:45 +02:00
Marcello Stanisci
ddb8cdfa7a
Finishing /history-range implementation, untested.
2019-04-08 02:37:45 +02:00
Marcello Stanisci
3c66bb30b9
Gather /history implementation(s) in one point.
2019-04-08 02:37:45 +02:00
Marcello Stanisci
eca27d9d91
Finish abstract history builder.
2019-04-08 02:37:44 +02:00
Christian Grothoff
8b3ee47165
fix #includes
2019-04-07 00:01:16 +02:00
Marcello Stanisci
8655a40ad7
Half-baking #5666 .
2019-04-05 19:31:01 +02:00
Marcello Stanisci
32cdef2b62
Making the bug /history[-range] args parser.
2019-04-05 16:13:56 +02:00
Marcello Stanisci
9914a9b301
Adapt "/history" tests to the new policy of 'start' defaults.
2019-03-21 18:47:35 +01:00
Marcello Stanisci
a3979b583f
"/history" 'start' default value.
...
The fakebank got adapted to the same logic from the
Python bank (with negative deltas, 'start' defaults to
UINT64_MAX, whereas with positives it defaults to 0).
2019-03-21 18:45:50 +01:00
Marcello Stanisci
341e08b3dd
Makefile.
...
Do not install, but get to compile the utility
command 'taler-fakebank-run'.
2019-03-21 18:44:53 +01:00
Marcello Stanisci
7d980d2793
Comment.
...
Commenting about the impossibility of the current history
CMD to interpret the 'ordering' parameter of "/history" requests.
2019-03-21 18:43:24 +01:00
Marcello Stanisci
88f80b8b4b
Do not run unneeded test.
2019-03-18 15:29:41 +01:00
Marcello Stanisci
115ecfbc49
Fakebank debug
2019-03-14 18:48:11 +01:00
Marcello Stanisci
99fc27d403
Fakebank debugging.
...
Adding a CLI launcher for the bare fakebank service.
2019-03-13 16:24:19 +01:00
Christian Grothoff
1ce69e6b2f
initialize start_number in fakebank
2019-02-15 12:41:26 +01:00
Marcello Stanisci
342f9f1ec8
Fix Makefiles.
2019-01-22 19:02:49 +01:00
Marcello Stanisci
9c82290a1a
#5459
2018-12-19 11:43:05 +01:00
Marcello Stanisci
15c1a877c6
/history API semantics extended.
...
That API has now a new 'ordering' flag that lets the
client choose what ordering the results should have:
ascending or descending.
In particular, this change adapted the fakebank and
tests logic to such introduction.
2018-12-14 19:25:42 +01:00
Marcello Stanisci
c1a75b5b98
Adapt test to bank returning descending /history elements.
2018-12-13 19:44:58 +01:00
Marcello Stanisci
b3c31f8f59
Adapt test to bank returning descending /history elements.
2018-12-13 19:38:15 +01:00
Christian Grothoff
85aa6d17c7
fix misc. memory leaks
2018-11-25 14:51:31 +01:00
Christian Grothoff
e42f014cff
use more const in taler_testing_lib.h
2018-11-17 17:19:02 +01:00
Marcello Stanisci
60c533562c
Fix compiler warnings.
...
This reverts changes made in b0d00823eb
. The warnings
are fixed by changing the functions signatures, instead of casting
their pointers.
2018-10-22 16:59:09 +02:00
Marcello Stanisci
b0d00823eb
Fix compiler warnings.
2018-10-22 12:29:34 +02:00
Marcello Stanisci
2cbe471d5e
fix "twisted" test-suites.
2018-09-05 21:55:40 +02:00
Florian Dold
1541f2c2d6
fix test setup invocation
2018-08-19 11:41:58 +02:00
Florian Dold
ec08232b3f
increase listen backlog for fakebank
2018-08-19 11:37:42 +02:00
Christian Grothoff
7fb43dd2ae
make fakebank use epoll() on platforms where it is available
2018-08-19 11:20:35 +02:00
Florian Dold
eefc2e3ff4
fix all (?) wrong -l flags
2018-08-16 13:14:47 +02:00
Florian Dold
c30bb0008d
fix more wrong -l flags
2018-08-16 13:07:48 +02:00
Florian Dold
911b158bb8
fix some wrong -l flags
2018-08-16 13:03:30 +02:00
Marcello Stanisci
928714d226
Finish addressing #5332
2018-07-02 12:05:34 +02:00
Marcello Stanisci
b427b51595
polish bank history CMD
2018-07-02 12:04:32 +02:00
Marcello Stanisci
f033320300
Addressing #5291 .
2018-06-27 16:49:23 +02:00
Marcello Stanisci
6f579eb833
From payto:// to base url.
...
The conversion prepends http// or https://
depending on the port given beside the hostname.
If port is 433, then prepends https://, otherwise
prepends http://.
For now, the conversion was only necessary at
the /history bank lib.
2018-06-12 19:16:43 +02:00
Marcello Stanisci
11b3616355
Commenting the bank-lib "testing" header file.
2018-05-29 10:34:41 +02:00
Marcello Stanisci
5faa541d27
do not use hard coded database string
2018-05-29 10:27:41 +02:00
Marcello Stanisci
a57145e172
Commenting the "history" CMD
2018-05-28 22:49:50 +02:00
Marcello Stanisci
0579b1d9cb
Commenting the "reject" CMD
2018-05-28 22:20:21 +02:00
Marcello Stanisci
7a1146f147
Commenting the remaining "lib" traits.
2018-05-28 17:23:05 +02:00
Marcello Stanisci
40b27a8210
Tests flexibility.
...
It is now possible to launch the bank from
the testing-lib regardless of it being served
via HTTP or UWSGI.
2018-05-04 15:46:07 +02:00
Marcello Stanisci
b8ab8f01c7
address double-slash situation.
2018-04-23 15:59:48 +02:00
Christian Grothoff
202827ebda
merging Florian's changes with my wire changes
2018-04-15 12:20:00 +02:00
Florian Dold
2e65fa8366
fix comment
2018-04-06 00:36:30 +02:00
Florian Dold
df8ff68ed8
fix compiler warnings
2018-04-04 00:14:02 +02:00
Christian Grothoff
40a64e8f0c
fix post-merge FTBFS
2018-04-02 14:34:23 +02:00
Christian Grothoff
cb55c1a3af
Changing configuration structure to enable multiple accounts.
...
This change enables using multiple wire plugins at the same time.
Also, we now distinguish between the wire plugin (i.e. EBICS or
taler_bank) and the wire method (i.e. SEPA or x-taler-bank) that
the wire plugin is implementing. The "taler-bank" wire method
was renamed from "test" to "x-taler-bank".
This also changes the format of the /wire response of the exchange,
as we now need to return multiple accounts. Note that wire fees
are specified per wire method, not per wire account.
taler-exchange-keyup now automatically signs all of the /wire
responses in the location specified by the configuration.
Account identification in wire plugins was changed to use
payto://-URLs instead of method-specific JSON fields. Signing
and validation of /wire responses was moved from each wire
plugin to a generic validation method in libtalerutil (crypto)
or libtalerjson (for JSON-formatted inputs).
Convenience methods were added to generate JSON for wire accounts
(salting, signing).
Various section and option names were adjusted to streamline the
configuration and make it more consistent overall. Documentation
was updated as well.
2018-04-02 14:29:44 +02:00
Marcello Stanisci
3e191f3b08
still on gentle twister termination.
2018-03-26 21:43:25 +02:00
Marcello Stanisci
96a4aefcfd
gently terminating the twister.
2018-03-22 20:03:43 +01:00
Marcello Stanisci
dbf82fb736
fix makefile conditional.
2018-03-17 02:05:48 +01:00
Marcello Stanisci
2d321c24bc
adding "with_fakebank_twisted" tests.
2018-03-17 02:05:48 +01:00
Marcello Stanisci
b67ae83c75
add fakebank-version of twisted tests.
2018-03-17 02:05:48 +01:00
Marcello Stanisci
f819aef2f4
mini testing of twister.
...
Make one bank-lib test command pass through the twister.
2018-03-17 02:05:47 +01:00
Marcello Stanisci
5156de1195
fix return code.
2018-03-17 02:05:47 +01:00
Marcello Stanisci
c4770643e3
bank-lib twisted tests scaffold done.
2018-03-17 02:05:47 +01:00
Marcello Stanisci
53cf576e62
bank-lib's twisted tests scaffold
2018-03-17 02:05:47 +01:00
Christian Grothoff
1ae2ba3d0a
fix compiler warnings related to use of %llu on uint64_t
2018-03-12 11:25:39 +01:00
Marcello Stanisci
6b7ad9c50d
indent
2018-02-28 15:05:31 +01:00
Marcello Stanisci
663f26a1a2
fix reject test command.
2018-02-27 22:55:18 +01:00
Marcello Stanisci
a3c7298515
fix log component name
2018-02-27 19:38:05 +01:00
Marcello Stanisci
ee699caca2
fix use of extern keyword.
2018-02-27 19:30:31 +01:00
Marcello Stanisci
b58d41939c
setting label for reject testing command.
2018-02-27 19:12:28 +01:00
Marcello Stanisci
b593d416d6
Bank-lib tests, using the new (libraries-based) style.
2018-02-26 14:12:46 +01:00
Florian Dold
e318edb5e5
use url instead of uri consistently
2018-01-30 01:38:04 +01:00
Christian Grothoff
bc7957f393
fix fakebank memory leak
2018-01-16 13:11:35 +01:00
Marcello Stanisci
346c351e5f
redefining/adding bank error codes
2017-12-22 21:22:57 +01:00
Marcello Stanisci
7e966aa2ae
store password in the right variable
2017-12-14 17:53:48 +01:00
Christian Grothoff
229907c6e2
implement taler-bank-transfer, fixes #5195
2017-12-14 15:33:10 +01:00
Christian Grothoff
0f5ef01dd3
nicer error reporting
2017-12-14 13:36:59 +01:00
Marcello Stanisci
22eae129a9
logging the /reject requester in tests as the deposit _credit_ account
2017-12-13 19:22:45 +01:00
Marcello Stanisci
9ea3145745
respect /reject API: credit_account -> account_number
2017-12-13 19:07:41 +01:00
Christian Grothoff
f93abc29d8
re-enable bank /reject testing now that bank implements it ( closes #5200 )
2017-12-13 17:14:52 +01:00
Christian Grothoff
cf9e5efbfb
use dual stack for fakebank
2017-12-12 19:23:16 +01:00
Christian Grothoff
878c68faf6
better diagnostics from fakebank
2017-12-10 21:19:30 +01:00
Christian Grothoff
6623afa2a3
add testcase for #5077 (passes), start to reduce use of exchange's admin/add/incoming ( #5172 , more to come)
2017-12-10 16:02:03 +01:00
Christian Grothoff
16e2cd8d44
switch auth based on account number in test
2017-12-09 21:19:33 +01:00
Christian Grothoff
1c3863f5fd
swap account numbers so reject can work with auth
2017-12-09 20:28:17 +01:00
Florian Dold
44aaaf9e93
set error code correctly, removes compiler warning
2017-12-08 17:07:20 +01:00
Florian Dold
e75afb3164
use row_id instead of serial_id everywhere
2017-12-08 17:04:11 +01:00
Florian Dold
4872b61781
bank uses row_id instead of serial_id now
2017-12-08 16:59:15 +01:00
Florian Dold
d0a80659a1
comment out bank test cases until implemented in bank
2017-12-08 15:46:15 +01:00
Christian Grothoff
042616899f
largely fix #5077
2017-12-06 19:24:00 +01:00
Marcello Stanisci
4da09561f4
missing conf from 'make dist'
2017-10-18 11:47:34 +02:00
Christian Grothoff
eb354680b4
fix compiler warning due to possibly unknown switch enum values being handled poorly
2017-06-15 22:07:10 +02:00
Christian Grothoff
0580168c0e
automated refunds of expired reserves now work and tested, fixes #4956
2017-06-11 17:04:54 +02:00
Christian Grothoff
ba17729f65
tolerate empty transaction list when returning history
2017-06-11 16:06:52 +02:00
Christian Grothoff
becb7139e1
fix doxygen
2017-06-11 15:28:18 +02:00
Christian Grothoff
16b7c26605
modify fakebank API to allow arbitrary subjects, not just well-fromed WTIDs
2017-06-11 15:25:59 +02:00
Christian Grothoff
0c522791fe
bump versions for release
2017-06-06 14:03:53 +02:00
Christian Grothoff
59fd83b731
fix memory leaks ( #5050 )
2017-06-04 12:07:53 +02:00
Christian Grothoff
1e30d60a25
fixing misc doxygen issues
2017-06-04 11:30:43 +02:00
Marcello Stanisci
6bb2631ab4
bank flush db command also needed -c option
2017-05-24 14:57:33 +02:00
Marcello Stanisci
48c72bb7a0
bank-lib testcase passes config file to the bank
2017-05-17 20:10:59 +02:00
Marcello Stanisci
b72b58b560
remove mention of 'talercheck'
2017-05-17 17:52:43 +02:00
Marcello Stanisci
0bb06fab55
bank-lib looks first into env to get checkdb's name
2017-05-17 17:47:32 +02:00
Christian Grothoff
82cec70298
nicer error reporting
2017-05-16 11:05:01 +02:00
Marcello Stanisci
9916eef3db
use and purge alternate db when testing against python bank
2017-05-16 11:05:00 +02:00
Christian Grothoff
bdfa18830d
start_row is actually start in the spec, fix naming
2017-05-16 11:05:00 +02:00
Christian Grothoff
7c28823caf
handle base32-wire transfer subject being followed by space+exchange base url in wire plugin and fakebank
2017-05-16 11:05:00 +02:00
Christian Grothoff
be3b891dbd
fix port numbers, no longer 8081 but on 8080; and box json array /history response in {data} as required by API
2017-05-16 11:05:00 +02:00
Marcello Stanisci
d3fac18562
take the history array from "data" field returned by the bank
2017-05-16 11:04:59 +02:00
Christian Grothoff
5a0ee21b48
even more detailed /history error reporting
2017-05-11 11:22:42 +02:00
Marcello Stanisci
3e5d200d95
revert field name in bank-lib
2017-05-10 21:08:29 +02:00
Christian Grothoff
474f374d2d
improve history error reporting by test
2017-05-10 16:55:14 +02:00
Marcello Stanisci
6bf006e636
removing use of bank's admin interface from bank-lib testcases
2017-05-10 15:50:53 +02:00
Marcello Stanisci
2c43ff7c0d
uncommenting the first failing bank-lib interpreter command
2017-05-10 15:50:49 +02:00
Marcello Stanisci
e16d60b27f
fix field name
2017-05-10 15:50:47 +02:00
Marcello Stanisci
7cbfdbd72a
uncommenting /admin/add/incoming interpreter command
2017-05-10 15:50:45 +02:00
Marcello Stanisci
75f47e79e1
initial fixes to test exchange/bank interfacing
2017-05-10 15:50:41 +02:00
Marcello Stanisci
edf24557bf
revert last change
2017-05-10 15:46:05 +02:00
Marcello Stanisci
ec53b9f6ce
serial_id -> row_id in returned json
2017-05-10 11:49:59 +02:00
Christian Grothoff
1edf34e52a
fix missing auth header for /admin/add/incoming
2017-05-09 22:25:53 +02:00
Christian Grothoff
783642272d
fix possible NULL deref, simplify logic
2017-05-09 13:24:53 +02:00
Christian Grothoff
18a020dd02
implement fakebank support (incl. tests) for #5005/#4964/4959
2017-05-07 21:11:56 +02:00
Christian Grothoff
56786aea5a
adjust test to work with real bank (now fails)
2017-05-07 14:21:40 +02:00
Christian Grothoff
ed1a4c08fd
add link to bug
2017-05-04 23:53:29 +02:00
Christian Grothoff
69fa9b41d1
start to add /history testing support to tests, fix some minor issues
2017-05-04 23:52:54 +02:00
Christian Grothoff
0e632ffdd2
fix names to match latest specification
2017-05-04 23:30:18 +02:00
Christian Grothoff
1ea22a37c6
add /history support to fakebank
2017-05-04 23:29:08 +02:00
Christian Grothoff
f4df63e448
adding support for transaction history to wire plugin API ( #4959 )
2017-05-04 18:35:53 +02:00
Christian Grothoff
234dbcc7b7
switch bank api to new authentication method API
2017-05-04 15:18:43 +02:00
Christian Grothoff
57502edf15
fix typo
2017-05-04 14:06:16 +02:00
Christian Grothoff
405859d068
implement #4993
2017-05-04 11:19:00 +02:00
Christian Grothoff
487237381d
fix misc doxygen issues
2017-04-20 07:49:56 +02:00
Christian Grothoff
7ebacc6fbd
merge aggregator
2017-03-24 13:42:02 +01:00
Christian Grothoff
397c718809
implementing #4921 : add base URL to wire transfers
2017-03-02 06:26:12 +01:00
Marcello Stanisci
95a6d399f8
wget-ing /admin/add/incoming from bank-lib testcase
2016-11-04 20:04:31 +01:00
Marcello Stanisci
1fe606a63b
half baking #4756
2016-11-04 17:45:34 +01:00
Marcello Stanisci
59c6856284
fixing #4594
2016-07-07 17:55:25 +02:00
Christian Grothoff
8c7406cb42
check refresh amounts add up correctly, fix linker issue
2016-06-15 22:55:05 +02:00
Christian Grothoff
2886187a02
fix leaks
2016-06-11 16:47:13 +02:00
Christian Grothoff
a7379930d2
turn libfakebank into libtalerfakebank so we can use it for testcases in the merchant
2016-06-08 11:35:28 +02:00
Christian Grothoff
9160245167
make use of GNUNET_JSON_from_data_auto where possible
2016-05-21 18:36:12 +02:00
Christian Grothoff
ad6a40aaa5
fix fmt string issues
2016-05-04 13:21:22 +02:00
Christian Grothoff
458992dc6f
fixes for disting
2016-05-04 10:21:35 +02:00
Christian Grothoff
910e01d1c1
be more careful with terminology
2016-05-04 05:38:29 +02:00
Christian Grothoff
f2b7e36269
finish tests for #4437
2016-05-03 06:15:09 +02:00
Christian Grothoff
5852baa7e9
fix testcase
2016-05-02 09:06:16 +02:00
Christian Grothoff
08ef15ec94
adding bank-lib test against fakebank (currently fails) -- towards addressing #4437
2016-05-02 08:54:05 +02:00
Christian Grothoff
31ad6aaf11
separate interpreter from the rest of the test logic
2016-05-02 08:46:17 +02:00
Christian Grothoff
5fd6a25c6d
code simplification via new extended libgnunetcurl API
2016-05-02 08:24:21 +02:00
Christian Grothoff
ad45e5ab7a
adjust shutdown/timeout to match latest GNUnet scheduler API semantics
2016-05-02 06:48:25 +02:00
Christian Grothoff
1c2be591d3
fixing #4479
2016-05-02 02:33:14 +02:00
Christian Grothoff
21188ca703
Merge branch 'master' of ssh://taler.net:/var/git/exchange
2016-04-21 20:00:40 +02:00
Christian Grothoff
f693e25793
introduce refund fee
2016-04-20 01:50:26 +02:00
Florian Dold
6d551b3073
unnecessary include
2016-04-19 14:44:53 +02:00
Christian Grothoff
8d503b17e3
move fake bank implementation to new library to re-use the code in upcoming testcases in preparation of fixing #4399
2016-04-17 23:14:23 +02:00
Christian Grothoff
7496a03978
replace bank_api_context with libgnunetcurl
2016-04-17 18:03:01 +02:00
Florian Dold
3098c0a9e0
new taler-bank-manage invocation
2016-04-14 01:19:32 +02:00
Florian Dold
9f9d41dd06
set currency to default bank currency for test case
2016-04-11 23:58:02 +02:00
Florian Dold
7e648c042c
account numbers start at 1
2016-04-11 23:44:09 +02:00
Florian Dold
21ea107cc0
newline
2016-04-11 21:10:20 +02:00
Christian Grothoff
0dee91e014
changing code to meet latest change in GNUNET_SCHEDULER API
2016-04-10 00:57:20 +02:00
Christian Grothoff
b4c4f0b078
towards a testcase for aggregation logic
2016-03-30 22:56:17 +02:00
Christian Grothoff
73a0510705
use bank and exchange account numbers in test
2016-03-23 18:38:57 +01:00
Christian Grothoff
e76154e076
ref to bug #4340
2016-03-23 11:34:50 +01:00
Christian Grothoff
ac950fbe61
switch to wid to comply with spec
2016-03-23 11:34:24 +01:00
Christian Grothoff
7f7ac5d92c
avoid waiting forever
2016-03-23 10:06:41 +01:00
Christian Grothoff
08a051a7c0
update test_bank_api to match current bank setup methods
2016-03-23 10:04:40 +01:00
Christian Grothoff
0d1eced630
first refactoring of JSON logic to address #4150 and #4237
2016-03-19 15:23:11 +01:00
Christian Grothoff
17ff4f5e97
fixing #4230 in bank-lib
2016-03-02 21:07:27 +01:00
Christian Grothoff
531272a92a
towards fixing #4230
2016-03-02 21:02:46 +01:00
Christian Grothoff
b5cba32510
renaming mint->exchange
2016-03-01 15:35:04 +01:00
Christian Grothoff
ae45b7ac95
fix testcase
2016-01-29 14:24:18 +01:00
Christian Grothoff
67bc16d9eb
update bank-lib to reflect API discussions
2016-01-29 11:39:45 +01:00
Christian Grothoff
0554fa7691
fix syntax issues in Makefile.am
2016-01-27 15:05:39 +01:00
Christian Grothoff
941cb8182f
adding first version of thebank-lib
2016-01-25 10:20:40 +01:00