1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
# -*- coding: utf-8 -*-
"""Tests for the run-time object."""
import unittest
from dtfabric.runtime import runtime
from tests import test_lib
class StructureValuesClassFactoryTest(test_lib.BaseTestCase):
"""Structure values class factory tests."""
# pylint: disable=protected-access
def testCreateClassTemplate(self):
"""Tests the _CreateClassTemplate function."""
definitions_file = self._GetTestFilePath(['structure.yaml'])
definitions_registry = self._CreateDefinitionRegistryFromFile(
definitions_file)
data_type_definition = definitions_registry.GetDefinitionByName('point3d')
class_template = runtime.StructureValuesClassFactory._CreateClassTemplate(
data_type_definition)
self.assertIsNotNone(class_template)
# TODO: implement error conditions.
def testIsIdentifier(self):
"""Tests the _IsIdentifier function."""
result = runtime.StructureValuesClassFactory._IsIdentifier('valid')
self.assertTrue(result)
result = runtime.StructureValuesClassFactory._IsIdentifier('_valid')
self.assertTrue(result)
result = runtime.StructureValuesClassFactory._IsIdentifier('valid1')
self.assertTrue(result)
result = runtime.StructureValuesClassFactory._IsIdentifier('')
self.assertFalse(result)
result = runtime.StructureValuesClassFactory._IsIdentifier('0invalid')
self.assertFalse(result)
result = runtime.StructureValuesClassFactory._IsIdentifier('in-valid')
self.assertFalse(result)
def testValidateDataTypeDefinition(self):
"""Tests the _ValidateDataTypeDefinition function."""
definitions_file = self._GetTestFilePath(['structure.yaml'])
definitions_registry = self._CreateDefinitionRegistryFromFile(
definitions_file)
data_type_definition = definitions_registry.GetDefinitionByName('point3d')
runtime.StructureValuesClassFactory._ValidateDataTypeDefinition(
data_type_definition)
# TODO: implement error conditions.
def testCreateClass(self):
"""Tests the CreateClass function."""
definitions_file = self._GetTestFilePath(['structure.yaml'])
definitions_registry = self._CreateDefinitionRegistryFromFile(
definitions_file)
data_type_definition = definitions_registry.GetDefinitionByName('point3d')
structure_values_class = runtime.StructureValuesClassFactory.CreateClass(
data_type_definition)
self.assertIsNotNone(structure_values_class)
if __name__ == '__main__':
unittest.main()
|