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
|
||||
|
||||
import unittest
|
||||
|
||||
|
||||
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)
|
||||
from month_num_convert import MonthNumConvert
|
||||
|
||||
|
||||
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