def put(self, ctx, category_name): category = tag_categories.get_category_by_name(category_name) if ctx.has_param('name'): auth.verify_privilege(ctx.user, 'tag_categories:edit:name') tag_categories.update_category_name( category, ctx.get_param_as_string('name')) if ctx.has_param('color'): auth.verify_privilege(ctx.user, 'tag_categories:edit:color') tag_categories.update_category_color( category, ctx.get_param_as_string('color')) ctx.session.flush() snapshots.save_entity_modification(category, ctx.user) ctx.session.commit() tags.export_to_json() return tag_categories.serialize_category_with_details(category)
def update_tag_category(ctx: rest.Context, params: Dict[str, str]) -> rest.Response: category = tag_categories.get_category_by_name(params["category_name"], lock=True) versions.verify_version(category, ctx) versions.bump_version(category) if ctx.has_param("name"): auth.verify_privilege(ctx.user, "tag_categories:edit:name") tag_categories.update_category_name(category, ctx.get_param_as_string("name")) if ctx.has_param("color"): auth.verify_privilege(ctx.user, "tag_categories:edit:color") tag_categories.update_category_color(category, ctx.get_param_as_string("color")) ctx.session.flush() snapshots.modify(category, ctx.user) ctx.session.commit() return _serialize(ctx, category)
def update_tag_category(ctx, params): category = tag_categories.get_category_by_name( params['category_name'], lock=True) versions.verify_version(category, ctx) versions.bump_version(category) if ctx.has_param('name'): auth.verify_privilege(ctx.user, 'tag_categories:edit:name') tag_categories.update_category_name( category, ctx.get_param_as_string('name')) if ctx.has_param('color'): auth.verify_privilege(ctx.user, 'tag_categories:edit:color') tag_categories.update_category_color( category, ctx.get_param_as_string('color')) ctx.session.flush() snapshots.modify(category, ctx.user) ctx.session.commit() tags.export_to_json() return _serialize(ctx, category)
def update_tag_category( ctx: rest.Context, params: Dict[str, str]) -> rest.Response: category = tag_categories.get_category_by_name( params['category_name'], lock=True) versions.verify_version(category, ctx) versions.bump_version(category) if ctx.has_param('name'): auth.verify_privilege(ctx.user, 'tag_categories:edit:name') tag_categories.update_category_name( category, ctx.get_param_as_string('name')) if ctx.has_param('color'): auth.verify_privilege(ctx.user, 'tag_categories:edit:color') tag_categories.update_category_color( category, ctx.get_param_as_string('color')) ctx.session.flush() snapshots.modify(category, ctx.user) ctx.session.commit() return _serialize(ctx, category)
def test_update_category_color(attempt, tag_category_factory): category = tag_category_factory() tag_categories.update_category_color(category, attempt) assert category.color == attempt
def test_update_category_color_with_invalid_string(tag_category_factory): category = tag_category_factory() with pytest.raises(tag_categories.InvalidTagCategoryColorError): tag_categories.update_category_color(category, "NOPE")
def test_update_category_color_with_too_long_string(tag_category_factory): category = tag_category_factory() with pytest.raises(tag_categories.InvalidTagCategoryColorError): tag_categories.update_category_color(category, "a" * 3000)
def test_update_category_color_with_invalid_string(tag_category_factory): category = tag_category_factory() with pytest.raises(tag_categories.InvalidTagCategoryColorError): tag_categories.update_category_color(category, 'NOPE')
def test_update_category_color_with_too_long_string(tag_category_factory): category = tag_category_factory() with pytest.raises(tag_categories.InvalidTagCategoryColorError): tag_categories.update_category_color(category, 'a' * 3000)