summaryrefslogtreecommitdiffhomepage
path: root/test/test_routing_tls.py
blob: 1ba79986423fd2b32866b14c1e7c6fa855fb3a7f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from unit.applications.tls import TestApplicationTLS

prerequisites = {'modules': {'openssl': 'any'}}


class TestRoutingTLS(TestApplicationTLS):
    def test_routes_match_scheme_tls(self):
        self.certificate()

        assert 'success' in self.conf(
            {
                "listeners": {
                    "*:7080": {"pass": "routes"},
                    "*:7081": {
                        "pass": "routes",
                        "tls": {"certificate": 'default'},
                    },
                },
                "routes": [
                    {"match": {"scheme": "http"}, "action": {"return": 200}},
                    {"match": {"scheme": "https"}, "action": {"return": 201}},
                ],
                "applications": {},
            }
        ), 'scheme configure'

        assert self.get()['status'] == 200, 'http'
        assert self.get_ssl(port=7081)['status'] == 201, 'https'