Skip to content

Commit 100f858

Browse files
codesankalppandafy
authored andcommitted
[Fix] Save config updated details in device update API #658
Fixes #658 (cherry picked from commit 0c0da6b)
1 parent a97284b commit 100f858

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

openwisp_controller/config/api/serializers.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -254,6 +254,7 @@ def update(self, instance, validated_data):
254254
instance.config.vpnclient_set.exclude(vpn__in=vpn_list).delete()
255255
instance.config.templates.clear()
256256
instance.config.templates.add(*[])
257+
instance.config.save()
257258

258259
elif hasattr(instance, 'config') and validated_data.get('organization'):
259260
if instance.organization != validated_data.get('organization'):

openwisp_controller/config/tests/test_api.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,7 @@ def test_device_put_api(self):
200200
'organization': org.pk,
201201
'mac_address': d1.mac_address,
202202
'config': {
203-
'backend': 'netjsonconfig.OpenWrt',
203+
'backend': 'netjsonconfig.OpenWisp',
204204
'status': 'modified',
205205
'templates': [],
206206
'context': '{}',
@@ -212,6 +212,11 @@ def test_device_put_api(self):
212212
self.assertEqual(r.status_code, 200)
213213
self.assertEqual(r.data['name'], 'change-test-device')
214214
self.assertEqual(r.data['organization'], org.pk)
215+
self.assertEqual(r.data['config']['backend'], 'netjsonconfig.OpenWisp')
216+
d1.refresh_from_db()
217+
self.assertEqual(d1.name, 'change-test-device')
218+
self.assertEqual(d1.organization, org)
219+
self.assertEqual(d1.config.backend, 'netjsonconfig.OpenWisp')
215220

216221
# test device with VPN-client type template assigned to it
217222
def test_device_with_vpn_client_template_assigned(self):

0 commit comments

Comments
 (0)