Mercurial > cgi-bin > hgweb.cgi > tincan
diff tests/suite_12_methods/files/name.py @ 71:88adf10be709 draft
Add tests.
author | David Barts <n5jrn@me.com> |
---|---|
date | Mon, 15 Jul 2019 13:16:31 -0700 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/suite_12_methods/files/name.py Mon Jul 15 13:16:31 2019 -0700 @@ -0,0 +1,28 @@ +# It is *technically* an HTTP violation to use POST for an idempotent +# page like this, but it is a good simple test. + +from tincan import Page +from jsdict import JSDict + +class Name(Page): + def handle(self): + self._error_message = JSDict({"subject": "Error", "style": "color: red;"}) + if "name" not in self.request.forms: + if self.request.method == "GET": + self.message = None + else: + self.message = self.error("This should not happen!") + else: + name = self.request.forms["name"] + if name.strip() == "": + self.message = self.error("Please enter your name above.") + else: + self.message = JSDict({ + "subject": "Hello, {0}".format(name.split()[0]), + "style": None, + "body": "Pleased to meet you!" + }) + + def error(self, message): + self._error_message.body = message + return self._error_message