예제 #1
0
def test_read_static():
    content = read_static("test.txt")
    assert content == b"test\n"

    try:
        read_static("xxx")
    except NotFound:
        pass
    else:
        raise AssertionError("file exists")
예제 #2
0
    def render_hello_page(
        self,
        request: custom_types.HttpRequest,
        new_user: custom_types.User,
        saved_user: custom_types.User,
    ) -> str:
        css_class_for_name = css_class_for_age = ""
        label_for_name = "Your name: "
        label_for_age = "Your age: "

        age_new = age_saved = saved_user.age
        name_new = name_saved = saved_user.name

        year = date.today().year - age_saved

        if new_user.errors:
            if "name" in new_user.errors:
                error = new_user.errors["name"]
                label_for_name = f"ERROR: {error}"
                css_class_for_name = consts.CSS_CLASS_ERROR

            if "age" in new_user.errors:
                error = new_user.errors["age"]
                label_for_age = f"ERROR: {error}"
                css_class_for_age = consts.CSS_CLASS_ERROR

            name_new = new_user.name
            age_new = new_user.age

        theme = utils.load_theme(request.session)

        html = utils.read_static("hello.html").decode()
        template = Template(html)

        context = {
            "age_new": age_new or "",
            "label_for_age": label_for_age,
            "label_for_name": label_for_name,
            "name_new": name_new or "",
            "name_saved": name_saved or "",
            "class_for_age": css_class_for_age,
            "class_for_name": css_class_for_name,
            "year": year,
            "fdsfdsfds": 2354234532,
            "theme": theme,
        }

        content = template.render(**context)

        return content
예제 #3
0
    def render_hello_page(self, new_user: User, saved_user: User) -> str:
        css_class_for_name = css_class_for_age = ""
        label_for_name = "Your name: "
        label_for_age = "Your age: "

        age_new = age_saved = saved_user.age
        name_new = name_saved = saved_user.name

        year = date.today().year - age_saved

        if new_user.errors:
            if "name" in new_user.errors:
                error = new_user.errors["name"]
                label_for_name = f"ERROR: {error}"
                css_class_for_name = CSS_CLASS_ERROR

            if "age" in new_user.errors:
                error = new_user.errors["age"]
                label_for_age = f"ERROR: {error}"
                css_class_for_age = CSS_CLASS_ERROR

            name_new = new_user.name
            age_new = new_user.age

        html = read_static("hello.html").decode()
        template = Template(html)

        context = {
            "age_new": age_new or "",
            "label_for_age": label_for_age,
            "label_for_name": label_for_name,
            "name_new": name_new or "",
            "name_saved": name_saved or "",
            "class_for_age": css_class_for_age,
            "class_for_name": css_class_for_name,
            "year": year,
        }

        content = template.render(**context)

        return content
예제 #4
0
 def handle_static(self, file_path, content_type):
     content = read_static(file_path)
     self.respond(content, content_type=content_type)
예제 #5
0
 def handle_logo(self):
     image = read_static("images/logo.svg")
     self.respond(image, content_type="image/svg+xml")
예제 #6
0
 def handle_style(self):
     css = read_static("styles/style.css")
     self.respond(css, content_type="text/css")
예제 #7
0
 def handle_static(self, file_path, content_type) -> None:
     content = utils.read_static(file_path)
     self.respond(content, content_type=content_type)