13044 add tests

This commit is contained in:
Arthur 2023-07-24 20:10:14 +07:00
parent a771061c45
commit 33f7d59148
3 changed files with 60 additions and 1 deletions

View File

@ -151,6 +151,12 @@ class UserTokenForm(BootstrapMixin, forms.ModelForm):
key = forms.CharField(
label=_('Key'), required=False, help_text=_("If no key is provided, one will be generated automatically.")
)
user = forms.ModelChoiceField(
queryset=get_user_model().objects.order_by(
'username'
),
required=False
)
allowed_ips = SimpleArrayField(
base_field=IPNetworkFormField(validators=[prefix_validator]),
required=False,
@ -165,6 +171,7 @@ class UserTokenForm(BootstrapMixin, forms.ModelForm):
model = Token
fields = [
'key',
'user',
'write_enabled',
'expires',
'description',

View File

@ -149,3 +149,55 @@ class ObjectPermissionTestCase(
cls.bulk_edit_data = {
'description': 'New description',
}
class TokenTestCase(
ViewTestCases.GetObjectViewTestCase,
ViewTestCases.CreateObjectViewTestCase,
ViewTestCases.EditObjectViewTestCase,
ViewTestCases.DeleteObjectViewTestCase,
ViewTestCases.ListObjectsViewTestCase,
ViewTestCases.BulkImportObjectsViewTestCase,
ViewTestCases.BulkEditObjectsViewTestCase,
ViewTestCases.BulkDeleteObjectsViewTestCase,
):
model = UserToken
maxDiff = None
@classmethod
def setUpTestData(cls):
users = (
NetBoxUser(username='username1', first_name='first1', last_name='last1', email='user1@foo.com', password='pass1xxx'),
NetBoxUser(username='username2', first_name='first2', last_name='last2', email='user2@foo.com', password='pass2xxx'),
)
NetBoxUser.objects.bulk_create(users)
tokens = (
UserToken(key='12345679012345678901234567890123456789A', user=users[0]),
UserToken(key='12345679012345678901234567890123456789B', user=users[0]),
UserToken(key='12345679012345678901234567890123456789C', user=users[1]),
)
UserToken.objects.bulk_create(tokens)
cls.form_data = {
'user': users[0].pk,
'description': 'testdescription',
}
cls.csv_data = (
"key,user,description",
f"12345679012345678901234567890123456789D,{users[0]},testdescriptionD",
f"12345679012345678901234567890123456789D,{users[1]},testdescriptionE",
f"12345679012345678901234567890123456789D,{users[1]},testdescriptionF",
)
cls.csv_update_data = (
"id,description",
f"{tokens[0].pk},testdescriptionH",
f"{tokens[1].pk},testdescriptionI",
f"{tokens[2].pk},testdescriptionJ",
)
cls.bulk_edit_data = {
'description': 'newdescription',
}

View File

@ -19,7 +19,7 @@ urlpatterns = [
path('user-tokens/', views.UserTokenListView.as_view(), name='usertoken_list'),
path('user-tokens/add/', views.UserTokenEditView.as_view(), name='usertoken_add'),
path('user-tokens/import/', views.UserTokenBulkImportView.as_view(), name='usertoken_import'),
path('user-tokens/edit/', views.UserTokenBulkEditView.as_view(), name='user_tokenbulk_edit'),
path('user-tokens/edit/', views.UserTokenBulkEditView.as_view(), name='usertoken_bulk_edit'),
path('user-tokens/delete/', views.UserTokenBulkDeleteView.as_view(), name='usertoken_bulk_delete'),
path('user-tokens/<int:pk>/', include(get_model_urls('users', 'usertoken'))),