floodmodeller-api 0.5.1__py3-none-any.whl → 0.5.2.post1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (86) hide show
  1. floodmodeller_api/__init__.py +10 -0
  2. floodmodeller_api/_base.py +29 -20
  3. floodmodeller_api/backup.py +12 -10
  4. floodmodeller_api/dat.py +161 -91
  5. floodmodeller_api/diff.py +1 -1
  6. floodmodeller_api/hydrology_plus/hydrology_plus_export.py +1 -1
  7. floodmodeller_api/ied.py +2 -4
  8. floodmodeller_api/ief.py +29 -17
  9. floodmodeller_api/ief_flags.py +1 -1
  10. floodmodeller_api/inp.py +4 -6
  11. floodmodeller_api/logs/lf.py +18 -12
  12. floodmodeller_api/logs/lf_helpers.py +2 -2
  13. floodmodeller_api/logs/lf_params.py +1 -5
  14. floodmodeller_api/mapping.py +9 -2
  15. floodmodeller_api/test/test_conveyance.py +9 -4
  16. floodmodeller_api/test/test_dat.py +166 -18
  17. floodmodeller_api/test/test_data/EX18_DAT_expected.json +164 -144
  18. floodmodeller_api/test/test_data/EX3_DAT_expected.json +6 -2
  19. floodmodeller_api/test/test_data/EX6_DAT_expected.json +12 -46
  20. floodmodeller_api/test/test_data/encoding_test_cp1252.dat +1081 -0
  21. floodmodeller_api/test/test_data/encoding_test_utf8.dat +1081 -0
  22. floodmodeller_api/test/test_data/integrated_bridge/AR_NoSP_NoBl_2O_NO_OneFRC.ied +33 -0
  23. floodmodeller_api/test/test_data/integrated_bridge/AR_vSP_25pc_1O.ied +32 -0
  24. floodmodeller_api/test/test_data/integrated_bridge/PL_vSP_25pc_1O.ied +34 -0
  25. floodmodeller_api/test/test_data/integrated_bridge/SBTwoFRCsStaggered.IED +32 -0
  26. floodmodeller_api/test/test_data/integrated_bridge/US_NoSP_NoBl_OR_RN.ied +28 -0
  27. floodmodeller_api/test/test_data/integrated_bridge/US_SP_NoBl_OR_frc_PT2-5_RN.ied +34 -0
  28. floodmodeller_api/test/test_data/integrated_bridge/US_fSP_NoBl_1O.ied +30 -0
  29. floodmodeller_api/test/test_data/integrated_bridge/US_nSP_NoBl_1O.ied +49 -0
  30. floodmodeller_api/test/test_data/integrated_bridge/US_vSP_NoBl_2O_Para.ied +35 -0
  31. floodmodeller_api/test/test_data/integrated_bridge.dat +40 -0
  32. floodmodeller_api/test/test_data/network.ied +2 -2
  33. floodmodeller_api/test/test_data/network_dat_expected.json +141 -243
  34. floodmodeller_api/test/test_data/network_ied_expected.json +2 -2
  35. floodmodeller_api/test/test_data/network_with_comments.ied +2 -2
  36. floodmodeller_api/test/test_ied.py +1 -1
  37. floodmodeller_api/test/test_ief.py +10 -2
  38. floodmodeller_api/test/test_integrated_bridge.py +159 -0
  39. floodmodeller_api/test/test_json.py +9 -3
  40. floodmodeller_api/test/test_logs_lf.py +45 -24
  41. floodmodeller_api/test/test_river.py +1 -1
  42. floodmodeller_api/test/test_toolbox_structure_log.py +0 -1
  43. floodmodeller_api/test/test_xml2d.py +5 -5
  44. floodmodeller_api/to_from_json.py +1 -1
  45. floodmodeller_api/tool.py +3 -5
  46. floodmodeller_api/toolbox/model_build/add_siltation_definition.py +1 -1
  47. floodmodeller_api/toolbox/model_build/structure_log/structure_log.py +10 -8
  48. floodmodeller_api/units/__init__.py +15 -0
  49. floodmodeller_api/units/_base.py +73 -10
  50. floodmodeller_api/units/_helpers.py +343 -0
  51. floodmodeller_api/units/boundaries.py +59 -71
  52. floodmodeller_api/units/comment.py +1 -1
  53. floodmodeller_api/units/conduits.py +57 -54
  54. floodmodeller_api/units/connectors.py +112 -0
  55. floodmodeller_api/units/controls.py +107 -0
  56. floodmodeller_api/units/iic.py +2 -9
  57. floodmodeller_api/units/losses.py +42 -42
  58. floodmodeller_api/units/sections.py +40 -43
  59. floodmodeller_api/units/structures.py +360 -530
  60. floodmodeller_api/units/units.py +25 -26
  61. floodmodeller_api/units/unsupported.py +5 -7
  62. floodmodeller_api/units/variables.py +2 -2
  63. floodmodeller_api/urban1d/_base.py +7 -8
  64. floodmodeller_api/urban1d/conduits.py +11 -21
  65. floodmodeller_api/urban1d/general_parameters.py +1 -1
  66. floodmodeller_api/urban1d/junctions.py +7 -11
  67. floodmodeller_api/urban1d/losses.py +13 -17
  68. floodmodeller_api/urban1d/outfalls.py +16 -21
  69. floodmodeller_api/urban1d/raingauges.py +3 -9
  70. floodmodeller_api/urban1d/subsections.py +3 -4
  71. floodmodeller_api/urban1d/xsections.py +11 -15
  72. floodmodeller_api/util.py +7 -4
  73. floodmodeller_api/validation/parameters.py +7 -3
  74. floodmodeller_api/validation/urban_parameters.py +1 -4
  75. floodmodeller_api/validation/validation.py +9 -4
  76. floodmodeller_api/version.py +1 -1
  77. floodmodeller_api/xml2d.py +9 -11
  78. floodmodeller_api/xml2d_template.py +1 -1
  79. floodmodeller_api/zz.py +7 -6
  80. {floodmodeller_api-0.5.1.dist-info → floodmodeller_api-0.5.2.post1.dist-info}/LICENSE.txt +1 -1
  81. {floodmodeller_api-0.5.1.dist-info → floodmodeller_api-0.5.2.post1.dist-info}/METADATA +11 -3
  82. {floodmodeller_api-0.5.1.dist-info → floodmodeller_api-0.5.2.post1.dist-info}/RECORD +85 -70
  83. {floodmodeller_api-0.5.1.dist-info → floodmodeller_api-0.5.2.post1.dist-info}/WHEEL +1 -1
  84. floodmodeller_api/units/helpers.py +0 -121
  85. {floodmodeller_api-0.5.1.dist-info → floodmodeller_api-0.5.2.post1.dist-info}/entry_points.txt +0 -0
  86. {floodmodeller_api-0.5.1.dist-info → floodmodeller_api-0.5.2.post1.dist-info}/top_level.txt +0 -0
@@ -1860,6 +1860,134 @@
1860
1860
  "RAD File": ""
1861
1861
  },
1862
1862
  "_label_len": 12,
1863
+ "connectors":{
1864
+ "RESOUT2b": {
1865
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1866
+ "Object Attributes": {
1867
+ "_label_len": 12,
1868
+ "_name": "RESOUT2b",
1869
+ "_subtype": "OPEN",
1870
+ "comment": "",
1871
+ "labels": [
1872
+ "RESOUT2b",
1873
+ "RESOUT2u",
1874
+ "RESOUT2d"
1875
+ ]
1876
+ }
1877
+ },
1878
+ "CSRD14u": {
1879
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1880
+ "Object Attributes": {
1881
+ "_label_len": 12,
1882
+ "_name": "CSRD14u",
1883
+ "_subtype": "OPEN",
1884
+ "comment": "",
1885
+ "labels": [
1886
+ "CSRD14u",
1887
+ "MILLBu",
1888
+ "MILLAu"
1889
+ ]
1890
+ }
1891
+ },
1892
+ "CSRD12u": {
1893
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1894
+ "Object Attributes": {
1895
+ "_label_len": 12,
1896
+ "_name": "CSRD12u",
1897
+ "_subtype": "OPEN",
1898
+ "comment": "",
1899
+ "labels": [
1900
+ "CSRD12u",
1901
+ "MILLBd",
1902
+ "CSRD12d"
1903
+ ]
1904
+ }
1905
+ },
1906
+ "CSRD09": {
1907
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1908
+ "Object Attributes": {
1909
+ "_label_len": 12,
1910
+ "_name": "CSRD09",
1911
+ "_subtype": "OPEN",
1912
+ "comment": "",
1913
+ "labels": [
1914
+ "CSRD09",
1915
+ "CSRD09u",
1916
+ "ROAD1"
1917
+ ]
1918
+ }
1919
+ },
1920
+ "CSRD08a": {
1921
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1922
+ "Object Attributes": {
1923
+ "_label_len": 12,
1924
+ "_name": "CSRD08a",
1925
+ "_subtype": "OPEN",
1926
+ "comment": "",
1927
+ "labels": [
1928
+ "CSRD08a",
1929
+ "CSRD08",
1930
+ "ROAD2"
1931
+ ]
1932
+ }
1933
+ },
1934
+ "CSRD02d": {
1935
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1936
+ "Object Attributes": {
1937
+ "_label_len": 12,
1938
+ "_name": "CSRD02d",
1939
+ "_subtype": "OPEN",
1940
+ "comment": "",
1941
+ "labels": [
1942
+ "CSRD02d",
1943
+ "RAILRDu",
1944
+ "RAILBRu"
1945
+ ]
1946
+ }
1947
+ },
1948
+ "RAILBRd": {
1949
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1950
+ "Object Attributes": {
1951
+ "_label_len": 12,
1952
+ "_name": "RAILBRd",
1953
+ "_subtype": "OPEN",
1954
+ "comment": "",
1955
+ "labels": [
1956
+ "RAILBRd",
1957
+ "RAILRDd",
1958
+ "CSRD01a"
1959
+ ]
1960
+ }
1961
+ },
1962
+ "DS2": {
1963
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1964
+ "Object Attributes": {
1965
+ "_label_len": 12,
1966
+ "_name": "DS2",
1967
+ "_subtype": "OPEN",
1968
+ "comment": "",
1969
+ "labels": [
1970
+ "DS2",
1971
+ "FOOTa",
1972
+ "FOOTBRu"
1973
+ ]
1974
+ }
1975
+ },
1976
+ "FOOTb": {
1977
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
1978
+ "Object Attributes": {
1979
+ "_label_len": 12,
1980
+ "_name": "FOOTb",
1981
+ "_subtype": "OPEN",
1982
+ "comment": "",
1983
+ "labels": [
1984
+ "FOOTb",
1985
+ "FOOTBRd",
1986
+ "DS3"
1987
+ ]
1988
+ }
1989
+ }
1990
+ },
1863
1991
  "sections": {
1864
1992
  "CS26": {
1865
1993
  "API Class": "floodmodeller_api.units.sections.RIVER",
@@ -11189,6 +11317,7 @@
11189
11317
  }
11190
11318
  },
11191
11319
  "conduits": {},
11320
+ "controls": {},
11192
11321
  "losses": {},
11193
11322
  "_unsupported": {
11194
11323
  "resin (FSSR16BDY)": {
@@ -11236,86 +11365,7 @@
11236
11365
  ]
11237
11366
  }
11238
11367
  },
11239
- "RESOUT2b (JUNCTION)": {
11240
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11241
- "Object Attributes": {
11242
- "_label_len": 12,
11243
- "_name": "RESOUT2b",
11244
- "_unit": "JUNCTION",
11245
- "_subtype": "OPEN",
11246
- "_raw_block": [
11247
- "JUNCTION",
11248
- "OPEN",
11249
- "RESOUT2b RESOUT2u RESOUT2d"
11250
- ],
11251
- "comment": "",
11252
- "labels": [
11253
- "RESOUT2b",
11254
- "RESOUT2u",
11255
- "RESOUT2d"
11256
- ]
11257
- }
11258
- },
11259
- "CSRD14u (JUNCTION)": {
11260
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11261
- "Object Attributes": {
11262
- "_label_len": 12,
11263
- "_name": "CSRD14u",
11264
- "_unit": "JUNCTION",
11265
- "_subtype": "OPEN",
11266
- "_raw_block": [
11267
- "JUNCTION",
11268
- "OPEN",
11269
- "CSRD14u MILLBu MILLAu"
11270
- ],
11271
- "comment": "",
11272
- "labels": [
11273
- "CSRD14u",
11274
- "MILLBu",
11275
- "MILLAu"
11276
- ]
11277
- }
11278
- },
11279
- "CSRD12u (JUNCTION)": {
11280
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11281
- "Object Attributes": {
11282
- "_label_len": 12,
11283
- "_name": "CSRD12u",
11284
- "_unit": "JUNCTION",
11285
- "_subtype": "OPEN",
11286
- "_raw_block": [
11287
- "JUNCTION",
11288
- "OPEN",
11289
- "CSRD12u MILLBd CSRD12d"
11290
- ],
11291
- "comment": "",
11292
- "labels": [
11293
- "CSRD12u",
11294
- "MILLBd",
11295
- "CSRD12d"
11296
- ]
11297
- }
11298
- },
11299
- "CSRD09 (JUNCTION)": {
11300
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11301
- "Object Attributes": {
11302
- "_label_len": 12,
11303
- "_name": "CSRD09",
11304
- "_unit": "JUNCTION",
11305
- "_subtype": "OPEN",
11306
- "_raw_block": [
11307
- "JUNCTION",
11308
- "OPEN",
11309
- "CSRD09 CSRD09u ROAD1"
11310
- ],
11311
- "comment": "",
11312
- "labels": [
11313
- "CSRD09",
11314
- "CSRD09u",
11315
- "ROAD1"
11316
- ]
11317
- }
11318
- },
11368
+
11319
11369
  "CSRD09a (BERNOULLI)": {
11320
11370
  "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11321
11371
  "Object Attributes": {
@@ -11344,46 +11394,7 @@
11344
11394
  "ds_label": "CSRD08u"
11345
11395
  }
11346
11396
  },
11347
- "CSRD08a (JUNCTION)": {
11348
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11349
- "Object Attributes": {
11350
- "_label_len": 12,
11351
- "_name": "CSRD08a",
11352
- "_unit": "JUNCTION",
11353
- "_subtype": "OPEN",
11354
- "_raw_block": [
11355
- "JUNCTION",
11356
- "OPEN",
11357
- "CSRD08a CSRD08 ROAD2"
11358
- ],
11359
- "comment": "",
11360
- "labels": [
11361
- "CSRD08a",
11362
- "CSRD08",
11363
- "ROAD2"
11364
- ]
11365
- }
11366
- },
11367
- "CSRD02d (JUNCTION)": {
11368
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11369
- "Object Attributes": {
11370
- "_label_len": 12,
11371
- "_name": "CSRD02d",
11372
- "_unit": "JUNCTION",
11373
- "_subtype": "OPEN",
11374
- "_raw_block": [
11375
- "JUNCTION",
11376
- "OPEN",
11377
- "CSRD02d RAILRDu RAILBRu"
11378
- ],
11379
- "comment": "",
11380
- "labels": [
11381
- "CSRD02d",
11382
- "RAILRDu",
11383
- "RAILBRu"
11384
- ]
11385
- }
11386
- },
11397
+
11387
11398
  "RAILBRu (BERNOULLI)": {
11388
11399
  "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11389
11400
  "Object Attributes": {
@@ -11414,46 +11425,7 @@
11414
11425
  "ds_label": "RAILBRd"
11415
11426
  }
11416
11427
  },
11417
- "RAILBRd (JUNCTION)": {
11418
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11419
- "Object Attributes": {
11420
- "_label_len": 12,
11421
- "_name": "RAILBRd",
11422
- "_unit": "JUNCTION",
11423
- "_subtype": "OPEN",
11424
- "_raw_block": [
11425
- "JUNCTION",
11426
- "OPEN",
11427
- "RAILBRd RAILRDd CSRD01a"
11428
- ],
11429
- "comment": "",
11430
- "labels": [
11431
- "RAILBRd",
11432
- "RAILRDd",
11433
- "CSRD01a"
11434
- ]
11435
- }
11436
- },
11437
- "DS2 (JUNCTION)": {
11438
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11439
- "Object Attributes": {
11440
- "_label_len": 12,
11441
- "_name": "DS2",
11442
- "_unit": "JUNCTION",
11443
- "_subtype": "OPEN",
11444
- "_raw_block": [
11445
- "JUNCTION",
11446
- "OPEN",
11447
- "DS2 FOOTa FOOTBRu"
11448
- ],
11449
- "comment": "",
11450
- "labels": [
11451
- "DS2",
11452
- "FOOTa",
11453
- "FOOTBRu"
11454
- ]
11455
- }
11456
- },
11428
+
11457
11429
  "FOOTBRu (BERNOULLI)": {
11458
11430
  "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11459
11431
  "Object Attributes": {
@@ -11478,26 +11450,6 @@
11478
11450
  ],
11479
11451
  "ds_label": "FOOTBRd"
11480
11452
  }
11481
- },
11482
- "FOOTb (JUNCTION)": {
11483
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
11484
- "Object Attributes": {
11485
- "_label_len": 12,
11486
- "_name": "FOOTb",
11487
- "_unit": "JUNCTION",
11488
- "_subtype": "OPEN",
11489
- "_raw_block": [
11490
- "JUNCTION",
11491
- "OPEN",
11492
- "FOOTb FOOTBRd DS3"
11493
- ],
11494
- "comment": "",
11495
- "labels": [
11496
- "FOOTb",
11497
- "FOOTBRd",
11498
- "DS3"
11499
- ]
11500
- }
11501
11453
  }
11502
11454
  },
11503
11455
  "_all_units": [
@@ -12690,17 +12642,11 @@
12690
12642
  }
12691
12643
  },
12692
12644
  {
12693
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
12645
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
12694
12646
  "Object Attributes": {
12695
12647
  "_label_len": 12,
12696
12648
  "_name": "RESOUT2b",
12697
- "_unit": "JUNCTION",
12698
12649
  "_subtype": "OPEN",
12699
- "_raw_block": [
12700
- "JUNCTION",
12701
- "OPEN",
12702
- "RESOUT2b RESOUT2u RESOUT2d"
12703
- ],
12704
12650
  "comment": "",
12705
12651
  "labels": [
12706
12652
  "RESOUT2b",
@@ -14995,17 +14941,11 @@
14995
14941
  }
14996
14942
  },
14997
14943
  {
14998
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
14944
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
14999
14945
  "Object Attributes": {
15000
14946
  "_label_len": 12,
15001
14947
  "_name": "CSRD14u",
15002
- "_unit": "JUNCTION",
15003
14948
  "_subtype": "OPEN",
15004
- "_raw_block": [
15005
- "JUNCTION",
15006
- "OPEN",
15007
- "CSRD14u MILLBu MILLAu"
15008
- ],
15009
14949
  "comment": "",
15010
14950
  "labels": [
15011
14951
  "CSRD14u",
@@ -16032,17 +15972,11 @@
16032
15972
  }
16033
15973
  },
16034
15974
  {
16035
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
15975
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
16036
15976
  "Object Attributes": {
16037
15977
  "_label_len": 12,
16038
15978
  "_name": "CSRD12u",
16039
- "_unit": "JUNCTION",
16040
15979
  "_subtype": "OPEN",
16041
- "_raw_block": [
16042
- "JUNCTION",
16043
- "OPEN",
16044
- "CSRD12u MILLBd CSRD12d"
16045
- ],
16046
15980
  "comment": "",
16047
15981
  "labels": [
16048
15982
  "CSRD12u",
@@ -17257,17 +17191,11 @@
17257
17191
  }
17258
17192
  },
17259
17193
  {
17260
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
17194
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
17261
17195
  "Object Attributes": {
17262
17196
  "_label_len": 12,
17263
17197
  "_name": "CSRD09",
17264
- "_unit": "JUNCTION",
17265
17198
  "_subtype": "OPEN",
17266
- "_raw_block": [
17267
- "JUNCTION",
17268
- "OPEN",
17269
- "CSRD09 CSRD09u ROAD1"
17270
- ],
17271
17199
  "comment": "",
17272
17200
  "labels": [
17273
17201
  "CSRD09",
@@ -17731,17 +17659,11 @@
17731
17659
  }
17732
17660
  },
17733
17661
  {
17734
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
17662
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
17735
17663
  "Object Attributes": {
17736
17664
  "_label_len": 12,
17737
17665
  "_name": "CSRD08a",
17738
- "_unit": "JUNCTION",
17739
17666
  "_subtype": "OPEN",
17740
- "_raw_block": [
17741
- "JUNCTION",
17742
- "OPEN",
17743
- "CSRD08a CSRD08 ROAD2"
17744
- ],
17745
17667
  "comment": "",
17746
17668
  "labels": [
17747
17669
  "CSRD08a",
@@ -19241,17 +19163,11 @@
19241
19163
  }
19242
19164
  },
19243
19165
  {
19244
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
19166
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
19245
19167
  "Object Attributes": {
19246
19168
  "_label_len": 12,
19247
19169
  "_name": "CSRD02d",
19248
- "_unit": "JUNCTION",
19249
19170
  "_subtype": "OPEN",
19250
- "_raw_block": [
19251
- "JUNCTION",
19252
- "OPEN",
19253
- "CSRD02d RAILRDu RAILBRu"
19254
- ],
19255
19171
  "comment": "",
19256
19172
  "labels": [
19257
19173
  "CSRD02d",
@@ -19307,17 +19223,11 @@
19307
19223
  }
19308
19224
  },
19309
19225
  {
19310
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
19226
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
19311
19227
  "Object Attributes": {
19312
19228
  "_label_len": 12,
19313
19229
  "_name": "RAILBRd",
19314
- "_unit": "JUNCTION",
19315
19230
  "_subtype": "OPEN",
19316
- "_raw_block": [
19317
- "JUNCTION",
19318
- "OPEN",
19319
- "RAILBRd RAILRDd CSRD01a"
19320
- ],
19321
19231
  "comment": "",
19322
19232
  "labels": [
19323
19233
  "RAILBRd",
@@ -20370,17 +20280,11 @@
20370
20280
  }
20371
20281
  },
20372
20282
  {
20373
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
20283
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
20374
20284
  "Object Attributes": {
20375
20285
  "_label_len": 12,
20376
20286
  "_name": "DS2",
20377
- "_unit": "JUNCTION",
20378
20287
  "_subtype": "OPEN",
20379
- "_raw_block": [
20380
- "JUNCTION",
20381
- "OPEN",
20382
- "DS2 FOOTa FOOTBRu"
20383
- ],
20384
20288
  "comment": "",
20385
20289
  "labels": [
20386
20290
  "DS2",
@@ -20431,17 +20335,11 @@
20431
20335
  }
20432
20336
  },
20433
20337
  {
20434
- "API Class": "floodmodeller_api.units.unsupported.UNSUPPORTED",
20338
+ "API Class": "floodmodeller_api.units.connectors.JUNCTION",
20435
20339
  "Object Attributes": {
20436
20340
  "_label_len": 12,
20437
20341
  "_name": "FOOTb",
20438
- "_unit": "JUNCTION",
20439
20342
  "_subtype": "OPEN",
20440
- "_raw_block": [
20441
- "JUNCTION",
20442
- "OPEN",
20443
- "FOOTb FOOTBRd DS3"
20444
- ],
20445
20343
  "comment": "",
20446
20344
  "labels": [
20447
20345
  "FOOTb",
@@ -47,14 +47,14 @@
47
47
  " 0.000",
48
48
  "WINRP 0",
49
49
  " 0",
50
- "QTBDY ",
50
+ "QTBDY",
51
51
  "CS26",
52
52
  " 4 0.000 0.000 seconds NOEXTEND LINEAR 0.000 0.000 OVERRIDE",
53
53
  " 1.000 0.000",
54
54
  " 1.000 46800.000",
55
55
  " 0.000 47160.000",
56
56
  " 0.000 1.000e+09",
57
- "QHBDY ",
57
+ "QHBDY",
58
58
  "DS4",
59
59
  " 6 0.000 LINEAR",
60
60
  " 0.000 67.030",
@@ -37,14 +37,14 @@ WINRP 0
37
37
  COMMENT
38
38
  1
39
39
  Adding a comment part way through to test
40
- QTBDY
40
+ QTBDY
41
41
  CS26
42
42
  4 0.000 0.000 seconds NOEXTEND LINEAR 0.000 0.000 OVERRIDE
43
43
  1.000 0.000
44
44
  1.000 46800.000
45
45
  0.000 47160.000
46
46
  0.000 1.000e+09
47
- QHBDY
47
+ QHBDY
48
48
  DS4
49
49
  6 0.000 LINEAR
50
50
  0.000 67.030
@@ -23,7 +23,7 @@ def test_open_ied_does_not_change_file(ied_fp):
23
23
  assert ied._write() == data_before
24
24
  ied = IED(ied_fp)
25
25
  cs26_expected = [
26
- "QTBDY ",
26
+ "QTBDY",
27
27
  "CS26",
28
28
  " 4 0.000 0.000 seconds NOEXTEND LINEAR 0.000 0.000 OVERRIDE",
29
29
  " 1.000 0.000",
@@ -9,8 +9,8 @@ from floodmodeller_api.util import FloodModellerAPIError
9
9
 
10
10
 
11
11
  @pytest.fixture()
12
- def ief_fp(test_workspace: str) -> Path:
13
- return Path(test_workspace, "network.ief")
12
+ def ief_fp(test_workspace: Path) -> Path:
13
+ return test_workspace / "network.ief"
14
14
 
15
15
 
16
16
  @pytest.fixture()
@@ -174,3 +174,11 @@ def test_simulate_error_without_save():
174
174
  )
175
175
  with pytest.raises(FloodModellerAPIError, match=msg):
176
176
  ief.simulate()
177
+
178
+
179
+ def test_datafile_path(test_workspace: Path):
180
+ """Tests that `Datafile` can be converted to `Path` even if it contains backslashes in Linux."""
181
+ ief = IEF(test_workspace / "P3Panels_UNsteady.ief")
182
+ path = Path(ief.Datafile)
183
+ assert path.stem == "UptonP8_Panels"
184
+ assert path.parent == Path("../../networks")