mirror of
https://github.com/netbox-community/netbox.git
synced 2025-07-14 09:51:22 -06:00
For #18352, adds choices, model field, migration
Adds: - dcim.choices.PowerOutletStatusChoices - dcim.models.device_components.PowerOutlet.status field with `choices` set to PowerOutletStatusChoices - adds migration for PowerOutlet.status field - updates breaking view tests
This commit is contained in:
parent
b9b42cd3b4
commit
dbac09349b
@ -1627,6 +1627,23 @@ class PowerFeedPhaseChoices(ChoiceSet):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
#
|
||||||
|
# PowerOutlets
|
||||||
|
#
|
||||||
|
class PowerOutletStatusChoices(ChoiceSet):
|
||||||
|
key = 'PowerOutlet.status'
|
||||||
|
|
||||||
|
STATUS_ENABLED = 'enabled'
|
||||||
|
STATUS_DISABLED = 'disabled'
|
||||||
|
STATUS_FAULTY = 'faulty'
|
||||||
|
|
||||||
|
CHOICES = [
|
||||||
|
(STATUS_ENABLED, _('Enabled'), 'green'),
|
||||||
|
(STATUS_DISABLED, _('Disabled'), 'red'),
|
||||||
|
(STATUS_FAULTY, _('Faulty'), 'gray'),
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# VDC
|
# VDC
|
||||||
#
|
#
|
||||||
|
16
netbox/dcim/migrations/0201_add_power_outlet_status.py
Normal file
16
netbox/dcim/migrations/0201_add_power_outlet_status.py
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('dcim', '0200_populate_mac_addresses'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='poweroutlet',
|
||||||
|
name='status',
|
||||||
|
field=models.CharField(default='enabled', max_length=50),
|
||||||
|
),
|
||||||
|
]
|
@ -449,6 +449,12 @@ class PowerOutlet(ModularComponentModel, CabledObjectModel, PathEndpoint, Tracki
|
|||||||
"""
|
"""
|
||||||
A physical power outlet (output) within a Device which provides power to a PowerPort.
|
A physical power outlet (output) within a Device which provides power to a PowerPort.
|
||||||
"""
|
"""
|
||||||
|
status = models.CharField(
|
||||||
|
verbose_name=_('status'),
|
||||||
|
max_length=50,
|
||||||
|
choices=PowerOutletStatusChoices,
|
||||||
|
default=PowerOutletStatusChoices.STATUS_ENABLED
|
||||||
|
)
|
||||||
type = models.CharField(
|
type = models.CharField(
|
||||||
verbose_name=_('type'),
|
verbose_name=_('type'),
|
||||||
max_length=50,
|
max_length=50,
|
||||||
|
@ -2513,6 +2513,7 @@ class PowerOutletTestCase(ViewTestCases.DeviceComponentViewTestCase):
|
|||||||
'device': device.pk,
|
'device': device.pk,
|
||||||
'name': 'Power Outlet X',
|
'name': 'Power Outlet X',
|
||||||
'type': PowerOutletTypeChoices.TYPE_IEC_C13,
|
'type': PowerOutletTypeChoices.TYPE_IEC_C13,
|
||||||
|
'status': PowerOutletStatusChoices.STATUS_ENABLED,
|
||||||
'power_port': powerports[1].pk,
|
'power_port': powerports[1].pk,
|
||||||
'feed_leg': PowerOutletFeedLegChoices.FEED_LEG_B,
|
'feed_leg': PowerOutletFeedLegChoices.FEED_LEG_B,
|
||||||
'description': 'A power outlet',
|
'description': 'A power outlet',
|
||||||
@ -2523,6 +2524,7 @@ class PowerOutletTestCase(ViewTestCases.DeviceComponentViewTestCase):
|
|||||||
'device': device.pk,
|
'device': device.pk,
|
||||||
'name': 'Power Outlet [4-6]',
|
'name': 'Power Outlet [4-6]',
|
||||||
'type': PowerOutletTypeChoices.TYPE_IEC_C13,
|
'type': PowerOutletTypeChoices.TYPE_IEC_C13,
|
||||||
|
'status': PowerOutletStatusChoices.STATUS_ENABLED,
|
||||||
'power_port': powerports[1].pk,
|
'power_port': powerports[1].pk,
|
||||||
'feed_leg': PowerOutletFeedLegChoices.FEED_LEG_B,
|
'feed_leg': PowerOutletFeedLegChoices.FEED_LEG_B,
|
||||||
'description': 'A power outlet',
|
'description': 'A power outlet',
|
||||||
@ -2531,6 +2533,7 @@ class PowerOutletTestCase(ViewTestCases.DeviceComponentViewTestCase):
|
|||||||
|
|
||||||
cls.bulk_edit_data = {
|
cls.bulk_edit_data = {
|
||||||
'type': PowerOutletTypeChoices.TYPE_IEC_C15,
|
'type': PowerOutletTypeChoices.TYPE_IEC_C15,
|
||||||
|
'status': PowerOutletStatusChoices.STATUS_ENABLED,
|
||||||
'power_port': powerports[1].pk,
|
'power_port': powerports[1].pk,
|
||||||
'feed_leg': PowerOutletFeedLegChoices.FEED_LEG_B,
|
'feed_leg': PowerOutletFeedLegChoices.FEED_LEG_B,
|
||||||
'description': 'New description',
|
'description': 'New description',
|
||||||
|
Loading…
Reference in New Issue
Block a user