Coverage for ipam/forms/bulk_create.py: 100%

9 statements  

« prev     ^ index     » next       coverage.py v7.15.2, created at 2026-10-10 18:35 +0000

1from django import forms 

2from django.utils.translation import gettext_lazy as _ 

3 

4from ipam.constants import VLAN_VID_MAX, VLAN_VID_MIN 

5from utilities.forms.fields import ExpandableIPNetworkField, NumericArrayField 

6 

7__all__ = ( 

8 'IPNetworkBulkCreateForm', 

9 'VLANIDBulkCreateForm', 

10) 

11 

12 

13class IPNetworkBulkCreateForm(forms.Form): 

14 """ 

15 Pattern form for bulk-creating IP-based objects (addresses, prefixes). 

16 """ 

17 pattern = ExpandableIPNetworkField( 

18 label=_('Pattern') 

19 ) 

20 

21 

22class VLANIDBulkCreateForm(forms.Form): 

23 pattern = NumericArrayField( 

24 base_field=forms.IntegerField( 

25 min_value=VLAN_VID_MIN, 

26 max_value=VLAN_VID_MAX 

27 ), 

28 label=_('VLAN IDs'), 

29 help_text=_( 

30 'Enter VLAN IDs and ranges separated by commas. ' 

31 'Example: 100,200-210,3100-3299' 

32 ) 

33 )