#!/usr/share/ucs-test/runner python3
## desc: Create dhcp/subnet with all attributes set
## tags: [udm]
## roles: [domaincontroller_master]
## exposure: careful
## packages:
##   - univention-config
##   - univention-directory-manager-tools


import univention.testing.utils as utils
import univention.testing.udm as udm_test
import univention.testing.strings as uts

if __name__ == '__main__':
	with udm_test.UCSTestUDM() as udm:
		dhcp_subnet_properties = {
			'subnet': '10.20.30.0',
			'subnetmask': '24',
			'broadcastaddress': '10.20.30.255',
			'range': '10.20.30.1 10.20.30.254'
		}

		dhcp_subnet = udm.create_object('dhcp/subnet', superordinate=udm.create_object('dhcp/service', service=uts.random_name()), **dhcp_subnet_properties)

		utils.verify_ldap_object(dhcp_subnet, {
			'cn': [dhcp_subnet_properties['subnet']],
			'dhcpNetMask': [dhcp_subnet_properties['subnetmask']],
			'univentionDhcpBroadcastAddress': [dhcp_subnet_properties['broadcastaddress']],
			'dhcpRange': [dhcp_subnet_properties['range']]
		})
