From f525411ace8d08ba85c7f085f4e47d591415c782 Mon Sep 17 00:00:00 2001 From: Jon Date: Mon, 4 Aug 2025 16:38:59 +0930 Subject: [PATCH] refactor(test): remove xfail during `pytest_generate_tests` before parameterizing ref: #938 --- app/conftest.py | 9 +++++++++ .../test_unit_ticket_comment_base_model.py | 2 +- .../tests/unit/git_group/test_unit_git_group_model.py | 6 +++--- .../test_unit_gitlab_repository_model.py | 2 +- .../test_unit_software_enable_feature_flag_model.py | 2 +- .../unit/app_settings/test_unit_app_settings_model.py | 4 ++-- .../unit/user_settings/test_unit_user_settings_model.py | 4 ++-- 7 files changed, 19 insertions(+), 10 deletions(-) diff --git a/app/conftest.py b/app/conftest.py index d11dfcc9..1f075290 100644 --- a/app/conftest.py +++ b/app/conftest.py @@ -262,6 +262,15 @@ def pytest_generate_tests(metafunc): if len(arg_values) > 0: + # Get the test method + test_func = getattr(metafunc.cls, metafunc.definition.name, None) + + # Remove previous xfail mark if present + if test_func and hasattr(test_func, 'pytestmark'): + test_func.pytestmark = [ + mark for mark in test_func.pytestmark if mark.name != 'xfail' + ] + metafunc.parametrize( argnames = [ *fixture_parameters diff --git a/app/core/tests/unit/ticket_comment_base/test_unit_ticket_comment_base_model.py b/app/core/tests/unit/ticket_comment_base/test_unit_ticket_comment_base_model.py index fc2330cf..3f72bcca 100644 --- a/app/core/tests/unit/ticket_comment_base/test_unit_ticket_comment_base_model.py +++ b/app/core/tests/unit/ticket_comment_base/test_unit_ticket_comment_base_model.py @@ -148,7 +148,7 @@ class TicketCommentBaseModelTestCases( "is_closed": { 'blank': False, 'default': False, - 'field_type': models.fields.IntegerField, + 'field_type': models.fields.BooleanField, 'null': False, 'unique': False, }, diff --git a/app/devops/tests/unit/git_group/test_unit_git_group_model.py b/app/devops/tests/unit/git_group/test_unit_git_group_model.py index 7ea53421..c7833143 100644 --- a/app/devops/tests/unit/git_group/test_unit_git_group_model.py +++ b/app/devops/tests/unit/git_group/test_unit_git_group_model.py @@ -54,7 +54,7 @@ class GitGroupModelTestCases( 'name': { 'blank': False, 'default': models.fields.NOT_PROVIDED, - 'field_type': models.IntegerField, + 'field_type': models.CharField, 'length': 80, 'null': False, 'unique': False, @@ -62,7 +62,7 @@ class GitGroupModelTestCases( 'path': { 'blank': False, 'default': models.fields.NOT_PROVIDED, - 'field_type': models.IntegerField, + 'field_type': models.CharField, 'length': 80, 'null': False, 'unique': False, @@ -70,7 +70,7 @@ class GitGroupModelTestCases( 'description': { 'blank': True, 'default': models.fields.NOT_PROVIDED, - 'field_type': models.IntegerField, + 'field_type': models.TextField, 'max_length': 80, 'null': True, 'unique': False, diff --git a/app/devops/tests/unit/gitlab_repository/test_unit_gitlab_repository_model.py b/app/devops/tests/unit/gitlab_repository/test_unit_gitlab_repository_model.py index fa071543..f11a83da 100644 --- a/app/devops/tests/unit/gitlab_repository/test_unit_gitlab_repository_model.py +++ b/app/devops/tests/unit/gitlab_repository/test_unit_gitlab_repository_model.py @@ -25,7 +25,7 @@ class GitLabRepositoryBaseModelTestCases( 'visibility': { 'blank': False, 'default': models.NOT_PROVIDED, - 'field_type': models.BooleanField, + 'field_type': models.IntegerField, 'null': False, 'unique': False, } diff --git a/app/devops/tests/unit/software_enable_feature_flag/test_unit_software_enable_feature_flag_model.py b/app/devops/tests/unit/software_enable_feature_flag/test_unit_software_enable_feature_flag_model.py index 5c50f4c1..778ae19e 100644 --- a/app/devops/tests/unit/software_enable_feature_flag/test_unit_software_enable_feature_flag_model.py +++ b/app/devops/tests/unit/software_enable_feature_flag/test_unit_software_enable_feature_flag_model.py @@ -53,7 +53,7 @@ class SoftwareEnableFeatureFlagModelTestCases( 'enabled': { 'blank': False, 'default': False, - 'field_type': models.IntegerField, + 'field_type': models.BooleanField, 'null': False, 'unique': False, }, diff --git a/app/settings/tests/unit/app_settings/test_unit_app_settings_model.py b/app/settings/tests/unit/app_settings/test_unit_app_settings_model.py index 38abfdd1..b7c491ea 100644 --- a/app/settings/tests/unit/app_settings/test_unit_app_settings_model.py +++ b/app/settings/tests/unit/app_settings/test_unit_app_settings_model.py @@ -36,14 +36,14 @@ class AppSettingsModelTestCases( 'model_notes': { 'blank': models.fields.NOT_PROVIDED, 'default': models.fields.NOT_PROVIDED, - 'field_type': models.CharField, + 'field_type': models.fields.NOT_PROVIDED, 'null': models.fields.NOT_PROVIDED, 'unique': models.fields.NOT_PROVIDED, }, 'organization': { 'blank': models.fields.NOT_PROVIDED, 'default': models.fields.NOT_PROVIDED, - 'field_type': models.CharField, + 'field_type': models.fields.NOT_PROVIDED, 'null': models.fields.NOT_PROVIDED, 'unique': models.fields.NOT_PROVIDED, }, diff --git a/app/settings/tests/unit/user_settings/test_unit_user_settings_model.py b/app/settings/tests/unit/user_settings/test_unit_user_settings_model.py index 5ed1082c..2a27ce87 100644 --- a/app/settings/tests/unit/user_settings/test_unit_user_settings_model.py +++ b/app/settings/tests/unit/user_settings/test_unit_user_settings_model.py @@ -43,14 +43,14 @@ class UserSettingsModelTestCases( 'model_notes': { 'blank': models.fields.NOT_PROVIDED, 'default': models.fields.NOT_PROVIDED, - 'field_type': models.CharField, + 'field_type': models.fields.NOT_PROVIDED, 'null': models.fields.NOT_PROVIDED, 'unique': models.fields.NOT_PROVIDED, }, 'organization': { 'blank': models.fields.NOT_PROVIDED, 'default': models.fields.NOT_PROVIDED, - 'field_type': models.CharField, + 'field_type': models.fields.NOT_PROVIDED, 'null': models.fields.NOT_PROVIDED, 'unique': models.fields.NOT_PROVIDED, },