def setUp(self): # noqa # Always see the diff # https://docs.python.org/2/library/unittest.html#unittest.TestCase.maxDiff self.maxDiff = None from c2cgeoportal.models import DBSession, \ Theme, LayerGroup, Interface, LayerInternalWMS TestPoint.__table__.create(bind=DBSession.bind, checkfirst=True) main = Interface(name=u"main") layer_wms_1 = LayerInternalWMS(name=u"__test_layer_time_1", public=True) layer_wms_1.layer = "test_wmstime" layer_wms_1.time_mode = "single" layer_wms_1.interfaces = [main] layer_wms_2 = LayerInternalWMS(name=u"__test_layer_time_2", public=True) layer_wms_2.layer = "test_wmstime2" layer_wms_2.time_mode = "single" layer_wms_2.interfaces = [main] layer_wms_group = LayerInternalWMS(name=u"__test_layer_time_group", public=True) layer_wms_group.layer = "test_wmstimegroup" layer_wms_group.time_mode = "range" layer_wms_group.time_widget = "datepicker" layer_wms_group.interfaces = [main] layer_group_1 = LayerGroup(name=u"__test_layer_group_1") layer_group_1.children = [layer_wms_1, layer_wms_2] layer_group_2 = LayerGroup(name=u"__test_layer_group_2") layer_group_2.children = [layer_wms_1] layer_group_3 = LayerGroup(name=u"__test_layer_group_3") layer_group_3.children = [layer_wms_1, layer_wms_2, layer_wms_group] layer_group_4 = LayerGroup(name=u"__test_layer_group_4") layer_group_4.children = [layer_wms_group] theme = Theme(name=u"__test_theme") theme.interfaces = [main] theme.children = [ layer_group_1, layer_group_2, layer_group_3, layer_group_4 ] DBSession.add_all([theme]) transaction.commit()
def setUp(self): # noqa # Always see the diff # https://docs.python.org/2/library/unittest.html#unittest.TestCase.maxDiff self.maxDiff = None from c2cgeoportal.models import DBSession, \ Theme, LayerGroup, Functionality, Interface, \ LayerV1, LayerInternalWMS, LayerExternalWMS, LayerWMTS, \ UIMetadata, WMTSDimension main = Interface(name=u'main') mobile = Interface(name=u'mobile') min_levels = Interface(name=u'min_levels') layer_v1 = LayerV1(name=u'__test_layer_v1', public=True) layer_v1.interfaces = [main] layer_v1.ui_metadata = [UIMetadata('test', 'v1')] layer_internal_wms = LayerInternalWMS(name=u'__test_layer_internal_wms', public=True) layer_internal_wms.layer = "__test_layer_internal_wms" layer_internal_wms.interfaces = [main, min_levels] layer_internal_wms.ui_metadata = [UIMetadata('test', 'internal_wms')] layer_external_wms = LayerExternalWMS(name=u'__test_layer_external_wms', public=True) layer_external_wms.interfaces = [main] layer_external_wms.ui_metadata = [UIMetadata('test', 'external_wms')] layer_wmts = LayerWMTS(name=u'__test_layer_wmts', public=True) layer_wmts.interfaces = [main, mobile] layer_wmts.ui_metadata = [UIMetadata('test', 'wmts')] layer_wmts.dimensions = [WMTSDimension('year', '2015')] layer_group_1 = LayerGroup(name=u'__test_layer_group_1') layer_group_1.children = [layer_v1, layer_internal_wms, layer_external_wms, layer_wmts] layer_group_1.ui_metadata = [UIMetadata('test', 'group_1')] layer_group_2 = LayerGroup(name=u'__test_layer_group_2') layer_group_2.children = [layer_wmts, layer_internal_wms, layer_external_wms] layer_group_3 = LayerGroup(name=u'__test_layer_group_3') layer_group_3.children = [layer_wmts, layer_internal_wms, layer_external_wms] layer_group_4 = LayerGroup(name=u'__test_layer_group_4') layer_group_4.children = [layer_group_2] theme = Theme(name=u'__test_theme') theme.interfaces = [main, mobile] theme.ui_metadata = [UIMetadata('test', 'theme')] theme.children = [ layer_group_1, layer_group_2 ] theme_layer = Theme(name=u'__test_theme_layer') theme_layer.interfaces = [min_levels] theme_layer.children = [ layer_internal_wms ] functionality1 = Functionality(name=u'test_name', value=u'test_value_1') functionality2 = Functionality(name=u'test_name', value=u'test_value_2') theme.functionalities = [functionality1, functionality2] DBSession.add_all([theme, theme_layer]) transaction.commit()
def setUp(self): # noqa # Always see the diff # https://docs.python.org/2/library/unittest.html#unittest.TestCase.maxDiff self.maxDiff = None from c2cgeoportal.models import DBSession, \ Theme, LayerGroup, Functionality, Interface, \ LayerV1, LayerInternalWMS, LayerExternalWMS, LayerWMTS, \ UIMetadata, WMTSDimension main = Interface(name=u"main") mobile = Interface(name=u"mobile") min_levels = Interface(name=u"min_levels") layer_v1 = LayerV1(name=u"__test_layer_v1", public=True) layer_v1.interfaces = [main] layer_v1.ui_metadata = [UIMetadata("test", "v1")] layer_internal_wms = LayerInternalWMS(name=u"__test_layer_internal_wms", public=True) layer_internal_wms.layer = "__test_layer_internal_wms" layer_internal_wms.interfaces = [main, min_levels] layer_internal_wms.ui_metadata = [UIMetadata("test", "internal_wms")] layer_external_wms = LayerExternalWMS(name=u"__test_layer_external_wms", public=True) layer_external_wms.interfaces = [main] layer_external_wms.ui_metadata = [UIMetadata("test", "external_wms")] layer_wmts = LayerWMTS(name=u"__test_layer_wmts", public=True) layer_wmts.interfaces = [main, mobile] layer_wmts.ui_metadata = [UIMetadata("test", "wmts")] layer_wmts.dimensions = [WMTSDimension("year", "2015")] layer_group_1 = LayerGroup(name=u"__test_layer_group_1") layer_group_1.children = [layer_v1, layer_internal_wms, layer_external_wms, layer_wmts] layer_group_1.ui_metadata = [UIMetadata("test", "group_1")] layer_group_2 = LayerGroup(name=u"__test_layer_group_2") layer_group_2.children = [layer_wmts, layer_internal_wms, layer_external_wms] layer_group_3 = LayerGroup(name=u"__test_layer_group_3") layer_group_3.children = [layer_wmts, layer_internal_wms, layer_external_wms] layer_group_4 = LayerGroup(name=u"__test_layer_group_4") layer_group_4.children = [layer_group_2] theme = Theme(name=u"__test_theme") theme.interfaces = [main, mobile] theme.ui_metadata = [UIMetadata("test", "theme")] theme.children = [ layer_group_1, layer_group_2 ] theme_layer = Theme(name=u"__test_theme_layer") theme_layer.interfaces = [min_levels] theme_layer.children = [ layer_internal_wms ] functionality1 = Functionality(name=u"test_name", value=u"test_value_1") functionality2 = Functionality(name=u"test_name", value=u"test_value_2") theme.functionalities = [functionality1, functionality2] DBSession.add_all([theme, theme_layer]) transaction.commit()
def layer_v1tov2(session, layer): # pragma: nocover from c2cgeoportal.models import LayerInternalWMS, LayerExternalWMS, LayerWMTS, \ LayergroupTreeitem, WMTSDimension if layer.layer_type == "internal WMS": new_layer = LayerInternalWMS() elif layer.layer_type == "external WMS": new_layer = LayerExternalWMS() elif layer.layer_type == "WMTS": new_layer = LayerWMTS() new_layer.name = layer.name new_layer.public = layer.public new_layer.geo_table = layer.geo_table new_layer.interfaces = layer.interfaces for link in layer.parents_relation: new_link = LayergroupTreeitem() new_link.ordering = link.ordering new_link.treegroup_id = link.treegroup_id new_link.item = new_layer if layer.layer_type[-4:] == " WMS": new_layer.layer = layer.name new_layer.image_type = layer.image_type new_layer.style = layer.style new_layer.time_mode = layer.time_mode new_layer.time_widget = layer.time_widget if layer.layer_type == "external WMS": new_layer.url = layer.url new_layer.is_single_tile = layer.is_single_tile elif layer.layer_type == "WMTS": new_layer.url = layer.url new_layer.layer = layer.name new_layer.style = layer.style new_layer.matrix_set = layer.matrix_set new_layer.image_type = layer.image_type if layer.dimensions is not None: dimensions = loads(layer.dimensions) for name, value in dimensions.items(): session.add(WMTSDimension(name, value, new_layer)) layer_add_ui_metadata(layer, new_layer, session) session.add(new_layer)