From d701da8fffda204c097977fe1165a7e89fd26ccc Mon Sep 17 00:00:00 2001 From: robban64 <carl@schonfelder.se> Date: Wed, 7 Apr 2021 12:09:27 +0200 Subject: [PATCH] fix: removed style --- server/app/apis/competitions.py | 9 +++------ server/app/core/controller/edit.py | 4 +--- server/app/core/controller/get.py | 6 +----- server/app/core/models.py | 20 +------------------- server/app/core/parsers.py | 2 -- server/app/core/rich_schemas.py | 1 - server/app/core/schemas.py | 10 ---------- server/populate.py | 5 +---- server/tests/test_app.py | 2 +- server/tests/test_db.py | 27 ++++----------------------- server/tests/test_helpers.py | 5 +---- 11 files changed, 13 insertions(+), 78 deletions(-) diff --git a/server/app/apis/competitions.py b/server/app/apis/competitions.py index b2c07999..e945626c 100644 --- a/server/app/apis/competitions.py +++ b/server/app/apis/competitions.py @@ -24,10 +24,9 @@ class CompetitionsList(Resource): name = args.get("name") city_id = args.get("city_id") year = args.get("year") - style_id = args.get("style_id") # Add competition - item = dbc.add.default(Competition(name, year, style_id, city_id)) + item = dbc.add.default(Competition(name, year, city_id)) # Add default slide item_slide = dbc.add.slide(item) @@ -52,8 +51,7 @@ class Competitions(Resource): name = args.get("name") year = args.get("year") city_id = args.get("city_id") - style_id = args.get("style_id") - item = dbc.edit.competition(item, name, year, city_id, style_id) + item = dbc.edit.competition(item, name, year, city_id) return item_response(schema.dump(item)) @jwt_required @@ -71,11 +69,10 @@ class CompetitionSearch(Resource): name = args.get("name") year = args.get("year") city_id = args.get("city_id") - style_id = args.get("style_id") page = args.get("page", 0) page_size = args.get("page_size", 15) order = args.get("order", 1) order_by = args.get("order_by") - items, total = dbc.get.search_competitions(name, year, city_id, style_id, page, page_size, order, order_by) + items, total = dbc.get.search_competitions(name, year, city_id, page, page_size, order, order_by) return list_response(list_schema.dump(items), total) diff --git a/server/app/core/controller/edit.py b/server/app/core/controller/edit.py index 9373ebc7..c8b1633b 100644 --- a/server/app/core/controller/edit.py +++ b/server/app/core/controller/edit.py @@ -31,15 +31,13 @@ def slide(item, title=None, timer=None): return item -def competition(item, name=None, year=None, city_id=None, style_id=None): +def competition(item, name=None, year=None, city_id=None): if name: item.name = name if year: item.year = year if city_id: item.city_id = city_id - if style_id: - item.style_id = style_id db.session.commit() db.session.refresh(item) diff --git a/server/app/core/controller/get.py b/server/app/core/controller/get.py index d5b5978a..7c3842d9 100644 --- a/server/app/core/controller/get.py +++ b/server/app/core/controller/get.py @@ -43,9 +43,7 @@ def search_user(email=None, name=None, city_id=None, role_id=None, page=0, page_ return _search(query, order_column, page, page_size, order) -def search_competitions( - name=None, year=None, city_id=None, style_id=None, page=0, page_size=15, order=1, order_by=None -): +def search_competitions(name=None, year=None, city_id=None, page=0, page_size=15, order=1, order_by=None): query = Competition.query if name: query = query.filter(Competition.name.like(f"%{name}%")) @@ -53,8 +51,6 @@ def search_competitions( query = query.filter(Competition.year == year) if city_id: query = query.filter(Competition.city_id == city_id) - if style_id: - query = query.filter(Competition.style_id == style_id) order_column = Competition.year # Default order_by if order_by: diff --git a/server/app/core/models.py b/server/app/core/models.py index 55ea1b1c..8622a17e 100644 --- a/server/app/core/models.py +++ b/server/app/core/models.py @@ -77,43 +77,25 @@ class Media(db.Model): type_id = db.Column(db.Integer, db.ForeignKey("media_type.id"), nullable=False) upload_by_id = db.Column(db.Integer, db.ForeignKey("user.id"), nullable=False) - styles = db.relationship("Style", backref="bg_image") - def __init__(self, filename, type_id, upload_by_id): self.filename = filename self.type_id = type_id self.upload_by_id = upload_by_id -class Style(db.Model): - id = db.Column(db.Integer, primary_key=True) - name = db.Column(db.String(STRING_SIZE), unique=True) - css = db.Column(db.Text, nullable=False) - bg_image_id = db.Column(db.Integer, db.ForeignKey("media.id"), nullable=True) - - competition = db.relationship("Competition", backref="style") - - def __init__(self, name, css, bg_image_id=None): - self.name = name - self.css = css - self.bg_image_id = bg_image_id - - class Competition(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(STRING_SIZE), unique=True) year = db.Column(db.Integer, nullable=False, default=2020) - style_id = db.Column(db.Integer, db.ForeignKey("style.id"), nullable=False) city_id = db.Column(db.Integer, db.ForeignKey("city.id"), nullable=False) slides = db.relationship("Slide", backref="competition") teams = db.relationship("Team", backref="competition") - def __init__(self, name, year, style_id, city_id): + def __init__(self, name, year, city_id): self.name = name self.year = year - self.style_id = style_id self.city_id = city_id diff --git a/server/app/core/parsers.py b/server/app/core/parsers.py index 6f287cb2..d4aaf0ec 100644 --- a/server/app/core/parsers.py +++ b/server/app/core/parsers.py @@ -38,7 +38,6 @@ competition_parser = reqparse.RequestParser() competition_parser.add_argument("name", type=str) competition_parser.add_argument("year", type=int) competition_parser.add_argument("city_id", type=int) -competition_parser.add_argument("style_id", type=int) ###SEARCH_COMPETITOIN#### @@ -46,7 +45,6 @@ competition_search_parser = search_parser.copy() competition_search_parser.add_argument("name", type=str, default=None, location="args") competition_search_parser.add_argument("year", type=str, default=None, location="args") competition_search_parser.add_argument("city_id", type=int, default=None, location="args") -competition_search_parser.add_argument("style_id", type=int, default=None, location="args") ###SLIDER_PARSER#### diff --git a/server/app/core/rich_schemas.py b/server/app/core/rich_schemas.py index 56aec85e..f9510488 100644 --- a/server/app/core/rich_schemas.py +++ b/server/app/core/rich_schemas.py @@ -31,7 +31,6 @@ class CompetitionSchemaRich(RichSchema): name = ma.auto_field() year = ma.auto_field() slides = fields.Nested(schemas.SlideSchema, many=True) - style = fields.Nested(schemas.RoleSchema, many=False) city = fields.Nested(schemas.CitySchema, many=False) diff --git a/server/app/core/schemas.py b/server/app/core/schemas.py index 9962479f..0450034a 100644 --- a/server/app/core/schemas.py +++ b/server/app/core/schemas.py @@ -52,16 +52,6 @@ class MediaSchema(BaseSchema): upload_by_id = ma.auto_field() -class StyleSchema(BaseSchema): - class Meta(BaseSchema.Meta): - model = models.Style - - id = ma.auto_field() - name = ma.auto_field() - css = ma.auto_field() - bg_image = fields.Nested(MediaSchema, many=False) - - class SlideSchema(BaseSchema): class Meta(BaseSchema.Meta): model = models.Slide diff --git a/server/populate.py b/server/populate.py index 1910ae8f..4dd1f532 100644 --- a/server/populate.py +++ b/server/populate.py @@ -1,6 +1,6 @@ import app.core.controller as dbc from app import create_app, db -from app.core.models import City, MediaType, QuestionType, Role, Style, User +from app.core.models import City, MediaType, QuestionType, Role, User def _add_items(): @@ -30,9 +30,6 @@ def _add_items(): db.session.add(City(item)) db.session.commit() - # Add deafult style - db.session.add(Style("Main Style", "")) - # Commit changes to db db.session.commit() diff --git a/server/tests/test_app.py b/server/tests/test_app.py index 383cb574..e4e0f290 100644 --- a/server/tests/test_app.py +++ b/server/tests/test_app.py @@ -43,7 +43,7 @@ def test_competition(client): headers = {"Authorization": "Bearer " + body["access_token"]} # Create competition - data = {"name": "c1", "year": 2020, "city_id": 1, "style_id": 1} + data = {"name": "c1", "year": 2020, "city_id": 1} response, body = post(client, "/api/competitions", data, headers=headers) assert response.status_code == 200 assert body["name"] == "c1" diff --git a/server/tests/test_db.py b/server/tests/test_db.py index 46bd5996..4d32b739 100644 --- a/server/tests/test_db.py +++ b/server/tests/test_db.py @@ -1,4 +1,4 @@ -from app.core.models import City, Competition, Media, MediaType, Question, QuestionType, Role, Slide, Style, Team, User +from app.core.models import City, Competition, Media, MediaType, Question, QuestionType, Role, Slide, Team, User from tests import app, client, db from tests.test_helpers import add_default_values, assert_exists, assert_insert_fail @@ -21,7 +21,7 @@ def test_user(client): assert len(item_city.users) == 1 and item_city.users[0].id == item_user.id -def test_media_style(client): +def test_media(client): add_default_values() item_user = User.query.filter_by(email="test@test.se").first() @@ -38,19 +38,6 @@ def test_media_style(client): assert len(item_user.media) == 1 assert item_media.upload_by.email == "test@test.se" - # Add style - db.session.add(Style("template", "hej", item_media.id)) - db.session.commit() - - # Assert style - item_style = Style.query.filter_by(name="template").first() - assert item_style is not None - assert len(item_media.styles) == 1 - assert item_style.bg_image.filename == "bild.png" - - # Assert lazy loading - assert item_user.media[0].styles[0].name == "template" - def test_question(client): add_default_values() @@ -64,22 +51,16 @@ def test_question(client): db.session.commit() item_media = Media.query.filter_by(filename="bild.png").first() - # Add style - db.session.add(Style("template", "hej", item_media.id)) - db.session.commit() - item_style = Style.query.filter_by(name="template").first() - # Add competition item_city = City.query.filter_by(name="Linköping").first() - db.session.add(Competition("teknik8", 2020, item_style.id, item_city.id)) - db.session.add(Competition("teknik9", 2020, item_style.id, item_city.id)) + db.session.add(Competition("teknik8", 2020, item_city.id)) + db.session.add(Competition("teknik9", 2020, item_city.id)) db.session.commit() item_competition = Competition.query.filter_by(name="teknik8").first() item_competition_2 = Competition.query.filter_by(name="teknik9").first() assert item_competition is not None assert item_competition.id == 1 - assert item_competition.style.name == "template" assert item_competition.city.name == "Linköping" # Add teams diff --git a/server/tests/test_helpers.py b/server/tests/test_helpers.py index dd78fc8a..a10254ab 100644 --- a/server/tests/test_helpers.py +++ b/server/tests/test_helpers.py @@ -2,7 +2,7 @@ import json import app.core.controller as dbc from app.core import db -from app.core.models import City, MediaType, QuestionType, Role, Style, User +from app.core.models import City, MediaType, QuestionType, Role, User def add_default_values(): @@ -27,9 +27,6 @@ def add_default_values(): for item in cities: db.session.add(City(item)) - # Add deafult style - db.session.add(Style("Main Style", "")) - # Commit changes to db db.session.commit() -- GitLab