Seperate components and add basic Flask UI
This commit is contained in:
parent
3333b1f760
commit
7c6e90a7c6
4 changed files with 65 additions and 38 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
__pycache__/
|
39
month_num_convert.py
Normal file
39
month_num_convert.py
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
# SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
|
|
||||||
|
class MonthNumConvert:
|
||||||
|
__months = (
|
||||||
|
"january",
|
||||||
|
"february",
|
||||||
|
"march",
|
||||||
|
"april",
|
||||||
|
"may",
|
||||||
|
"june",
|
||||||
|
"july",
|
||||||
|
"august",
|
||||||
|
"september",
|
||||||
|
"october",
|
||||||
|
"november",
|
||||||
|
"december",
|
||||||
|
)
|
||||||
|
|
||||||
|
# https://example.com/1 -> January
|
||||||
|
def __num_to_name(self, num):
|
||||||
|
if (num > 12) or (num < 1):
|
||||||
|
return None
|
||||||
|
return self.__months[num - 1].title()
|
||||||
|
|
||||||
|
def __name_to_num(self, name):
|
||||||
|
for i, month in enumerate(self.__months):
|
||||||
|
if name[0:3].lower() == month[0:3]:
|
||||||
|
return i + 1
|
||||||
|
|
||||||
|
# a is a string
|
||||||
|
def convert(self, a):
|
||||||
|
try:
|
||||||
|
return self.__num_to_name(int(a))
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
|
|
||||||
|
# So it's not a number
|
||||||
|
return self.__name_to_num(a)
|
|
@ -1,43 +1,7 @@
|
||||||
# SPDX-License-Identifier: CC0-1.0
|
# SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
import unittest
|
import unittest
|
||||||
|
from month_num_convert import MonthNumConvert
|
||||||
|
|
||||||
class MonthNumConvert:
|
|
||||||
__months = (
|
|
||||||
"january",
|
|
||||||
"february",
|
|
||||||
"march",
|
|
||||||
"april",
|
|
||||||
"may",
|
|
||||||
"june",
|
|
||||||
"july",
|
|
||||||
"august",
|
|
||||||
"september",
|
|
||||||
"october",
|
|
||||||
"november",
|
|
||||||
"december",
|
|
||||||
)
|
|
||||||
|
|
||||||
# https://example.com/1 -> January
|
|
||||||
def __num_to_name(self, num):
|
|
||||||
if (num > 12) or (num < 1):
|
|
||||||
return None
|
|
||||||
return self.__months[num - 1].title()
|
|
||||||
|
|
||||||
def __name_to_num(self, name):
|
|
||||||
for i, month in enumerate(self.__months):
|
|
||||||
if name[0:3].lower() == month[0:3]:
|
|
||||||
return i + 1
|
|
||||||
|
|
||||||
# a is a string
|
|
||||||
def convert(self, a):
|
|
||||||
try:
|
|
||||||
return self.__num_to_name(int(a))
|
|
||||||
except ValueError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
# So it's not a number
|
|
||||||
return self.__name_to_num(a)
|
|
||||||
|
|
||||||
|
|
||||||
class TestMonthNumConvert(unittest.TestCase):
|
class TestMonthNumConvert(unittest.TestCase):
|
23
wsgi.py
Normal file
23
wsgi.py
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
# SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
|
from flask import abort, Flask
|
||||||
|
from month_num_convert import MonthNumConvert
|
||||||
|
|
||||||
|
app = Flask(__name__)
|
||||||
|
mnc = MonthNumConvert()
|
||||||
|
|
||||||
|
|
||||||
|
@app.route("/")
|
||||||
|
def hello_world():
|
||||||
|
return "<p>Hello, World!</p>"
|
||||||
|
|
||||||
|
|
||||||
|
@app.route("/<something>")
|
||||||
|
def handle_input(something):
|
||||||
|
a = mnc.convert(something)
|
||||||
|
if a == None:
|
||||||
|
abort(404)
|
||||||
|
if type(a) == type(1):
|
||||||
|
a = str(a)
|
||||||
|
|
||||||
|
return a
|
Loading…
Add table
Add a link
Reference in a new issue