Skip to content
Snippets Groups Projects
Unverified Commit 3ec790f7 authored by Daniel's avatar Daniel
Browse files

FIX: get_list_datatype returns correct value

parent 87896e2f
No related branches found
No related tags found
No related merge requests found
......@@ -3,7 +3,9 @@
# ** header v3.0
# This file is a part of the CaosDB Project.
#
# Copyright (C) 2020 IndiScale GmbH
# Copyright (C) 2020 Henrik tom Wörden, IndiScale GmbH
# Copyright (C) 2020 Daniel Hornung (d.hornung@indiscale.com)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
......@@ -43,7 +45,7 @@ def LIST(datatype):
def get_list_datatype(datatype):
""" returns the datatype of the elements in the list """
match = re.match("LIST(<|&lt;)(?P<datatype>.*)(>|&gt;)", "LISTING")
match = re.match("LIST(<|&lt;)(?P<datatype>.*)(>|&gt;)", datatype)
if match is not None:
return match.group("datatype")
......@@ -65,7 +67,6 @@ def is_reference(datatype):
"""
if datatype in [DOUBLE, BOOLEAN, INTEGER, TEXT, DATETIME]:
return False
elif is_list_datatype(datatype):
return is_reference(get_list_datatype(datatype))
......
from caosdb import LIST
# ** header v3.0
# This file is a part of the CaosDB Project.
#
# Copyright (c) 2020 IndiScale GmbH
# Copyright (c) 2020 Daniel Hornung (d.hornung@indiscale.com)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
# ** end header
import caosdb as db
from caosdb.common import datatype
def test_list():
assert LIST("RT") == "LIST<RT>"
assert db.LIST("RT") == "LIST<RT>"
def test_list_utilites():
"""Test for example if get_list_datatype works."""
dtype = db.LIST(db.INTEGER)
assert datatype.get_list_datatype(dtype) == db.INTEGER
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment