dbdreader 0.5.5__tar.gz → 0.5.7__tar.gz
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.
- {dbdreader-0.5.5 → dbdreader-0.5.7}/MANIFEST.in +3 -3
- {dbdreader-0.5.5 → dbdreader-0.5.7}/PKG-INFO +20 -8
- {dbdreader-0.5.5 → dbdreader-0.5.7}/README.rst +19 -7
- dbdreader-0.5.7/dbdreader/__init__.py +10 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader/dbdreader.py +0 -1
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader.egg-info/PKG-INFO +20 -8
- dbdreader-0.5.7/dbdreader.egg-info/SOURCES.txt +73 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/examples/read_multiple_dbd_files.py +3 -3
- {dbdreader-0.5.5 → dbdreader-0.5.7}/examples/read_single_dbd_file.py +2 -2
- {dbdreader-0.5.5 → dbdreader-0.5.7}/setup.py +5 -1
- {dbdreader-0.5.5 → dbdreader-0.5.7}/tests/dbdreader_test.py +57 -57
- {dbdreader-0.5.5 → dbdreader-0.5.7}/tests/test_decompress.py +42 -42
- dbdreader-0.5.5/dbdreader/__init__.py +0 -5
- dbdreader-0.5.5/dbdreader.egg-info/SOURCES.txt +0 -73
- {dbdreader-0.5.5 → dbdreader-0.5.7}/COPYING +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/COPYRIGHT +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/INSTALL.rst +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/LICENSE +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600000.dcd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600000.ebd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600000.ecd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600000.mcg +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600000.mlg +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600001.dbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600001.dcd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600001.ebd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/01600001.ecd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-000.dbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-000.ebd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-000.sbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-000.tbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-001.sbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-001.tbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-002.sbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/amadeus-2014-204-05-002.tbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/ammonite-2008-028-01-000.mbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/06a36d4e.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/06a36d4e.ccc +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/093bd5ed.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/0f682cb2.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/468fd1be.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/61b1780f.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/813b137d.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/92610b65.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/c4ec741e.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/d6f44165.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/daad1b20.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/daad1b20.ccc +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac/dc76ebd5.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/cac_missing/d6f44165.cac +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/electa-2023-143-00-050.sbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/electa-2023-143-00-050.tbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/empty-2014-204-05-000.dbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/invalid_encoding-2014-204-05-000.dbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/sebastian-2014-204-05-000.dbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/sebastian-2014-204-05-000.ebd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/sebastian-2014-204-05-001.dbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/sebastian-2014-204-05-001.ebd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/unit_887-2021-321-3-0.sbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7/dbdreader}/data/unit_887-2021-321-3-0.tbd +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader/decompress.py +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader/scripts.py +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader.egg-info/dependency_links.txt +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader.egg-info/entry_points.txt +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader.egg-info/requires.txt +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/dbdreader.egg-info/top_level.txt +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/extension/dbdreader.c +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/extension/decompress.c +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/extension/include/dbdreader.h +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/extension/include/decompress.h +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/extension/py_dbdreader.c +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/lz4/include/lz4.h +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/lz4/lz4.c +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/requirements.txt +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/setup.cfg +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/tests/dbd_test.py +0 -0
- {dbdreader-0.5.5 → dbdreader-0.5.7}/tests/dbd_test_2.py +0 -0
|
@@ -5,7 +5,7 @@ include extension/include/*.h
|
|
|
5
5
|
include lz4/*.c
|
|
6
6
|
include lz4/include/*.h
|
|
7
7
|
include tests/*.py
|
|
8
|
-
include data/*.[stdem][bcl][dg]
|
|
9
|
-
include data/cac/*.c[ac]c
|
|
10
|
-
include data/cac_missing/*.cac
|
|
8
|
+
include dbdreader/data/*.[stdem][bcl][dg]
|
|
9
|
+
include dbdreader/data/cac/*.c[ac]c
|
|
10
|
+
include dbdreader/data/cac_missing/*.cac
|
|
11
11
|
include examples/*.py
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: dbdreader
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.7
|
|
4
4
|
Summary: A python module to access binary data files generated by Teledyne WebbResearch gliders
|
|
5
5
|
Home-page: https://dbdreader.readthedocs.io/en/latest/
|
|
6
6
|
Author: Lucas Merckelbach
|
|
@@ -18,8 +18,27 @@ License-File: COPYING
|
|
|
18
18
|
DBDREADER
|
|
19
19
|
=========
|
|
20
20
|
|
|
21
|
+
Synopsis
|
|
22
|
+
--------
|
|
23
|
+
Slocum ocean gliders are autonomous underwater vehicles, used for
|
|
24
|
+
making oceanographic measurements. The data that these devices and
|
|
25
|
+
their sensors collect, are stored in binary data files. The python
|
|
26
|
+
module *dbdreader* provides the utilities to extract the data from the
|
|
27
|
+
binary files, so that they can be further analysed.
|
|
28
|
+
|
|
21
29
|
Change log
|
|
22
30
|
----------
|
|
31
|
+
|
|
32
|
+
Version 0.5.7
|
|
33
|
+
|
|
34
|
+
* Drops dependency on python 3.10+, introduced in 0.5.6, and should
|
|
35
|
+
work still with python 3.9.
|
|
36
|
+
|
|
37
|
+
Version 0.5.6
|
|
38
|
+
|
|
39
|
+
* Moves data directory under dbdreader, making these files accessible
|
|
40
|
+
after an pip install
|
|
41
|
+
|
|
23
42
|
Version 0.5.5
|
|
24
43
|
|
|
25
44
|
* Makes MultiDBD's get_CTD_sync method compatible with RBR CTD data.
|
|
@@ -132,13 +151,6 @@ Version 0.4.5
|
|
|
132
151
|
* dbdreader checks whether the value of the parameters read are finite, ignoring them if they are not.
|
|
133
152
|
|
|
134
153
|
|
|
135
|
-
Synopsis
|
|
136
|
-
--------
|
|
137
|
-
Slocum ocean gliders are autonomous underwater vehicles, used for
|
|
138
|
-
making oceanographic measurements. The data that these devices and
|
|
139
|
-
their sensors collect, are stored in binary data files. The python
|
|
140
|
-
module *dbdreader* provides the utilities to extract the data from the
|
|
141
|
-
binary files, so that they can be further analysed.
|
|
142
154
|
|
|
143
155
|
Installation (linux)
|
|
144
156
|
--------------------
|
|
@@ -3,8 +3,27 @@
|
|
|
3
3
|
DBDREADER
|
|
4
4
|
=========
|
|
5
5
|
|
|
6
|
+
Synopsis
|
|
7
|
+
--------
|
|
8
|
+
Slocum ocean gliders are autonomous underwater vehicles, used for
|
|
9
|
+
making oceanographic measurements. The data that these devices and
|
|
10
|
+
their sensors collect, are stored in binary data files. The python
|
|
11
|
+
module *dbdreader* provides the utilities to extract the data from the
|
|
12
|
+
binary files, so that they can be further analysed.
|
|
13
|
+
|
|
6
14
|
Change log
|
|
7
15
|
----------
|
|
16
|
+
|
|
17
|
+
Version 0.5.7
|
|
18
|
+
|
|
19
|
+
* Drops dependency on python 3.10+, introduced in 0.5.6, and should
|
|
20
|
+
work still with python 3.9.
|
|
21
|
+
|
|
22
|
+
Version 0.5.6
|
|
23
|
+
|
|
24
|
+
* Moves data directory under dbdreader, making these files accessible
|
|
25
|
+
after an pip install
|
|
26
|
+
|
|
8
27
|
Version 0.5.5
|
|
9
28
|
|
|
10
29
|
* Makes MultiDBD's get_CTD_sync method compatible with RBR CTD data.
|
|
@@ -117,13 +136,6 @@ Version 0.4.5
|
|
|
117
136
|
* dbdreader checks whether the value of the parameters read are finite, ignoring them if they are not.
|
|
118
137
|
|
|
119
138
|
|
|
120
|
-
Synopsis
|
|
121
|
-
--------
|
|
122
|
-
Slocum ocean gliders are autonomous underwater vehicles, used for
|
|
123
|
-
making oceanographic measurements. The data that these devices and
|
|
124
|
-
their sensors collect, are stored in binary data files. The python
|
|
125
|
-
module *dbdreader* provides the utilities to extract the data from the
|
|
126
|
-
binary files, so that they can be further analysed.
|
|
127
139
|
|
|
128
140
|
Installation (linux)
|
|
129
141
|
--------------------
|
|
@@ -1877,7 +1877,6 @@ class MultiDBD(object):
|
|
|
1877
1877
|
# get() method.
|
|
1878
1878
|
time_values_read_sofar+=len(t[0])
|
|
1879
1879
|
if method=="get" and kwds["max_values_to_read"]>0:
|
|
1880
|
-
print(f"time values read so far: {time_values_read_sofar}. Parameters {p}")
|
|
1881
1880
|
if time_values_read_sofar>=kwds["max_values_to_read"]:
|
|
1882
1881
|
break
|
|
1883
1882
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: dbdreader
|
|
3
|
-
Version: 0.5.
|
|
3
|
+
Version: 0.5.7
|
|
4
4
|
Summary: A python module to access binary data files generated by Teledyne WebbResearch gliders
|
|
5
5
|
Home-page: https://dbdreader.readthedocs.io/en/latest/
|
|
6
6
|
Author: Lucas Merckelbach
|
|
@@ -18,8 +18,27 @@ License-File: COPYING
|
|
|
18
18
|
DBDREADER
|
|
19
19
|
=========
|
|
20
20
|
|
|
21
|
+
Synopsis
|
|
22
|
+
--------
|
|
23
|
+
Slocum ocean gliders are autonomous underwater vehicles, used for
|
|
24
|
+
making oceanographic measurements. The data that these devices and
|
|
25
|
+
their sensors collect, are stored in binary data files. The python
|
|
26
|
+
module *dbdreader* provides the utilities to extract the data from the
|
|
27
|
+
binary files, so that they can be further analysed.
|
|
28
|
+
|
|
21
29
|
Change log
|
|
22
30
|
----------
|
|
31
|
+
|
|
32
|
+
Version 0.5.7
|
|
33
|
+
|
|
34
|
+
* Drops dependency on python 3.10+, introduced in 0.5.6, and should
|
|
35
|
+
work still with python 3.9.
|
|
36
|
+
|
|
37
|
+
Version 0.5.6
|
|
38
|
+
|
|
39
|
+
* Moves data directory under dbdreader, making these files accessible
|
|
40
|
+
after an pip install
|
|
41
|
+
|
|
23
42
|
Version 0.5.5
|
|
24
43
|
|
|
25
44
|
* Makes MultiDBD's get_CTD_sync method compatible with RBR CTD data.
|
|
@@ -132,13 +151,6 @@ Version 0.4.5
|
|
|
132
151
|
* dbdreader checks whether the value of the parameters read are finite, ignoring them if they are not.
|
|
133
152
|
|
|
134
153
|
|
|
135
|
-
Synopsis
|
|
136
|
-
--------
|
|
137
|
-
Slocum ocean gliders are autonomous underwater vehicles, used for
|
|
138
|
-
making oceanographic measurements. The data that these devices and
|
|
139
|
-
their sensors collect, are stored in binary data files. The python
|
|
140
|
-
module *dbdreader* provides the utilities to extract the data from the
|
|
141
|
-
binary files, so that they can be further analysed.
|
|
142
154
|
|
|
143
155
|
Installation (linux)
|
|
144
156
|
--------------------
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
COPYING
|
|
2
|
+
COPYRIGHT
|
|
3
|
+
INSTALL.rst
|
|
4
|
+
LICENSE
|
|
5
|
+
MANIFEST.in
|
|
6
|
+
README.rst
|
|
7
|
+
requirements.txt
|
|
8
|
+
setup.py
|
|
9
|
+
dbdreader/__init__.py
|
|
10
|
+
dbdreader/dbdreader.py
|
|
11
|
+
dbdreader/decompress.py
|
|
12
|
+
dbdreader/scripts.py
|
|
13
|
+
dbdreader.egg-info/PKG-INFO
|
|
14
|
+
dbdreader.egg-info/SOURCES.txt
|
|
15
|
+
dbdreader.egg-info/dependency_links.txt
|
|
16
|
+
dbdreader.egg-info/entry_points.txt
|
|
17
|
+
dbdreader.egg-info/requires.txt
|
|
18
|
+
dbdreader.egg-info/top_level.txt
|
|
19
|
+
dbdreader/data/01600000.dcd
|
|
20
|
+
dbdreader/data/01600000.ebd
|
|
21
|
+
dbdreader/data/01600000.ecd
|
|
22
|
+
dbdreader/data/01600000.mcg
|
|
23
|
+
dbdreader/data/01600000.mlg
|
|
24
|
+
dbdreader/data/01600001.dbd
|
|
25
|
+
dbdreader/data/01600001.dcd
|
|
26
|
+
dbdreader/data/01600001.ebd
|
|
27
|
+
dbdreader/data/01600001.ecd
|
|
28
|
+
dbdreader/data/amadeus-2014-204-05-000.dbd
|
|
29
|
+
dbdreader/data/amadeus-2014-204-05-000.ebd
|
|
30
|
+
dbdreader/data/amadeus-2014-204-05-000.sbd
|
|
31
|
+
dbdreader/data/amadeus-2014-204-05-000.tbd
|
|
32
|
+
dbdreader/data/amadeus-2014-204-05-001.sbd
|
|
33
|
+
dbdreader/data/amadeus-2014-204-05-001.tbd
|
|
34
|
+
dbdreader/data/amadeus-2014-204-05-002.sbd
|
|
35
|
+
dbdreader/data/amadeus-2014-204-05-002.tbd
|
|
36
|
+
dbdreader/data/ammonite-2008-028-01-000.mbd
|
|
37
|
+
dbdreader/data/electa-2023-143-00-050.sbd
|
|
38
|
+
dbdreader/data/electa-2023-143-00-050.tbd
|
|
39
|
+
dbdreader/data/empty-2014-204-05-000.dbd
|
|
40
|
+
dbdreader/data/invalid_encoding-2014-204-05-000.dbd
|
|
41
|
+
dbdreader/data/sebastian-2014-204-05-000.dbd
|
|
42
|
+
dbdreader/data/sebastian-2014-204-05-000.ebd
|
|
43
|
+
dbdreader/data/sebastian-2014-204-05-001.dbd
|
|
44
|
+
dbdreader/data/sebastian-2014-204-05-001.ebd
|
|
45
|
+
dbdreader/data/unit_887-2021-321-3-0.sbd
|
|
46
|
+
dbdreader/data/unit_887-2021-321-3-0.tbd
|
|
47
|
+
dbdreader/data/cac/06a36d4e.cac
|
|
48
|
+
dbdreader/data/cac/06a36d4e.ccc
|
|
49
|
+
dbdreader/data/cac/093bd5ed.cac
|
|
50
|
+
dbdreader/data/cac/0f682cb2.cac
|
|
51
|
+
dbdreader/data/cac/468fd1be.cac
|
|
52
|
+
dbdreader/data/cac/61b1780f.cac
|
|
53
|
+
dbdreader/data/cac/813b137d.cac
|
|
54
|
+
dbdreader/data/cac/92610b65.cac
|
|
55
|
+
dbdreader/data/cac/c4ec741e.cac
|
|
56
|
+
dbdreader/data/cac/d6f44165.cac
|
|
57
|
+
dbdreader/data/cac/daad1b20.cac
|
|
58
|
+
dbdreader/data/cac/daad1b20.ccc
|
|
59
|
+
dbdreader/data/cac/dc76ebd5.cac
|
|
60
|
+
dbdreader/data/cac_missing/d6f44165.cac
|
|
61
|
+
examples/read_multiple_dbd_files.py
|
|
62
|
+
examples/read_single_dbd_file.py
|
|
63
|
+
extension/dbdreader.c
|
|
64
|
+
extension/decompress.c
|
|
65
|
+
extension/py_dbdreader.c
|
|
66
|
+
extension/include/dbdreader.h
|
|
67
|
+
extension/include/decompress.h
|
|
68
|
+
lz4/lz4.c
|
|
69
|
+
lz4/include/lz4.h
|
|
70
|
+
tests/dbd_test.py
|
|
71
|
+
tests/dbd_test_2.py
|
|
72
|
+
tests/dbdreader_test.py
|
|
73
|
+
tests/test_decompress.py
|
|
@@ -36,8 +36,8 @@ import dbdreader
|
|
|
36
36
|
# open some files, using a pattern
|
|
37
37
|
# Note that the default location for cache files ($HOME/.dbdreader) is
|
|
38
38
|
# overriden.
|
|
39
|
-
dbd=dbdreader.MultiDBD(pattern="../data/amadeus*.[st]bd",
|
|
40
|
-
cacheDir='../data/cac')
|
|
39
|
+
dbd=dbdreader.MultiDBD(pattern="../dbdreader/data/amadeus*.[st]bd",
|
|
40
|
+
cacheDir='../dbdreader/data/cac')
|
|
41
41
|
|
|
42
42
|
# print what parameters are available:
|
|
43
43
|
print("we the following science parameters:")
|
|
@@ -87,7 +87,7 @@ dbd.close()
|
|
|
87
87
|
|
|
88
88
|
pattern_selector=dbdreader.DBDPatternSelect()
|
|
89
89
|
pattern_selector.set_date_format("%d %b %Y %H")
|
|
90
|
-
selection=pattern_selector.select(pattern="../data/amadeus*.[st]bd",from_date="24 Jul 2014 18")
|
|
90
|
+
selection=pattern_selector.select(pattern="../dbdreader/data/amadeus*.[st]bd",from_date="24 Jul 2014 18")
|
|
91
91
|
|
|
92
92
|
print("full list of sbd files:")
|
|
93
93
|
for i,n in enumerate(dbd.filenames):
|
|
@@ -4,8 +4,8 @@ import dbdreader
|
|
|
4
4
|
# open a given file
|
|
5
5
|
# Note that the default location for cache files ($HOME/.dbdreader) is
|
|
6
6
|
# overriden.
|
|
7
|
-
dbd=dbdreader.DBD("../data/amadeus-2014-204-05-000.sbd",
|
|
8
|
-
cacheDir='../data/cac')
|
|
7
|
+
dbd=dbdreader.DBD("../dbdreader/data/amadeus-2014-204-05-000.sbd",
|
|
8
|
+
cacheDir='../dbdreader/data/cac')
|
|
9
9
|
|
|
10
10
|
# print what parameters are available:
|
|
11
11
|
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import sys
|
|
2
2
|
import os
|
|
3
3
|
|
|
4
|
+
import glob
|
|
5
|
+
|
|
4
6
|
import setuptools
|
|
5
7
|
|
|
6
8
|
with open("dbdreader/__init__.py", "r") as fh:
|
|
@@ -95,7 +97,7 @@ else:
|
|
|
95
97
|
sources += ["lz4/lz4.c"]
|
|
96
98
|
libraries = []
|
|
97
99
|
include_dirs += ['lz4/include']
|
|
98
|
-
|
|
100
|
+
|
|
99
101
|
setuptools.setup(
|
|
100
102
|
name="dbdreader",
|
|
101
103
|
version=VERSION,
|
|
@@ -106,6 +108,8 @@ setuptools.setup(
|
|
|
106
108
|
long_description_content_type="text/x-rst",
|
|
107
109
|
url='https://dbdreader.readthedocs.io/en/latest/',
|
|
108
110
|
packages=['dbdreader'],
|
|
111
|
+
package_data = {'dbdreader': glob.glob("dbdreader/data/*")},
|
|
112
|
+
include_package_data=True,
|
|
109
113
|
py_modules=[],
|
|
110
114
|
entry_points = {'console_scripts':['dbdrename=dbdreader.scripts:dbdrename',
|
|
111
115
|
'cac_gen=dbdreader.scripts:cac_gen'],
|
|
@@ -13,25 +13,25 @@ class Dbdreader_DBD_test(unittest.TestCase):
|
|
|
13
13
|
|
|
14
14
|
def test_open(self):
|
|
15
15
|
print("Open")
|
|
16
|
-
v=self.get("../data/amadeus-2014-204-05-000.sbd","m_depth")
|
|
16
|
+
v=self.get("../dbdreader/data/amadeus-2014-204-05-000.sbd","m_depth")
|
|
17
17
|
self.assertTrue(len(v)==2 and len(v[0])>0)
|
|
18
18
|
|
|
19
19
|
def test_get_non_existing_variable(self):
|
|
20
20
|
print("get_non_existing_variable")
|
|
21
|
-
v=self.get("../data/amadeus-2014-204-05-000.sbd","sci_water_pressure")
|
|
21
|
+
v=self.get("../dbdreader/data/amadeus-2014-204-05-000.sbd","sci_water_pressure")
|
|
22
22
|
self.assertTrue(len(v)==2 and len(v[0])==0 and len(v[1])==0)
|
|
23
23
|
|
|
24
24
|
def test_get_sync_non_existing_variable(self):
|
|
25
25
|
print("get_sync_non_existing_variable")
|
|
26
26
|
v = self.get_method("sync",
|
|
27
|
-
"../data/amadeus-2014-204-05-000.sbd",
|
|
27
|
+
"../dbdreader/data/amadeus-2014-204-05-000.sbd",
|
|
28
28
|
"m_depth",'sci_water_pressure','m_lon')
|
|
29
29
|
self.assertTrue(len(v)==4 and len(v[2])==len(v[1]) and np.all(np.isnan(v[2])))
|
|
30
30
|
|
|
31
31
|
def test_get_non_valid_variable(self):
|
|
32
32
|
print("get_non_valid_variable")
|
|
33
33
|
with self.assertRaises(dbdreader.DbdError) as e:
|
|
34
|
-
v=self.get("../data/amadeus-2014-204-05-000.sbd","M_LON")
|
|
34
|
+
v=self.get("../dbdreader/data/amadeus-2014-204-05-000.sbd","M_LON")
|
|
35
35
|
# We expect an exception when an non-existing parameter is being requested.
|
|
36
36
|
self.assertTrue(e.exception.value==dbdreader.DBD_ERROR_NO_VALID_PARAMETERS)
|
|
37
37
|
|
|
@@ -39,41 +39,41 @@ class Dbdreader_DBD_test(unittest.TestCase):
|
|
|
39
39
|
def test_get_sync(self):
|
|
40
40
|
print("get_sync")
|
|
41
41
|
self.get_method("sync",
|
|
42
|
-
"../data/amadeus-2014-204-05-000.sbd",
|
|
42
|
+
"../dbdreader/data/amadeus-2014-204-05-000.sbd",
|
|
43
43
|
"m_depth",'m_lat','m_lon')
|
|
44
44
|
|
|
45
45
|
def test_get_sync_obselete(self):
|
|
46
46
|
print("get_sync_obselete")
|
|
47
|
-
dbd=dbdreader.DBD("../data/amadeus-2014-204-05-000.sbd")
|
|
47
|
+
dbd=dbdreader.DBD("../dbdreader/data/amadeus-2014-204-05-000.sbd")
|
|
48
48
|
x = dbd.get_sync("m_depth", ['m_lat','m_lon'])
|
|
49
49
|
|
|
50
50
|
def test_get_xy(self):
|
|
51
51
|
print("get_xy")
|
|
52
52
|
self.get_method("xy",
|
|
53
|
-
"../data/amadeus-2014-204-05-000.sbd",
|
|
53
|
+
"../dbdreader/data/amadeus-2014-204-05-000.sbd",
|
|
54
54
|
'm_lat','m_lon')
|
|
55
55
|
|
|
56
56
|
def test_get_list(self):
|
|
57
57
|
print("get_list")
|
|
58
|
-
dbd=dbdreader.DBD("../data/amadeus-2014-204-05-000.sbd")
|
|
58
|
+
dbd=dbdreader.DBD("../dbdreader/data/amadeus-2014-204-05-000.sbd")
|
|
59
59
|
x, y = dbd.get_list("m_lat", "m_lon")
|
|
60
60
|
|
|
61
61
|
|
|
62
62
|
def test_file_open_time(self):
|
|
63
63
|
print("file_open_time")
|
|
64
|
-
dbd=dbdreader.DBD("../data/amadeus-2014-204-05-000.sbd")
|
|
64
|
+
dbd=dbdreader.DBD("../dbdreader/data/amadeus-2014-204-05-000.sbd")
|
|
65
65
|
t=dbd.get_fileopen_time()
|
|
66
66
|
self.assertEqual(t,1406221414)
|
|
67
67
|
|
|
68
68
|
def test_get_mission_name(self):
|
|
69
69
|
print("get_mission_name")
|
|
70
|
-
dbd=dbdreader.DBD("../data/amadeus-2014-204-05-000.sbd")
|
|
70
|
+
dbd=dbdreader.DBD("../dbdreader/data/amadeus-2014-204-05-000.sbd")
|
|
71
71
|
t=dbd.get_mission_name()
|
|
72
72
|
self.assertEqual(t,"micro.mi")
|
|
73
73
|
|
|
74
74
|
def test_non_standard_cache_dir(self):
|
|
75
75
|
print("non_standard_cache_dir")
|
|
76
|
-
dbd=dbdreader.DBD("../data/amadeus-2014-204-05-000.sbd", cacheDir='../data/cac')
|
|
76
|
+
dbd=dbdreader.DBD("../dbdreader/data/amadeus-2014-204-05-000.sbd", cacheDir='../dbdreader/data/cac')
|
|
77
77
|
depth = dbd.get("m_depth")
|
|
78
78
|
self.assertEqual(len(depth), 2)
|
|
79
79
|
|
|
@@ -82,50 +82,50 @@ class Dbdreader_DBD_test(unittest.TestCase):
|
|
|
82
82
|
print("non_standard_cache_dir_generated_cachefile")
|
|
83
83
|
# this should create a cache file. Remove it if already present.
|
|
84
84
|
try:
|
|
85
|
-
os.unlink('../data/cac/(813b137d.cac')
|
|
85
|
+
os.unlink('../dbdreader/data/cac/(813b137d.cac')
|
|
86
86
|
except FileNotFoundError:
|
|
87
87
|
pass
|
|
88
|
-
dbd=dbdreader.DBD("../data/ammonite-2008-028-01-000.mbd", cacheDir='../data/cac')
|
|
88
|
+
dbd=dbdreader.DBD("../dbdreader/data/ammonite-2008-028-01-000.mbd", cacheDir='../dbdreader/data/cac')
|
|
89
89
|
depth = dbd.get("m_depth")
|
|
90
90
|
self.assertEqual(len(depth), 2)
|
|
91
91
|
|
|
92
92
|
def test_G3S_data_file(self):
|
|
93
93
|
print("Reading a G3S data file for which the byte order needs to be swapped.")
|
|
94
|
-
dbd = dbdreader.DBD("../data/unit_887-2021-321-3-0.sbd",
|
|
95
|
-
cacheDir='../data/cac')
|
|
94
|
+
dbd = dbdreader.DBD("../dbdreader/data/unit_887-2021-321-3-0.sbd",
|
|
95
|
+
cacheDir='../dbdreader/data/cac')
|
|
96
96
|
tm, depth = dbd.get("m_depth")
|
|
97
97
|
self.assertAlmostEqual(depth.max(),34.5, delta=0.1)
|
|
98
98
|
|
|
99
99
|
def test_missing_cache_file(self):
|
|
100
100
|
print("Throw an error when cache file is missing...")
|
|
101
101
|
with self.assertRaises(dbdreader.DbdError) as e:
|
|
102
|
-
dbd = dbdreader.DBD("../data/unit_887-2021-321-3-0.sbd")
|
|
102
|
+
dbd = dbdreader.DBD("../dbdreader/data/unit_887-2021-321-3-0.sbd")
|
|
103
103
|
#tm, depth = dbd.get("m_depth")
|
|
104
104
|
|
|
105
105
|
def test_donottest_non_standard_cache_dir_fail(self):
|
|
106
106
|
print("non_standard_cache_dir_fail")
|
|
107
|
-
kwds = dict(cacheDir='../data/not_there')
|
|
108
|
-
self.assertRaises(dbdreader.DbdError, dbdreader.DBD, "../data/amadeus-2014-204-05-000.sbd", **kwds)
|
|
107
|
+
kwds = dict(cacheDir='../dbdreader/data/not_there')
|
|
108
|
+
self.assertRaises(dbdreader.DbdError, dbdreader.DBD, "../dbdreader/data/amadeus-2014-204-05-000.sbd", **kwds)
|
|
109
109
|
|
|
110
110
|
def test_missing_cache_file_data_feature(self):
|
|
111
111
|
print("Throw an error when cache file is missing, and check who is missing.")
|
|
112
112
|
try:
|
|
113
|
-
dbd = dbdreader.DBD("../data/unit_887-2021-321-3-0.sbd")
|
|
113
|
+
dbd = dbdreader.DBD("../dbdreader/data/unit_887-2021-321-3-0.sbd")
|
|
114
114
|
except dbdreader.DbdError as e:
|
|
115
115
|
data = e.data
|
|
116
116
|
for k,v in data.missing_cache_files.items():
|
|
117
|
-
assert k == 'd6f44165' and v[0] == "../data/unit_887-2021-321-3-0.sbd"
|
|
117
|
+
assert k == 'd6f44165' and v[0] == "../dbdreader/data/unit_887-2021-321-3-0.sbd"
|
|
118
118
|
|
|
119
119
|
|
|
120
120
|
def test_handling_inf(self):
|
|
121
|
-
dbd = dbdreader.DBD("../data/amadeus-2014-204-05-000.dbd",
|
|
122
|
-
cacheDir="../data/cac")
|
|
121
|
+
dbd = dbdreader.DBD("../dbdreader/data/amadeus-2014-204-05-000.dbd",
|
|
122
|
+
cacheDir="../dbdreader/data/cac")
|
|
123
123
|
|
|
124
124
|
t, v = dbd.get("m_time_til_wpt", return_nans =True)
|
|
125
125
|
t = t[:24]
|
|
126
126
|
v = v[:24]
|
|
127
127
|
# Now read the output by dbd2asc
|
|
128
|
-
with open("../data/dbd2asc_output.txt") as fp:
|
|
128
|
+
with open("../dbdreader/data/dbd2asc_output.txt") as fp:
|
|
129
129
|
lines = fp.readlines()
|
|
130
130
|
lines.pop(0) # remark
|
|
131
131
|
tp = np.zeros_like(t)
|
|
@@ -143,7 +143,7 @@ class Dbdreader_DBD_test(unittest.TestCase):
|
|
|
143
143
|
|
|
144
144
|
def test_get_sync_on_parameter_without_values(self):
|
|
145
145
|
print("Reads in a parameter to sync that has no values.")
|
|
146
|
-
dbd = dbdreader.DBD("../data/sebastian-2014-204-05-001.dbd")
|
|
146
|
+
dbd = dbdreader.DBD("../dbdreader/data/sebastian-2014-204-05-001.dbd")
|
|
147
147
|
_, _, x = dbd.get_sync("m_depth", "u_dbd_sensor_list_xmit_control")
|
|
148
148
|
assert np.all(np.isfinite(x)==False)
|
|
149
149
|
|
|
@@ -151,23 +151,23 @@ class Dbdreader_DBD_test(unittest.TestCase):
|
|
|
151
151
|
def test_get_reading_initial_data_line(self):
|
|
152
152
|
print("Tests whether initial data line can be read if requested.")
|
|
153
153
|
|
|
154
|
-
dbd = dbdreader.DBD("../data/sebastian-2014-204-05-001.dbd")
|
|
154
|
+
dbd = dbdreader.DBD("../dbdreader/data/sebastian-2014-204-05-001.dbd")
|
|
155
155
|
t0, v0 = dbd.get("m_depth")
|
|
156
|
-
dbd = dbdreader.DBD("../data/sebastian-2014-204-05-001.dbd", skip_initial_line=False)
|
|
156
|
+
dbd = dbdreader.DBD("../dbdreader/data/sebastian-2014-204-05-001.dbd", skip_initial_line=False)
|
|
157
157
|
t1, v1 = dbd.get("m_depth")
|
|
158
158
|
assert len(v0) == len(v1) - 1
|
|
159
159
|
|
|
160
160
|
|
|
161
161
|
def test_get_reading_limited_values(self):
|
|
162
162
|
print("Test whether we can read in only 10 depth values from a file.")
|
|
163
|
-
dbd = dbdreader.DBD("../data/sebastian-2014-204-05-001.dbd")
|
|
163
|
+
dbd = dbdreader.DBD("../dbdreader/data/sebastian-2014-204-05-001.dbd")
|
|
164
164
|
t0, v0 = dbd.get("m_depth", max_values_to_read=10)
|
|
165
165
|
assert len(t0)==len(v0) and len(t0)==10
|
|
166
166
|
|
|
167
167
|
def test_get_reading_limited_values_requesting_multiple_parameters(self):
|
|
168
168
|
print("Test whether reading a limited number of values from multiple values fails.")
|
|
169
169
|
with self.assertRaises(ValueError):
|
|
170
|
-
dbd = dbdreader.DBD("../data/sebastian-2014-204-05-001.dbd")
|
|
170
|
+
dbd = dbdreader.DBD("../dbdreader/data/sebastian-2014-204-05-001.dbd")
|
|
171
171
|
result = dbd.get("m_depth", "m_pitch", max_values_to_read=10)
|
|
172
172
|
|
|
173
173
|
def get(self,fn,x):
|
|
@@ -196,7 +196,7 @@ class Dbdreader_DBD_test(unittest.TestCase):
|
|
|
196
196
|
class Dbdreader_MultiDBD_test(unittest.TestCase):
|
|
197
197
|
|
|
198
198
|
def setUp(self):
|
|
199
|
-
self.pattern="../data/amadeus-2014-*.[st]bd"
|
|
199
|
+
self.pattern="../dbdreader/data/amadeus-2014-*.[st]bd"
|
|
200
200
|
|
|
201
201
|
def test_open(self):
|
|
202
202
|
print("Open")
|
|
@@ -268,24 +268,24 @@ class Dbdreader_MultiDBD_test(unittest.TestCase):
|
|
|
268
268
|
|
|
269
269
|
def test_non_standard_cache_dir(self):
|
|
270
270
|
print("non_standard_cache_dir")
|
|
271
|
-
dbd=dbdreader.MultiDBD(pattern = self.pattern, cacheDir='../data/cac')
|
|
271
|
+
dbd=dbdreader.MultiDBD(pattern = self.pattern, cacheDir='../dbdreader/data/cac')
|
|
272
272
|
depth = dbd.get("m_depth")
|
|
273
273
|
self.assertEqual(len(depth), 2)
|
|
274
274
|
|
|
275
275
|
def test_donottest_non_standard_cache_dir_fail(self):
|
|
276
|
-
kwds = dict(pattern=self.pattern, cacheDir='../data/not_there')
|
|
276
|
+
kwds = dict(pattern=self.pattern, cacheDir='../dbdreader/data/not_there')
|
|
277
277
|
self.assertRaises(dbdreader.DbdError, dbdreader.MultiDBD, **kwds)
|
|
278
278
|
|
|
279
279
|
def test_get_ctd_sync(self):
|
|
280
280
|
print("get_ctd_sync")
|
|
281
|
-
pattern="../data/amadeus-2014-*.[de]bd"
|
|
282
|
-
dbd=dbdreader.MultiDBD(pattern = pattern, cacheDir='../data/cac')
|
|
281
|
+
pattern="../dbdreader/data/amadeus-2014-*.[de]bd"
|
|
282
|
+
dbd=dbdreader.MultiDBD(pattern = pattern, cacheDir='../dbdreader/data/cac')
|
|
283
283
|
tctd, C, T, P, depth = dbd.get_CTD_sync("m_depth")
|
|
284
284
|
|
|
285
285
|
def test_get_ctd_sync_rbrCTD(self):
|
|
286
286
|
print("get_ctd_sync for RBR CTDs")
|
|
287
|
-
pattern="../data/electa-2023-143-00-050.[st]bd"
|
|
288
|
-
dbd=dbdreader.MultiDBD(pattern = pattern, cacheDir='../data/cac')
|
|
287
|
+
pattern="../dbdreader/data/electa-2023-143-00-050.[st]bd"
|
|
288
|
+
dbd=dbdreader.MultiDBD(pattern = pattern, cacheDir='../dbdreader/data/cac')
|
|
289
289
|
tctd, C, T, P, pressure = dbd.get_CTD_sync("m_pressure")
|
|
290
290
|
|
|
291
291
|
|
|
@@ -293,26 +293,26 @@ class Dbdreader_MultiDBD_test(unittest.TestCase):
|
|
|
293
293
|
print("Throw an error when cache file is missing...")
|
|
294
294
|
# read in a sbd and tbd file. Only the sbd's cac file is in cac_missing.
|
|
295
295
|
with self.assertRaises(dbdreader.DbdError) as e:
|
|
296
|
-
dbd = dbdreader.MultiDBD(pattern="../data/unit_887-2021-321-3-0.?bd",
|
|
297
|
-
cacheDir='../data/cac_missing')
|
|
296
|
+
dbd = dbdreader.MultiDBD(pattern="../dbdreader/data/unit_887-2021-321-3-0.?bd",
|
|
297
|
+
cacheDir='../dbdreader/data/cac_missing')
|
|
298
298
|
|
|
299
299
|
|
|
300
300
|
def test_open_file_with_pattern_str_as_first_argument(self):
|
|
301
301
|
print("Open multidbd with just a string as first argument. Should be interpreted as a pattern")
|
|
302
|
-
dbd = dbdreader.MultiDBD("../data/amadeus-2014-*.*bd")
|
|
302
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/amadeus-2014-*.*bd")
|
|
303
303
|
|
|
304
304
|
def test_open_file_with_pattern_str_as_first_argument_and_pattern(self):
|
|
305
305
|
print("Open multidbd with just a string as first argument and a pattern, which should fail.")
|
|
306
306
|
with self.assertRaises(dbdreader.DbdError) as e:
|
|
307
|
-
dbd = dbdreader.MultiDBD("../data/amadeus-2014-*.*bd", pattern="../data/amadeus-2014-204-05-000.?bd")
|
|
307
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/amadeus-2014-*.*bd", pattern="../dbdreader/data/amadeus-2014-204-05-000.?bd")
|
|
308
308
|
|
|
309
309
|
def test_opening_empty_file(self):
|
|
310
310
|
print("Ignore empty files and files with wrong encodings...")
|
|
311
|
-
dbd = dbdreader.MultiDBD(pattern = "../data/*-2014-204-05-000.dbd")
|
|
311
|
+
dbd = dbdreader.MultiDBD(pattern = "../dbdreader/data/*-2014-204-05-000.dbd")
|
|
312
312
|
|
|
313
313
|
def test_opening_capitalised_files(self):
|
|
314
314
|
print("Allow opening of files with capitalised extensions.")
|
|
315
|
-
dbd = dbdreader.MultiDBD(pattern = "../data/amadeus-2014-203-00-000.[ST]BD")
|
|
315
|
+
dbd = dbdreader.MultiDBD(pattern = "../dbdreader/data/amadeus-2014-203-00-000.[ST]BD")
|
|
316
316
|
|
|
317
317
|
def test_problem_causing_segfault(self):
|
|
318
318
|
# this test caused a segfault as a result of a bug introduced in commit eeb64d8e8c20345dafcacebf074f098fa945fd46
|
|
@@ -325,21 +325,21 @@ class Dbdreader_MultiDBD_test(unittest.TestCase):
|
|
|
325
325
|
def test_missing_cache_file_data_feature(self):
|
|
326
326
|
print("Throw an error when cache file is missing, and check who is missing.")
|
|
327
327
|
try:
|
|
328
|
-
dbd = dbdreader.MultiDBD("../data/unit_887-2021-321-3-0.?bd")
|
|
328
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/unit_887-2021-321-3-0.?bd")
|
|
329
329
|
except dbdreader.DbdError as e:
|
|
330
330
|
data = e.data
|
|
331
|
-
assert data.missing_cache_files['c4ec741e'][0] =="../data/unit_887-2021-321-3-0.tbd"
|
|
331
|
+
assert data.missing_cache_files['c4ec741e'][0] =="../dbdreader/data/unit_887-2021-321-3-0.tbd"
|
|
332
332
|
|
|
333
333
|
def test_get_sync_on_parameter_without_values(self):
|
|
334
334
|
print("Reads in a parameter to sync that has no values.")
|
|
335
|
-
dbd = dbdreader.MultiDBD("../data/sebastian-2014-204-05-00?.dbd")
|
|
335
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/sebastian-2014-204-05-00?.dbd")
|
|
336
336
|
_, _, x = dbd.get_sync("m_depth", "u_dbd_sensor_list_xmit_control")
|
|
337
337
|
# x has a 2.0 as first value, but then all nans.
|
|
338
338
|
assert np.all(np.isfinite(x[1:])==False) and x[0]==2.
|
|
339
339
|
|
|
340
340
|
def test_get_CTD_sync_on_parameter_without_values(self):
|
|
341
341
|
print("Reads in a parameter to get_CTD_sync that has no values; Assert error.")
|
|
342
|
-
dbd = dbdreader.MultiDBD("../data/sebastian-2014-204-05-00?.dbd",
|
|
342
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/sebastian-2014-204-05-00?.dbd",
|
|
343
343
|
complement_files=True)
|
|
344
344
|
try:
|
|
345
345
|
x = dbd.get_CTD_sync("m_depth", "u_dbd_sensor_list_xmit_control")
|
|
@@ -348,7 +348,7 @@ class Dbdreader_MultiDBD_test(unittest.TestCase):
|
|
|
348
348
|
|
|
349
349
|
def test_get_CTD_sync_removes_empty_timestamps(self):
|
|
350
350
|
print("Reads data using get_CTD_sync and empty timestamps should be removed.")
|
|
351
|
-
dbd = dbdreader.MultiDBD("../data/sebastian-2014-204-05-00?.dbd",
|
|
351
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/sebastian-2014-204-05-00?.dbd",
|
|
352
352
|
complement_files=True)
|
|
353
353
|
tctd, T, C, P = dbd.get_CTD_sync()
|
|
354
354
|
t, tctdp = dbd.get("sci_ctd41cp_timestamp")
|
|
@@ -395,13 +395,13 @@ class Dbdreader_MultiDBD_test(unittest.TestCase):
|
|
|
395
395
|
|
|
396
396
|
def test_get_reading_limited_values(self):
|
|
397
397
|
print("Test whether we can read in only 10 depth values when reading multiple files.")
|
|
398
|
-
dbd = dbdreader.MultiDBD("../data/sebastian-2014-204-05-00?.dbd")
|
|
398
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/sebastian-2014-204-05-00?.dbd")
|
|
399
399
|
t0, v0 = dbd.get("m_depth", max_values_to_read=10)
|
|
400
400
|
assert len(t0)==len(v0) and len(t0)==10
|
|
401
401
|
|
|
402
402
|
def test_get_reading_limited_values_mixed_files(self):
|
|
403
403
|
print("Test whether we can read in only 10 depth values when reading multiple dbd and ebd files.")
|
|
404
|
-
dbd = dbdreader.MultiDBD("../data/sebastian-2014-204-05-00?.?bd")
|
|
404
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/sebastian-2014-204-05-00?.?bd")
|
|
405
405
|
t0, v0 = dbd.get("sci_water_pressure", max_values_to_read=10)
|
|
406
406
|
assert len(t0)==len(v0) and len(t0)==10
|
|
407
407
|
|
|
@@ -409,7 +409,7 @@ class Dbdreader_MultiDBD_test(unittest.TestCase):
|
|
|
409
409
|
def test_get_reading_limited_values_requesting_multiple_parameters(self):
|
|
410
410
|
print("Test whether reading a limited number of values from multiple values fails.")
|
|
411
411
|
with self.assertRaises(ValueError):
|
|
412
|
-
dbd = dbdreader.MultiDBD("../data/sebastian-2014-204-05-00?.dbd")
|
|
412
|
+
dbd = dbdreader.MultiDBD("../dbdreader/data/sebastian-2014-204-05-00?.dbd")
|
|
413
413
|
result = dbd.get("m_depth", "m_pitch", max_values_to_read=10)
|
|
414
414
|
|
|
415
415
|
|
|
@@ -434,22 +434,22 @@ class DBDPatternSelect_test(unittest.TestCase):
|
|
|
434
434
|
def test_select_from_pattern(self):
|
|
435
435
|
print("select from pattern")
|
|
436
436
|
PS=dbdreader.DBDPatternSelect(date_format="%d %m %Y %H:%M")
|
|
437
|
-
fns=PS.select(pattern="../data/ama*.sbd",from_date="24 7 2014 00:00")
|
|
437
|
+
fns=PS.select(pattern="../dbdreader/data/ama*.sbd",from_date="24 7 2014 00:00")
|
|
438
438
|
fns.sort()
|
|
439
|
-
self.assertEqual(fns[0],"../data/amadeus-2014-204-05-000.sbd")
|
|
440
|
-
fns=PS.select(pattern="../data/ama*.sbd",from_date="24 7 2014 18:00")
|
|
439
|
+
self.assertEqual(fns[0],"../dbdreader/data/amadeus-2014-204-05-000.sbd")
|
|
440
|
+
fns=PS.select(pattern="../dbdreader/data/ama*.sbd",from_date="24 7 2014 18:00")
|
|
441
441
|
fns.sort()
|
|
442
|
-
self.assertEqual(fns[0],"../data/amadeus-2014-204-05-001.sbd")
|
|
443
|
-
fns=PS.select(pattern="../data/ama*.sbd",until_date="24 7 2014 18:00")
|
|
442
|
+
self.assertEqual(fns[0],"../dbdreader/data/amadeus-2014-204-05-001.sbd")
|
|
443
|
+
fns=PS.select(pattern="../dbdreader/data/ama*.sbd",until_date="24 7 2014 18:00")
|
|
444
444
|
self.assertEqual(len(fns),1)
|
|
445
445
|
|
|
446
446
|
def test_select_from_pattern_non_standard_cache_dir(self):
|
|
447
447
|
print("select from pattern non standard cache dir")
|
|
448
448
|
dbdreader.DBDPatternSelect.cache.clear()
|
|
449
|
-
PS=dbdreader.DBDPatternSelect(date_format="%d %m %Y %H:%M", cacheDir='../data/cac')
|
|
450
|
-
fns=PS.select(pattern="../data/ama*.sbd",from_date="24 7 2014 00:00")
|
|
449
|
+
PS=dbdreader.DBDPatternSelect(date_format="%d %m %Y %H:%M", cacheDir='../dbdreader/data/cac')
|
|
450
|
+
fns=PS.select(pattern="../dbdreader/data/ama*.sbd",from_date="24 7 2014 00:00")
|
|
451
451
|
fns.sort()
|
|
452
|
-
self.assertEqual(fns[0],"../data/amadeus-2014-204-05-000.sbd")
|
|
452
|
+
self.assertEqual(fns[0],"../dbdreader/data/amadeus-2014-204-05-000.sbd")
|
|
453
453
|
|
|
454
454
|
|
|
455
455
|
class DBDList_test(unittest.TestCase):
|
|
@@ -21,7 +21,7 @@ from dbdreader.decompress import *
|
|
|
21
21
|
|
|
22
22
|
@fixture
|
|
23
23
|
def load_verification_data():
|
|
24
|
-
filename_verify = '../data/01600000.mlg'
|
|
24
|
+
filename_verify = '../dbdreader/data/01600000.mlg'
|
|
25
25
|
with open(filename_verify, 'r') as fp:
|
|
26
26
|
data = fp.read()
|
|
27
27
|
return data
|
|
@@ -31,7 +31,7 @@ def load_verification_data():
|
|
|
31
31
|
#
|
|
32
32
|
def test_read_file(load_verification_data):
|
|
33
33
|
verification_data = load_verification_data
|
|
34
|
-
filename = '../data/01600000.mcg'
|
|
34
|
+
filename = '../dbdreader/data/01600000.mcg'
|
|
35
35
|
data = b''
|
|
36
36
|
with Decompressor(filename) as d:
|
|
37
37
|
for block in d.decompressed_blocks():
|
|
@@ -43,7 +43,7 @@ def test_read_file(load_verification_data):
|
|
|
43
43
|
#
|
|
44
44
|
def test_read_file_in_memory(load_verification_data):
|
|
45
45
|
verification_data = load_verification_data
|
|
46
|
-
filename = '../data/01600000.mcg'
|
|
46
|
+
filename = '../dbdreader/data/01600000.mcg'
|
|
47
47
|
with Decompressor(filename) as d:
|
|
48
48
|
data = d.decompress()
|
|
49
49
|
assert data.decode('ascii') == verification_data
|
|
@@ -52,7 +52,7 @@ def test_read_file_in_memory(load_verification_data):
|
|
|
52
52
|
#
|
|
53
53
|
#
|
|
54
54
|
def test_read_file_one_block_only():
|
|
55
|
-
filename = '../data/01600000.mcg'
|
|
55
|
+
filename = '../dbdreader/data/01600000.mcg'
|
|
56
56
|
with Decompressor(filename) as d:
|
|
57
57
|
blocks = [block for block in d.decompressed_blocks(n=1)]
|
|
58
58
|
assert len(blocks) == 1
|
|
@@ -62,7 +62,7 @@ def test_read_file_one_block_only():
|
|
|
62
62
|
# explicitly
|
|
63
63
|
def test_read_file_explicit_file_opener(load_verification_data):
|
|
64
64
|
verification_data = load_verification_data
|
|
65
|
-
filename = '../data/01600000.mcg'
|
|
65
|
+
filename = '../dbdreader/data/01600000.mcg'
|
|
66
66
|
data = b''
|
|
67
67
|
d = Decompressor()
|
|
68
68
|
with open(filename, 'rb') as fp:
|
|
@@ -75,7 +75,7 @@ def test_read_file_explicit_file_opener(load_verification_data):
|
|
|
75
75
|
# explicitly
|
|
76
76
|
def test_read_file_in_memory_explicit_file_opener(load_verification_data):
|
|
77
77
|
verification_data = load_verification_data
|
|
78
|
-
filename = '../data/01600000.mcg'
|
|
78
|
+
filename = '../dbdreader/data/01600000.mcg'
|
|
79
79
|
d = Decompressor()
|
|
80
80
|
with open(filename, 'rb') as fp:
|
|
81
81
|
data = d.decompress(fp=fp)
|
|
@@ -83,7 +83,7 @@ def test_read_file_in_memory_explicit_file_opener(load_verification_data):
|
|
|
83
83
|
|
|
84
84
|
# using the convenience function decompress_file
|
|
85
85
|
def test_convenience_function():
|
|
86
|
-
filename = '../data/01600000.dcd'
|
|
86
|
+
filename = '../dbdreader/data/01600000.dcd'
|
|
87
87
|
filename_decompressed = filename.replace('dcd','dbd')
|
|
88
88
|
try:
|
|
89
89
|
os.unlink(filename_decompressed)
|
|
@@ -104,24 +104,24 @@ def test_extension_generator():
|
|
|
104
104
|
fd = FileDecompressor()
|
|
105
105
|
s = fd._generate_filename_for_output('01600000.dcd')
|
|
106
106
|
assert s == '01600000.dbd'
|
|
107
|
-
infiles = ['../data/01600000.dcd',
|
|
108
|
-
'../data/01600000.ecd',
|
|
109
|
-
'../data/01600000.mcd',
|
|
110
|
-
'../data/01600000.mcg',
|
|
111
|
-
'../data/01600000.ncd',
|
|
112
|
-
'../data/01600000.ncg',
|
|
113
|
-
'../data/01600000.scd',
|
|
114
|
-
'../data/01600000.tcd',
|
|
115
|
-
'../data/00aa00aa.ccc']
|
|
116
|
-
outfiles = ['../data/01600000.dbd',
|
|
117
|
-
'../data/01600000.ebd',
|
|
118
|
-
'../data/01600000.mbd',
|
|
119
|
-
'../data/01600000.mlg',
|
|
120
|
-
'../data/01600000.nbd',
|
|
121
|
-
'../data/01600000.nlg',
|
|
122
|
-
'../data/01600000.sbd',
|
|
123
|
-
'../data/01600000.tbd',
|
|
124
|
-
'../data/00aa00aa.cac']
|
|
107
|
+
infiles = ['../dbdreader/data/01600000.dcd',
|
|
108
|
+
'../dbdreader/data/01600000.ecd',
|
|
109
|
+
'../dbdreader/data/01600000.mcd',
|
|
110
|
+
'../dbdreader/data/01600000.mcg',
|
|
111
|
+
'../dbdreader/data/01600000.ncd',
|
|
112
|
+
'../dbdreader/data/01600000.ncg',
|
|
113
|
+
'../dbdreader/data/01600000.scd',
|
|
114
|
+
'../dbdreader/data/01600000.tcd',
|
|
115
|
+
'../dbdreader/data/00aa00aa.ccc']
|
|
116
|
+
outfiles = ['../dbdreader/data/01600000.dbd',
|
|
117
|
+
'../dbdreader/data/01600000.ebd',
|
|
118
|
+
'../dbdreader/data/01600000.mbd',
|
|
119
|
+
'../dbdreader/data/01600000.mlg',
|
|
120
|
+
'../dbdreader/data/01600000.nbd',
|
|
121
|
+
'../dbdreader/data/01600000.nlg',
|
|
122
|
+
'../dbdreader/data/01600000.sbd',
|
|
123
|
+
'../dbdreader/data/01600000.tbd',
|
|
124
|
+
'../dbdreader/data/00aa00aa.cac']
|
|
125
125
|
for a, b in zip(infiles, outfiles):
|
|
126
126
|
assert fd._generate_filename_for_output(a) == b
|
|
127
127
|
|
|
@@ -137,9 +137,9 @@ def test_extension_generator_with_invalid_extension():
|
|
|
137
137
|
# uncompressed file
|
|
138
138
|
#
|
|
139
139
|
def test_read_ccc_file():
|
|
140
|
-
with open('../data/cac/06a36d4e.cac', 'r') as fp:
|
|
140
|
+
with open('../dbdreader/data/cac/06a36d4e.cac', 'r') as fp:
|
|
141
141
|
verification_data = fp.read()
|
|
142
|
-
filename = '../data/cac/06a36d4e.ccc'
|
|
142
|
+
filename = '../dbdreader/data/cac/06a36d4e.ccc'
|
|
143
143
|
data = b''
|
|
144
144
|
with Decompressor(filename) as d:
|
|
145
145
|
for block in d.decompressed_blocks():
|
|
@@ -149,7 +149,7 @@ def test_read_ccc_file():
|
|
|
149
149
|
# Using the CompressedFile object to read a compressed text file
|
|
150
150
|
def test_CompressedFile(load_verification_data):
|
|
151
151
|
verification_data = load_verification_data
|
|
152
|
-
filename = '../data/01600000.mcg'
|
|
152
|
+
filename = '../dbdreader/data/01600000.mcg'
|
|
153
153
|
lines = []
|
|
154
154
|
with CompressedFile(filename) as fd:
|
|
155
155
|
while True:
|
|
@@ -163,7 +163,7 @@ def test_CompressedFile(load_verification_data):
|
|
|
163
163
|
# Using the CompressedFile object to read a compressed text file, using readlines() method.
|
|
164
164
|
def test_CompressedFileReadlines(load_verification_data):
|
|
165
165
|
verification_data = load_verification_data
|
|
166
|
-
filename = '../data/01600000.mcg'
|
|
166
|
+
filename = '../dbdreader/data/01600000.mcg'
|
|
167
167
|
with CompressedFile(filename) as fd:
|
|
168
168
|
lines = fd.readlines()
|
|
169
169
|
data = b"".join(lines)
|
|
@@ -173,18 +173,18 @@ def test_CompressedFileReadlines(load_verification_data):
|
|
|
173
173
|
|
|
174
174
|
# Test reading of data/01600001.dcd and check it is identical to data/01600001.dbd
|
|
175
175
|
def test_read_compressed_file_C_code():
|
|
176
|
-
compressed_filename = '../data/01600001.dcd'
|
|
177
|
-
regular_filename = '../data/01600001.dbd'
|
|
178
|
-
compressed_dbd = dbdreader.DBD(compressed_filename, cacheDir='../data/cac')
|
|
179
|
-
regular_dbd = dbdreader.DBD(regular_filename, cacheDir='../data/cac')
|
|
176
|
+
compressed_filename = '../dbdreader/data/01600001.dcd'
|
|
177
|
+
regular_filename = '../dbdreader/data/01600001.dbd'
|
|
178
|
+
compressed_dbd = dbdreader.DBD(compressed_filename, cacheDir='../dbdreader/data/cac')
|
|
179
|
+
regular_dbd = dbdreader.DBD(regular_filename, cacheDir='../dbdreader/data/cac')
|
|
180
180
|
compressed_data = compressed_dbd.get("m_depth")
|
|
181
181
|
regular_data = regular_dbd.get("m_depth")
|
|
182
182
|
assert np.all(compressed_data[0]==regular_data[0]) and np.all(compressed_data[1]==regular_data[1])
|
|
183
183
|
|
|
184
184
|
# Test reading of data/0160000?.dcd MultiDBD
|
|
185
185
|
def test_read_compressed_files_C_code():
|
|
186
|
-
pattern = '../data/0160000?.dcd'
|
|
187
|
-
dbd = dbdreader.MultiDBD(pattern, cacheDir='../data/cac')
|
|
186
|
+
pattern = '../dbdreader/data/0160000?.dcd'
|
|
187
|
+
dbd = dbdreader.MultiDBD(pattern, cacheDir='../dbdreader/data/cac')
|
|
188
188
|
t, d = dbd.get("m_depth")
|
|
189
189
|
assert t.ptp() == pytest.approx(2511.95, 0.01)
|
|
190
190
|
|
|
@@ -192,31 +192,31 @@ def test_read_compressed_files_C_code():
|
|
|
192
192
|
# Test missing cac file for single dbd_label
|
|
193
193
|
def test_missing_cac_file_for_single_compressed_file():
|
|
194
194
|
try:
|
|
195
|
-
os.unlink('../data/cac/daad1b20.cac')
|
|
195
|
+
os.unlink('../dbdreader/data/cac/daad1b20.cac')
|
|
196
196
|
except:
|
|
197
197
|
pass
|
|
198
198
|
|
|
199
199
|
with pytest.raises(dbdreader.DbdError):
|
|
200
|
-
dbd = dbdreader.DBD('../data/01600000.ecd', cacheDir='../data/cac')
|
|
200
|
+
dbd = dbdreader.DBD('../dbdreader/data/01600000.ecd', cacheDir='../dbdreader/data/cac')
|
|
201
201
|
|
|
202
202
|
# Test missing cac file being created from ccc file for MultiDBD
|
|
203
203
|
def test_missing_cac_file_for_compressed_file_multidbd():
|
|
204
204
|
try:
|
|
205
|
-
os.unlink('../data/cac/daad1b20.cac')
|
|
205
|
+
os.unlink('../dbdreader/data/cac/daad1b20.cac')
|
|
206
206
|
except:
|
|
207
207
|
pass
|
|
208
208
|
|
|
209
|
-
dbd = dbdreader.MultiDBD('../data/0160000?.ecd', cacheDir='../data/cac')
|
|
210
|
-
assert os.path.exists('../data/cac/daad1b20.cac')
|
|
209
|
+
dbd = dbdreader.MultiDBD('../dbdreader/data/0160000?.ecd', cacheDir='../dbdreader/data/cac')
|
|
210
|
+
assert os.path.exists('../dbdreader/data/cac/daad1b20.cac')
|
|
211
211
|
|
|
212
212
|
|
|
213
213
|
# Test we can open compressed flight and science files.
|
|
214
214
|
def test_open_flight_and_science_files():
|
|
215
|
-
dbd = dbdreader.MultiDBD('../data/0160000?.?cd', cacheDir='../data/cac')
|
|
215
|
+
dbd = dbdreader.MultiDBD('../dbdreader/data/0160000?.?cd', cacheDir='../dbdreader/data/cac')
|
|
216
216
|
|
|
217
217
|
# Test we can open compressed flight and science files.
|
|
218
218
|
def test_open_flight_and_science_files_finding_complement_files():
|
|
219
|
-
dbd = dbdreader.MultiDBD('../data/0160000?.dcd', complement_files=True, cacheDir='../data/cac')
|
|
219
|
+
dbd = dbdreader.MultiDBD('../dbdreader/data/0160000?.dcd', complement_files=True, cacheDir='../dbdreader/data/cac')
|
|
220
220
|
|
|
221
221
|
|
|
222
222
|
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
COPYING
|
|
2
|
-
COPYRIGHT
|
|
3
|
-
INSTALL.rst
|
|
4
|
-
LICENSE
|
|
5
|
-
MANIFEST.in
|
|
6
|
-
README.rst
|
|
7
|
-
requirements.txt
|
|
8
|
-
setup.py
|
|
9
|
-
data/01600000.dcd
|
|
10
|
-
data/01600000.ebd
|
|
11
|
-
data/01600000.ecd
|
|
12
|
-
data/01600000.mcg
|
|
13
|
-
data/01600000.mlg
|
|
14
|
-
data/01600001.dbd
|
|
15
|
-
data/01600001.dcd
|
|
16
|
-
data/01600001.ebd
|
|
17
|
-
data/01600001.ecd
|
|
18
|
-
data/amadeus-2014-204-05-000.dbd
|
|
19
|
-
data/amadeus-2014-204-05-000.ebd
|
|
20
|
-
data/amadeus-2014-204-05-000.sbd
|
|
21
|
-
data/amadeus-2014-204-05-000.tbd
|
|
22
|
-
data/amadeus-2014-204-05-001.sbd
|
|
23
|
-
data/amadeus-2014-204-05-001.tbd
|
|
24
|
-
data/amadeus-2014-204-05-002.sbd
|
|
25
|
-
data/amadeus-2014-204-05-002.tbd
|
|
26
|
-
data/ammonite-2008-028-01-000.mbd
|
|
27
|
-
data/electa-2023-143-00-050.sbd
|
|
28
|
-
data/electa-2023-143-00-050.tbd
|
|
29
|
-
data/empty-2014-204-05-000.dbd
|
|
30
|
-
data/invalid_encoding-2014-204-05-000.dbd
|
|
31
|
-
data/sebastian-2014-204-05-000.dbd
|
|
32
|
-
data/sebastian-2014-204-05-000.ebd
|
|
33
|
-
data/sebastian-2014-204-05-001.dbd
|
|
34
|
-
data/sebastian-2014-204-05-001.ebd
|
|
35
|
-
data/unit_887-2021-321-3-0.sbd
|
|
36
|
-
data/unit_887-2021-321-3-0.tbd
|
|
37
|
-
data/cac/06a36d4e.cac
|
|
38
|
-
data/cac/06a36d4e.ccc
|
|
39
|
-
data/cac/093bd5ed.cac
|
|
40
|
-
data/cac/0f682cb2.cac
|
|
41
|
-
data/cac/468fd1be.cac
|
|
42
|
-
data/cac/61b1780f.cac
|
|
43
|
-
data/cac/813b137d.cac
|
|
44
|
-
data/cac/92610b65.cac
|
|
45
|
-
data/cac/c4ec741e.cac
|
|
46
|
-
data/cac/d6f44165.cac
|
|
47
|
-
data/cac/daad1b20.cac
|
|
48
|
-
data/cac/daad1b20.ccc
|
|
49
|
-
data/cac/dc76ebd5.cac
|
|
50
|
-
data/cac_missing/d6f44165.cac
|
|
51
|
-
dbdreader/__init__.py
|
|
52
|
-
dbdreader/dbdreader.py
|
|
53
|
-
dbdreader/decompress.py
|
|
54
|
-
dbdreader/scripts.py
|
|
55
|
-
dbdreader.egg-info/PKG-INFO
|
|
56
|
-
dbdreader.egg-info/SOURCES.txt
|
|
57
|
-
dbdreader.egg-info/dependency_links.txt
|
|
58
|
-
dbdreader.egg-info/entry_points.txt
|
|
59
|
-
dbdreader.egg-info/requires.txt
|
|
60
|
-
dbdreader.egg-info/top_level.txt
|
|
61
|
-
examples/read_multiple_dbd_files.py
|
|
62
|
-
examples/read_single_dbd_file.py
|
|
63
|
-
extension/dbdreader.c
|
|
64
|
-
extension/decompress.c
|
|
65
|
-
extension/py_dbdreader.c
|
|
66
|
-
extension/include/dbdreader.h
|
|
67
|
-
extension/include/decompress.h
|
|
68
|
-
lz4/lz4.c
|
|
69
|
-
lz4/include/lz4.h
|
|
70
|
-
tests/dbd_test.py
|
|
71
|
-
tests/dbd_test_2.py
|
|
72
|
-
tests/dbdreader_test.py
|
|
73
|
-
tests/test_decompress.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|