mirror of https://gitlab.com/pamhyr/pamhyr2
Compare commits
4 Commits
36fe9a51c4
...
f0ac170d2f
| Author | SHA1 | Date |
|---|---|---|
|
|
f0ac170d2f | |
|
|
b154e3d03b | |
|
|
633e5a53dc | |
|
|
3f98cf8625 |
|
|
@ -33,19 +33,17 @@ logger = logging.getLogger()
|
|||
|
||||
class BoundaryConditionAdisTS(SQLSubModel):
|
||||
_sub_classes = []
|
||||
_id_cnt = 0
|
||||
|
||||
def __init__(self, id: int = -1,
|
||||
pollutant: int = -1, status=None):
|
||||
super(BoundaryConditionAdisTS, self).__init__()
|
||||
pollutant: int = -1, status=None,
|
||||
owner_scenario=-1):
|
||||
super(BoundaryConditionAdisTS, self).__init__(
|
||||
id=id, status=status,
|
||||
owner_scenario=owner_scenario
|
||||
)
|
||||
|
||||
self._status = status
|
||||
|
||||
if id == -1:
|
||||
self.id = BoundaryConditionAdisTS._id_cnt
|
||||
else:
|
||||
self.id = id
|
||||
|
||||
self._type = ""
|
||||
self._node = None
|
||||
self._pollutant = pollutant
|
||||
|
|
@ -53,9 +51,6 @@ class BoundaryConditionAdisTS(SQLSubModel):
|
|||
self._header = []
|
||||
self._types = [self.time_convert, float]
|
||||
|
||||
BoundaryConditionAdisTS._id_cnt = max(
|
||||
BoundaryConditionAdisTS._id_cnt + 1, self.id)
|
||||
|
||||
@classmethod
|
||||
def _db_create(cls, execute):
|
||||
execute("""
|
||||
|
|
@ -83,6 +78,11 @@ class BoundaryConditionAdisTS(SQLSubModel):
|
|||
|
||||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 7:
|
||||
cls._db_create(execute)
|
||||
|
||||
return True
|
||||
|
||||
@classmethod
|
||||
|
|
|
|||
|
|
@ -33,29 +33,22 @@ class D90AdisTS(SQLSubModel):
|
|||
_sub_classes = [
|
||||
D90AdisTSSpec,
|
||||
]
|
||||
_id_cnt = 0
|
||||
|
||||
def __init__(self, id: int = -1, name: str = "default",
|
||||
status=None):
|
||||
super(D90AdisTS, self).__init__()
|
||||
status=None,
|
||||
owner_scenario=-1):
|
||||
super(D90AdisTS, self).__init__(
|
||||
id=id, status=status,
|
||||
owner_scenario=owner_scenario
|
||||
)
|
||||
|
||||
self._status = status
|
||||
|
||||
if id == -1:
|
||||
self.id = D90AdisTS._id_cnt
|
||||
else:
|
||||
self.id = id
|
||||
|
||||
self._name = name
|
||||
self._d90 = None
|
||||
self._enabled = True
|
||||
self._data = []
|
||||
|
||||
D90AdisTS._id_cnt = max(
|
||||
D90AdisTS._id_cnt + 1,
|
||||
self.id
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def _db_create(cls, execute):
|
||||
execute("""
|
||||
|
|
@ -72,7 +65,7 @@ class D90AdisTS(SQLSubModel):
|
|||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == 0 and minor < 1:
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 6:
|
||||
cls._db_create(execute)
|
||||
|
||||
|
|
|
|||
|
|
@ -33,19 +33,16 @@ class DIFAdisTS(SQLSubModel):
|
|||
_sub_classes = [
|
||||
DIFAdisTSSpec,
|
||||
]
|
||||
_id_cnt = 0
|
||||
|
||||
def __init__(self, id: int = -1, name: str = "default",
|
||||
status=None):
|
||||
super(DIFAdisTS, self).__init__()
|
||||
status=None, owner_scenario=-1):
|
||||
super(DIFAdisTS, self).__init__(
|
||||
id=id, status=status,
|
||||
owner_scenario=owner_scenario
|
||||
)
|
||||
|
||||
self._status = status
|
||||
|
||||
if id == -1:
|
||||
self.id = DIFAdisTS._id_cnt
|
||||
else:
|
||||
self.id = id
|
||||
|
||||
self._name = name
|
||||
self._method = None
|
||||
self._dif = None
|
||||
|
|
@ -55,11 +52,6 @@ class DIFAdisTS(SQLSubModel):
|
|||
self._types = ["iwasa", "fisher", "elder", "constante", "generique"]
|
||||
self._data = []
|
||||
|
||||
DIFAdisTS._id_cnt = max(
|
||||
DIFAdisTS._id_cnt + 1,
|
||||
self.id
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def _db_create(cls, execute):
|
||||
execute("""
|
||||
|
|
@ -79,7 +71,7 @@ class DIFAdisTS(SQLSubModel):
|
|||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == 0 and minor < 1:
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 6:
|
||||
cls._db_create(execute)
|
||||
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ class Friction(SQLSubModel):
|
|||
cls._db_update_to_0_1_0(execute, data)
|
||||
|
||||
if major == "0" and minor == "1":
|
||||
if release < 2:
|
||||
if int(release) < 2:
|
||||
execute(
|
||||
"ALTER TABLE friction " +
|
||||
"ADD COLUMN deleted BOOLEAN NOT NULL DEFAULT FALSE"
|
||||
|
|
|
|||
|
|
@ -41,7 +41,6 @@ class FrictionList(PamhyrModelList):
|
|||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
if version == "0.0.0":
|
||||
logger.info(f"Update friction TABLE from {version}")
|
||||
cls._db_update_0_0_1(execute, version)
|
||||
|
||||
return cls._update_submodel(execute, version, data)
|
||||
|
|
|
|||
|
|
@ -34,19 +34,17 @@ class InitialConditionsAdisTS(SQLSubModel):
|
|||
_sub_classes = [
|
||||
ICAdisTSSpec,
|
||||
]
|
||||
_id_cnt = 0
|
||||
|
||||
def __init__(self, id: int = -1, name: str = "default",
|
||||
pollutant: int = -1, status=None):
|
||||
super(InitialConditionsAdisTS, self).__init__()
|
||||
pollutant: int = -1, status=None,
|
||||
owner_scenario=-1):
|
||||
super(InitialConditionsAdisTS, self).__init__(
|
||||
id=id, status=status,
|
||||
owner_scenario=owner_scenario
|
||||
)
|
||||
|
||||
self._status = status
|
||||
|
||||
if id == -1:
|
||||
self.id = InitialConditionsAdisTS._id_cnt
|
||||
else:
|
||||
self.id = id
|
||||
|
||||
self._name = name
|
||||
self._pollutant = pollutant
|
||||
self._concentration = None
|
||||
|
|
@ -56,11 +54,6 @@ class InitialConditionsAdisTS(SQLSubModel):
|
|||
self._enabled = True
|
||||
self._data = []
|
||||
|
||||
InitialConditionsAdisTS._id_cnt = max(
|
||||
InitialConditionsAdisTS._id_cnt + 1,
|
||||
self.id
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def _db_create(cls, execute):
|
||||
execute("""
|
||||
|
|
@ -82,7 +75,7 @@ class InitialConditionsAdisTS(SQLSubModel):
|
|||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == 0 and minor < 1:
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 6:
|
||||
cls._db_create(execute)
|
||||
|
||||
|
|
|
|||
|
|
@ -33,19 +33,17 @@ logger = logging.getLogger()
|
|||
|
||||
class LateralContributionAdisTS(SQLSubModel):
|
||||
_sub_classes = []
|
||||
_id_cnt = 0
|
||||
|
||||
def __init__(self, id: int = -1, pollutant: int = -1,
|
||||
name: str = "", status=None):
|
||||
super(LateralContributionAdisTS, self).__init__()
|
||||
name: str = "", status=None,
|
||||
owner_scenario=-1):
|
||||
super(LateralContributionAdisTS, self).__init__(
|
||||
id=id, status=status,
|
||||
owner_scenario=owner_scenario
|
||||
)
|
||||
|
||||
self._status = status
|
||||
|
||||
if id == -1:
|
||||
self.id = LateralContributionAdisTS._id_cnt
|
||||
else:
|
||||
self.id = id
|
||||
|
||||
self._pollutant = pollutant
|
||||
self._edge = None
|
||||
self._begin_rk = 0.0
|
||||
|
|
@ -54,9 +52,6 @@ class LateralContributionAdisTS(SQLSubModel):
|
|||
self._header = ["time", "rate"]
|
||||
self._types = [self.time_convert, float]
|
||||
|
||||
LateralContributionAdisTS._id_cnt = max(
|
||||
LateralContributionAdisTS._id_cnt + 1, self.id)
|
||||
|
||||
@classmethod
|
||||
def _db_create(cls, execute):
|
||||
execute("""
|
||||
|
|
@ -85,6 +80,11 @@ class LateralContributionAdisTS(SQLSubModel):
|
|||
|
||||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 7:
|
||||
cls._db_create(execute)
|
||||
|
||||
return True
|
||||
|
||||
@classmethod
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ class LateralContributionsAdisTSList(PamhyrModelList):
|
|||
|
||||
def _db_save(self, execute, data=None):
|
||||
execute("DELETE FROM lateral_contribution_adists")
|
||||
execute("DELETE FROM lateral_condition_data_adists")
|
||||
execute("DELETE FROM lateral_contribution_data_adists")
|
||||
|
||||
if data is None:
|
||||
data = {}
|
||||
|
|
|
|||
|
|
@ -33,27 +33,22 @@ logger = logging.getLogger()
|
|||
|
||||
class OutputRKAdists(SQLSubModel):
|
||||
_sub_classes = []
|
||||
_id_cnt = 0
|
||||
|
||||
def __init__(self, id: int = -1, reach=None,
|
||||
rk=None, title: str = "", status=None):
|
||||
super(OutputRKAdists, self).__init__()
|
||||
rk=None, title: str = "", status=None,
|
||||
owner_scenario=-1):
|
||||
super(OutputRKAdists, self).__init__(
|
||||
id=id, status=status,
|
||||
owner_scenario=owner_scenario
|
||||
)
|
||||
|
||||
self._status = status
|
||||
|
||||
if id == -1:
|
||||
self.id = OutputRKAdists._id_cnt
|
||||
else:
|
||||
self.id = id
|
||||
|
||||
self._reach = reach
|
||||
self._rk = rk
|
||||
self._title = str(title)
|
||||
self._enabled = True
|
||||
|
||||
OutputRKAdists._id_cnt = max(
|
||||
OutputRKAdists._id_cnt + 1, self.id)
|
||||
|
||||
@property
|
||||
def reach(self):
|
||||
return self._reach
|
||||
|
|
@ -83,8 +78,7 @@ class OutputRKAdists(SQLSubModel):
|
|||
|
||||
@classmethod
|
||||
def _db_create(cls, execute):
|
||||
|
||||
sql = (
|
||||
execute(
|
||||
"CREATE TABLE OutputRKAdists(" +
|
||||
"id INTEGER NOT NULL PRIMARY KEY, " +
|
||||
"reach INTEGER NOT NULL, " +
|
||||
|
|
@ -94,12 +88,15 @@ class OutputRKAdists(SQLSubModel):
|
|||
")"
|
||||
)
|
||||
|
||||
execute(sql)
|
||||
|
||||
return cls._create_submodel(execute)
|
||||
|
||||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 7:
|
||||
cls._db_create(execute)
|
||||
|
||||
return True
|
||||
|
||||
@classmethod
|
||||
|
|
|
|||
|
|
@ -35,16 +35,15 @@ class Pollutants(SQLSubModel):
|
|||
_sub_classes = []
|
||||
_id_cnt = 0
|
||||
|
||||
def __init__(self, id: int = -1, name: str = "", status=None):
|
||||
super(Pollutants, self).__init__()
|
||||
def __init__(self, id: int = -1, name: str = "",
|
||||
status=None,
|
||||
owner_scenario=-1):
|
||||
super(Pollutants, self).__init__(
|
||||
id=id, status=status,
|
||||
owner_scenario=owner_scenario)
|
||||
|
||||
self._status = status
|
||||
|
||||
if id == -1:
|
||||
self.id = Pollutants._id_cnt
|
||||
else:
|
||||
self.id = id
|
||||
|
||||
if name is None or name == "":
|
||||
self.name = f"pol{self.id}"
|
||||
else:
|
||||
|
|
@ -99,6 +98,11 @@ class Pollutants(SQLSubModel):
|
|||
|
||||
@classmethod
|
||||
def _db_update(cls, execute, version, data=None):
|
||||
major, minor, release = version.strip().split(".")
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 7:
|
||||
cls._db_create(execute)
|
||||
|
||||
return True
|
||||
|
||||
@classmethod
|
||||
|
|
|
|||
|
|
@ -134,8 +134,8 @@ class REPLine(SQLSubModel):
|
|||
else:
|
||||
cls._db_update_to_0_0_14(execute, data)
|
||||
|
||||
if major == "0" and minor == "1":
|
||||
if release < 2:
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 2:
|
||||
execute(
|
||||
"ALTER TABLE rep_lines " +
|
||||
"ADD COLUMN deleted BOOLEAN NOT NULL DEFAULT FALSE"
|
||||
|
|
|
|||
|
|
@ -66,8 +66,8 @@ class Data(SQLSubModel):
|
|||
if int(release) > 5:
|
||||
cls._db_update_to_0_1_0(execute, data)
|
||||
|
||||
if major == "0" and minor == "1":
|
||||
if release < 2:
|
||||
if major == "0" and int(minor) <= 1:
|
||||
if int(release) < 2:
|
||||
execute(
|
||||
"ALTER TABLE reservoir_data " +
|
||||
"ADD COLUMN deleted BOOLEAN NOT NULL DEFAULT FALSE"
|
||||
|
|
@ -244,7 +244,7 @@ class Reservoir(SQLSubModel):
|
|||
cls._db_update_to_0_1_0(execute, data)
|
||||
|
||||
if major == "0" and minor == "1":
|
||||
if release < 2:
|
||||
if int(release) < 2:
|
||||
execute(
|
||||
"ALTER TABLE additional_files " +
|
||||
"ADD COLUMN deleted BOOLEAN NOT NULL DEFAULT FALSE"
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ class Study(SQLModel):
|
|||
|
||||
def __init__(self, filename=None, init_new=True):
|
||||
# Metadata
|
||||
self._version = "0.1.2"
|
||||
self._version = "0.1.7"
|
||||
self.creation_date = datetime.now()
|
||||
self.last_modification_date = datetime.now()
|
||||
self.last_save_date = datetime.now()
|
||||
|
|
@ -300,6 +300,8 @@ class Study(SQLModel):
|
|||
self.execute(
|
||||
f"UPDATE info SET value='{self._version}' WHERE key='version'"
|
||||
)
|
||||
logger.info("Update database done.")
|
||||
|
||||
return True
|
||||
|
||||
logger.info("Update failed!")
|
||||
|
|
|
|||
|
|
@ -32,7 +32,11 @@ class StudyTestCase(unittest.TestCase):
|
|||
self.assertEqual(study.description, "bar")
|
||||
|
||||
def test_open_study(self):
|
||||
study = Study.open("../tests_cases/Enlargement/Enlargement.pamhyr")
|
||||
study = Study.open(
|
||||
os.path.join(
|
||||
"..", "tests_cases", "Enlargement", "Enlargement.pamhyr"
|
||||
)
|
||||
)
|
||||
self.assertNotEqual(study, None)
|
||||
self.assertEqual(study.name, "Enlargement")
|
||||
|
||||
|
|
|
|||
|
|
@ -182,7 +182,6 @@ class InitialConditionsWindow(PamhyrWindow):
|
|||
self.find(QAction, "action_import").triggered\
|
||||
.connect(self.import_from_file)
|
||||
|
||||
|
||||
self.find(QPushButton, "pushButton_generate_1").clicked.connect(
|
||||
self.generate_growing_constant_depth
|
||||
)
|
||||
|
|
|
|||
3
tests.sh
3
tests.sh
|
|
@ -1,5 +1,7 @@
|
|||
#! /bin/sh
|
||||
|
||||
if [ -z "$GUIX_ENVIRONMENT" ]
|
||||
then
|
||||
echo " Setup ENV"
|
||||
|
||||
python3 -m venv venv
|
||||
|
|
@ -7,6 +9,7 @@ python3 -m venv venv
|
|||
pip3 install -U pip
|
||||
pip3 install -r ./full-requirements.txt
|
||||
pip3 install -U -r ./full-requirements.txt
|
||||
fi
|
||||
|
||||
echo " UNITTEST"
|
||||
|
||||
|
|
|
|||
Binary file not shown.
Loading…
Reference in New Issue