Exemple #1
0
class StaticFileRoutingTableTest(unittest.TestCase):
    def setUp(self):
        self.routing_table = StaticFileRoutingTable(
            os.path.dirname(test_data.test_static.__file__))

    def test_whenGettingRouteRegistrations_thenReturnAnHttpGetRouteWhenItMatchesAFile(
            self):
        registrations = self.routing_table.get_route_registrations(FILENAME)

        self.assertEqual(1, len(registrations))

    def test_givenInexistentFile_whenGettingRouteRegistrations_thenReturnEmptyList(
            self):
        routes = self.routing_table.get_route_registrations("inexistent.html")

        self.assertEqual(0, len(routes))

    def test_givenDisallowedFileExtension_whenGettingRouteRegistrations_thenReturnEmptyList(
            self):
        self.routing_table = StaticFileRoutingTable(
            os.path.dirname(test_data.test_static.__file__),
            allowed_extensions=[".txt"])

        routes = self.routing_table.get_route_registrations(FILENAME)

        self.assertEqual(0, len(routes))

    def test_givenDirectory_whenGettingRouteRegistrations_thenReturnEmptyList(
            self):
        routes = self.routing_table.get_route_registrations("")

        self.assertEqual(0, len(routes))
Exemple #2
0
    def test_givenDisallowedFileExtension_whenGettingRouteRegistrations_thenReturnEmptyList(
            self):
        self.routing_table = StaticFileRoutingTable(
            os.path.dirname(test_data.test_static.__file__),
            allowed_extensions=[".txt"])

        routes = self.routing_table.get_route_registrations(FILENAME)

        self.assertEqual(0, len(routes))
Exemple #3
0
 def create_router_config(self) -> RouterBuilder:
     return RouterBuilder() \
         .add_rule(FilteringRule("*", self.get_default_filters())) \
         .add_rule(AutoDiscoveringFilteringRule("*", self.registry, self.root_package_name)) \
         .add_rule(RoutingRule("/api", AutoDiscoveringRoutingTable(self.registry, self.root_package_name))) \
         .add_rule(RoutingRule("/static", StaticFileRoutingTable(os.path.dirname(e2e_test.app.static.__file__),
                                                                 allowed_extensions=['.txt'])))
Exemple #4
0
 def create_router_config(self) -> RouterBuilder:
     return RouterBuilder() \
         .add_rule(FilteringRule("*", JIVAGO_DEFAULT_FILTERS)) \
         .add_rule(RoutingRule("/api", AutoDiscoveringRoutingTable(self.registry, self.root_package_name))) \
         .add_rule(RoutingRule("/static", StaticFileRoutingTable(os.path.dirname(e2e_test.app.static.__file__),
                                                                 allowed_extensions=['.txt']))) \
         .add_rule(CorsRule("/", {'Access-Control-Allow-Origin': 'http://jivago.io',
                                  'Access-Control-Allow-Headers': '*',
                                  'Access-Control-Allow-Methods': '*'}))
Exemple #5
0
    def create_router_config(self) -> RouterBuilder:
        config = super().create_router_config() \
            .add_rule(FilteringRule("*", [TemporaryFileCleanupFilter])) \
            .add_rule(RoutingRule("/static/",
                                  StaticFileRoutingTable(os.path.dirname(static.__file__),
                                                         allowed_extensions=[".png", ".ico", ".html", ".css"])))

        prometheus_endpoint = os.environ.get("PROMETHEUS_GATEWAY_ENDPOINT")
        if prometheus_endpoint:
            InvertPdfContext.LOGGER.info(
                f"Using prometheus pushgateway endpoint {prometheus_endpoint}")
            config.add_rule(FilteringRule("*", [RequestMetricsFilter]))

        return config
Exemple #6
0
from jivago.wsgi.methods import GET
from jivago.wsgi.routing.routing_rule import RoutingRule
from jivago.wsgi.routing.serving.static_file_routing_table import StaticFileRoutingTable
from jivago.wsgi.routing.table.tree_routing_table import TreeRoutingTable

my_routing_table = TreeRoutingTable()
my_routing_table.register_route(GET, "/hello", HelloClass,
                                HelloClass.get_hello)

root_rule = RoutingRule("/", my_routing_table)
my_rule = RoutingRule("/static",
                      StaticFileRoutingTable("/var/www"),
                      rewrite_path=True)
Exemple #7
0
 def setUp(self):
     self.routing_table = StaticFileRoutingTable(
         os.path.dirname(test_data.test_static.__file__))
Exemple #8
0
 def create_router_config(self) -> RouterBuilder:
     return super().create_router_config() \
         .add_rule(RoutingRule("/static", StaticFileRoutingTable("/var/www")))
 def create_router(self) -> Router:
     router = super().create_router()
     router.add_routing_table(StaticFileRoutingTable(os.path.dirname(example_app.static.__file__)), "/static")
     return router
Exemple #10
0
 def create_router_config(self) -> RouterBuilder:
     return super().create_router_config() \
         .add_rule(RoutingRule("/", StaticFileRoutingTable("/var/www"))) \
         .add_rule(RoutingRule("/", StaticFileRoutingTable("/var/www", allowed_extensions=['.html', '.xml'])))