Skip to content

Commit b854394

Browse files
authored
Merge pull request #204 from BCDA-APS/203-N-number_columns
#N is the number of data columns
2 parents ef20ba0 + 1c920c1 commit b854394

File tree

4 files changed

+18
-3
lines changed

4 files changed

+18
-3
lines changed

CHANGES.rst

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44
Change History
55
##############
66

7-
:1.1.9: release *tba* : updates
7+
:1.1.9: release expected *2019-07-28* : updates & bug fix
88

9+
* `#203 <https://github.com/BCDA-APS/apstools/issues/203>`_
10+
`SpecWriterCallback`: `#N` is number of data columns
911
* `#199 <https://github.com/BCDA-APS/apstools/issues/199>`_
1012
`spec2ophyd` handle CNTPAR:read_misc_1
1113

apstools/filewriters.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,7 @@ def prepare_scan_contents(self):
431431
# "#MD" is our ad hoc SPEC data tag
432432
lines.append(f"#MD {k} = {v}")
433433

434-
lines.append("#N " + str(self.num_primary_data))
434+
lines.append("#N " + str(len(self.data.keys())))
435435
if len(self.data.keys()) > 0:
436436
lines.append("#L " + " ".join(self.data.keys()))
437437
for i in range(self.num_primary_data):

tests/test_filewriter.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import json
77
import os
88
import shutil
9+
import spec2nexus
910
import sys
1011
import tempfile
1112
import unittest
@@ -107,6 +108,17 @@ def test_writer_default_name(self):
107108
self.assertTrue(
108109
os.path.exists(specwriter.spec_filename),
109110
"data file created")
111+
112+
sdf = spec2nexus.spec.SpecDataFile(specwriter.spec_filename)
113+
self.assertEqual(len(sdf.headers), 1)
114+
self.assertEqual(len(sdf.scans), 1)
115+
116+
# check that the #N line is written properly (issue #203)
117+
scans = sdf.getScanNumbers()
118+
self.assertNotIn(108, scans)
119+
self.assertIn("108", scans)
120+
scan = sdf.getScan(108)
121+
self.assertEqual(scan.N[0], len(scan.L))
110122

111123
def test_writer_filename(self):
112124
self.assertTrue(len(self.db) > 0, "test data ready")

tests/test_utils.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,8 @@ def test_print_RE_md(self):
121121
'========= ================================',
122122
''
123123
]
124-
self.assertEqual(str(received), str(expected))
124+
for r, e in zip(received, expected):
125+
self.assertEqual(r, e)
125126

126127
def test_pairwise(self):
127128
items = [1.0, 1.1, 1.01, 1.001, 1.0001, 1.00001, 2]

0 commit comments

Comments
 (0)