# Path: djangolg/fields.py
# class IPPrefixField(forms.CharField):
# class IPAddressField(forms.CharField):
# class RouterChoiceField(forms.ModelChoiceField):
#     def to_python(self, value=None):
#     def to_python(self, value=None):
#     def label_from_instance(self, obj):
# 
# Path: djangolg/models.py
# class Router(models.Model):
# class Location(models.Model):
# class Credential(models.Model):
# class Log(models.Model):
#     def label(self):
#     def __str__(self):
#     def __unicode__(self):
#     def __str__(self):
#     def __unicode__(self):
#     def __str__(self):
#     def __unicode__(self):
#     def __str__(self):
#     def __unicode__(self):
#     CRED_TYPE_PASSWD = 0
#     CRED_TYPE_PUBKEY = 1
#     CRED_TYPE_CHOICES = (
#         (CRED_TYPE_PASSWD, "Password"),
#         (CRED_TYPE_PUBKEY, "Public Key"),
#     )
# 
# Path: tests/models.py
# class DummyRouterWithLabel(models.Router):
#     """Dummy router subclass for testing."""
# 
#     class Meta:
#         """Meta class."""
# 
#         proxy = True
# 
#     label = "router-label-string"
# 
# class DummyRouterWithoutLabel(models.Router):
#     """Dummy router subclass for testing."""
# 
#     class Meta:
#         """Meta class."""
# 
#         proxy = True
# 
#     @property
#     def label(self):
#         """Raise error."""
#         raise NotImplementedError


from django.core.exceptions import ValidationError
from django.test import TestCase
from djangolg import fields, models
from tests.models import DummyRouterWithLabel, DummyRouterWithoutLabel
# Copyright 2017 Workonline Communications (Pty) Ltd. All rights reserved.
#
# The contents of this file are licensed under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.
"""Field test classes for djangolg."""

from __future__ import print_function
from __future__ import unicode_literals





class FieldTestCase(TestCase):
    """Test djangolg fields."""

    def test_ip_prefix_field(self):
        """Test IPPrefixField deserialisation."""
        ipv4_prefix = "192.0.2.0/24"
        ipv6_prefix = "2001:db8::/32"
        not_prefix = "A.B.C.D/L"

# Path: djangolg/fields.py
# class IPPrefixField(forms.CharField):
# class IPAddressField(forms.CharField):
# class RouterChoiceField(forms.ModelChoiceField):
#     def to_python(self, value=None):
#     def to_python(self, value=None):
#     def label_from_instance(self, obj):
# 
# Path: djangolg/models.py
# class Router(models.Model):
# class Location(models.Model):
# class Credential(models.Model):
# class Log(models.Model):
#     def label(self):
#     def __str__(self):
#     def __unicode__(self):
#     def __str__(self):
#     def __unicode__(self):
#     def __str__(self):
#     def __unicode__(self):
#     def __str__(self):
#     def __unicode__(self):
#     CRED_TYPE_PASSWD = 0
#     CRED_TYPE_PUBKEY = 1
#     CRED_TYPE_CHOICES = (
#         (CRED_TYPE_PASSWD, "Password"),
#         (CRED_TYPE_PUBKEY, "Public Key"),
#     )
# 
# Path: tests/models.py
# class DummyRouterWithLabel(models.Router):
#     """Dummy router subclass for testing."""
# 
#     class Meta:
#         """Meta class."""
# 
#         proxy = True
# 
#     label = "router-label-string"
# 
# class DummyRouterWithoutLabel(models.Router):
#     """Dummy router subclass for testing."""
# 
#     class Meta:
#         """Meta class."""
# 
#         proxy = True
# 
#     @property
#     def label(self):
#         """Raise error."""
#         raise NotImplementedError


# Path: tests/test_fields.py
from django.core.exceptions import ValidationError
from django.test import TestCase
from djangolg import fields, models
from tests.models import DummyRouterWithLabel, DummyRouterWithoutLabel

# Copyright 2017 Workonline Communications (Pty) Ltd. All rights reserved.
#
# The contents of this file are licensed under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.
"""Field test classes for djangolg."""

from __future__ import print_function
from __future__ import unicode_literals





class FieldTestCase(TestCase):
    """Test djangolg fields."""

    def test_ip_prefix_field(self):
        """Test IPPrefixField deserialisation."""
        ipv4_prefix = "192.0.2.0/24"
        ipv6_prefix = "2001:db8::/32"
        not_prefix = "A.B.C.D/L"

        field = fields.IPPrefixField()