Skip to content

Commit

Permalink
[feature] Admin added UUID readonly field
Browse files Browse the repository at this point in the history
  • Loading branch information
nemesifier committed Jul 17, 2020
1 parent ca653de commit 7b9e319
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 4 deletions.
14 changes: 11 additions & 3 deletions openwisp_network_topology/admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
MultitenantOrgFilter,
MultitenantRelatedOrgFilter,
)
from openwisp_utils.admin import ReceiveUrlAdmin
from openwisp_utils.admin import ReceiveUrlAdmin, UUIDAdmin

from . import settings as app_settings
from .contextmanagers import log_failure
Expand Down Expand Up @@ -61,7 +61,7 @@ class Media:

@admin.register(Topology)
class TopologyAdmin(
MultitenantAdminMixin, BaseAdmin, ReceiveUrlAdmin, GraphVisualizerUrls
MultitenantAdminMixin, GraphVisualizerUrls, UUIDAdmin, ReceiveUrlAdmin, BaseAdmin
):
model = Topology
list_display = [
Expand All @@ -73,7 +73,14 @@ class TopologyAdmin(
'modified',
'organization',
]
readonly_fields = ['protocol', 'version', 'revision', 'metric', 'receive_url']
readonly_fields = [
'uuid',
'protocol',
'version',
'revision',
'metric',
'receive_url',
]
list_filter = [
'parser',
'strategy',
Expand All @@ -82,6 +89,7 @@ class TopologyAdmin(
search_fields = ['label', 'id']
actions = ['update_selected', 'unpublish_selected', 'publish_selected']
fields = [
'uuid',
'label',
'organization',
'parser',
Expand Down
5 changes: 4 additions & 1 deletion openwisp_network_topology/tests/test_admin.py
Original file line number Diff line number Diff line change
Expand Up @@ -189,11 +189,14 @@ def test_node_add(self):
response = self.client.get(path)
self.assertNotContains(response, 'Links to other nodes')

def test_topology_visualize_button(self):
def test_topology_change_form(self):
topology = self.topology_model.objects.first()
path = reverse('{0}_topology_change'.format(self.prefix), args=[topology.pk])
response = self.client.get(path)
self.assertContains(response, 'View topology graph')
self.assertContains(
response, '<div class="readonly">{0}</div>'.format(topology.pk)
)

def test_topology_visualize_view(self):
t = self.topology_model.objects.first()
Expand Down

0 comments on commit 7b9e319

Please sign in to comment.