summaryrefslogtreecommitdiffhomepage
path: root/test/test_routing.py (unfollow)
AgeCommit message (Collapse)AuthorFilesLines
2023-02-21Tests: switched to using f-strings.Andrei Zeliankou1-36/+29
Previously, it was necessary to support older versions of Python for compatibility. F-strings were released in Python 3.6. Python 3.5 was marked as unsupported by the end of 2020, so now it's possible to start using f-strings safely for better readability and performance.
2022-10-11Tests: don't try to return response when "no_recv" is True.Andrei Zeliankou1-1/+1
2022-09-19HTTP: fixed cookie parsing.Zhidao HONG1-0/+14
The fixing supports the cookie value with the '=' character. This is related to #756 PR on Github. Thanks to changxiaocui.
2022-08-08Tests: added tests with UNIX sockets in "source".Andrei Zeliankou1-3/+11
2022-04-11Tests: style.Andrei Zeliankou1-16/+25
2021-12-12Tests: fixed type of applications.Andrei Zeliankou1-8/+8
2021-11-10Tests: added more tests for "query" routing pattern.Andrei Zeliankou1-8/+16
2021-11-05Router: matching query string support.Zhidao HONG1-0/+44
The "query" option matches decoded arguments, including plus ('+') to space (' '). Like "uri", it can be a string or an array of strings.
2021-10-18Tests: style.Andrei Zeliankou1-1/+0
2021-08-05Router: fixed crash when matching an empty address pattern array.Oisin Canty1-0/+4
A crash would occur when the router tried to match an against an empty address pattern array. The following configuration was used to reproduce the issue: { "listeners": { "127.0.0.1:8082": { "pass": "routes" } }, "routes": [ { "match": { "source": [] }, "action": { "return": 200 } } ] }
2021-05-24Tests: minor fixes.Andrei Zeliankou1-71/+19
2021-04-05Tests: style.Andrei Zeliankou1-6/+5
2021-03-31Tests: removed skip_alert().Andrei Zeliankou1-4/+1
2021-02-18Tests: added regex check.Andrei Zeliankou1-0/+12
2021-01-14Tests: added missing checks for configuration results.Andrei Zeliankou1-1/+1
2021-01-13Tests: style.Andrei Zeliankou1-1/+0
2020-12-08Tests: skip_alert() converted to the fixture.Andrei Zeliankou1-4/+3
2020-12-06Tests: options moved to the separate class.Andrei Zeliankou1-1/+1
This change is necessary to separate the logic and prevent possible circular dependency.
2020-11-17Router: matching regular expressions support.Axel Duch1-0/+42
2020-10-19Tests: fixed unit.log print.Andrei Zeliankou1-7/+5
2020-10-07Tests: minor fixes.Andrei Zeliankou1-1/+2
2020-10-07Router: fixed "not empty" pattern matching.Valentin Bartenev1-0/+15
The "!" pattern should be opposite to "", i.e. match only non-empty values. But after 3c00af54b937 it was equal to "!*", which is wrong.
2020-08-28Router: fixed "pass" to upstreams.hongzhidao1-0/+79
Messed up return values in nxt_upstream_find() caused error in applying any configuration with a valid "pass" value in router configuration pointing to upstream. That wasn't the case in "listeners" objects, where the return value wasn't checked. Also, it caused segfault in cases where the "pass" option was configured with variables and resulting value was pointing to a non-existent upstream. Added missing return checks as well to catch possible memory allocation errors. The bug was introduced in d32bc428f46b. This closes #472 issue on GitHub.
2020-09-16Tests: migrated to the pytest.Andrei Zeliankou1-1061/+816
2020-07-10Router: route patterns multi wildcards fix.Axel Duch1-0/+21
Matching 'start' and 'end' position now adjusted to avoid false matching. This is related to #434 issue on Github. Thanks to 洪志道 (Hong Zhi Dao).
2020-07-04Router: route patterns multi wildcards support.Axel Duch1-5/+44
2020-04-14Tests: minor fixes and style.Andrei Zeliankou1-1/+1
2020-03-27Tests: added tests for "return" action.Andrei Zeliankou1-136/+25
2020-05-15Tests: added test for encoding in the "pass" option.Andrei Zeliankou1-0/+55
2020-05-15Tests: style.Andrei Zeliankou1-1/+2
2020-05-14Tests: decode uri and args.Axel Duch1-35/+158
2020-04-24Tests: introduced module version specification in prerequisites.Andrei Zeliankou1-1/+1
2020-01-31Tests: more routing tests with negative rules.Andrei Zeliankou1-0/+57
2020-03-03Tests: check unique options in "action" object.Andrei Zeliankou1-0/+50
2020-03-03Improved validation of the "action" object.Valentin Bartenev1-2/+0
Now it enforces the mutual exclusivity of "pass", "proxy", and "share" options.
2020-02-27Tests: added test with invalid IPv6 address in routing block.Andrei Zeliankou1-0/+1
2019-12-24Tests: routing by listener address.Axel Duch1-0/+58
2019-12-24Tests: routing by client address configuration.Axel Duch1-0/+353
2019-12-09Tests: routing tests refactored.Andrei Zeliankou1-1770/+329
2019-10-23Tests: more URI normalization tests.Andrey Zelenkov1-8/+52
2019-10-23Tests: check initial configuration in test_routing.py.Andrey Zelenkov1-27/+31
2019-09-14Tests: refactored prerequisites model.Andrey Zelenkov1-1/+1
2019-07-24Added routing based on request scheme.Axel Duch1-0/+94
Scheme matches exact string “http” or “https”.
2019-07-14Tests: simplified one route case configuration.Andrey Zelenkov1-661/+406
No functional changes.
2019-07-02Tests: removed misleading comments in test_routing.t.Andrey Zelenkov1-2/+2
2019-06-10Cookie-based routing should be case-sensitive.Igor Sysoev1-11/+22
2019-05-30Tests: routing "cookies" tests.Andrey Zelenkov1-0/+482
2019-05-30Tests: routing "arguments" tests.Andrey Zelenkov1-0/+434
2019-05-30Tests: routing "headers" tests.Andrey Zelenkov1-0/+481
2019-05-30Tests: fixed tests without "Host" header.Andrey Zelenkov1-6/+23