diff --git a/saqc/__main__.py b/saqc/__main__.py index 4aea86013379c4e6e46062f396a94c266e170a10..4922c039230359f6bb40d859bbb98cac8f988a95 100644 --- a/saqc/__main__.py +++ b/saqc/__main__.py @@ -157,7 +157,14 @@ def main( flagscol = flagscol.rename("flags") out[k] = pd.concat([data_result[k].rename("data"), flagscol], axis=1) - writeData(writer, out.to_pandas(fill_value=-9999 if scheme == "positional" else np.nan), outfile) + writeData( + writer, + out.to_pandas( + fill_value=-9999 if scheme == "positional" else np.nan, + squeeze_columns=False, + ), + outfile, + ) if __name__ == "__main__": diff --git a/tests/cli/test_integration.py b/tests/cli/test_integration.py index a2cf2a70c2bb5113142370330709f0736c0e1b69..434af82f4b468591869bd2f1eaf5dafdc27dacc6 100644 --- a/tests/cli/test_integration.py +++ b/tests/cli/test_integration.py @@ -64,12 +64,7 @@ DMP = [ @pytest.mark.slow @pytest.mark.parametrize( "scheme, expected", - [ - # ("float", FLOAT), - # ("simple", SIMPLE), - ("positional", POSITIONAL), - # ("dmp", DMP) - ], + [("float", FLOAT), ("simple", SIMPLE), ("positional", POSITIONAL), ("dmp", DMP)], ) def test__main__py(tmp_path, scheme, expected): import saqc.__main__ diff --git a/tests/core/test_translator.py b/tests/core/test_translator.py index aaf233e87067b26a51af1bfbf2980280dd4dad24..28741da0ea98dbcbec578d9dfb9ac7696a4ebca9 100644 --- a/tests/core/test_translator.py +++ b/tests/core/test_translator.py @@ -101,17 +101,29 @@ def test_dmpTranslator(): } assert (tflags["var1"]["quality_flag"] == "DOUBTFUL").all(axis=None) - assert (tflags["var1"]["quality_comment"] == '{"test": "flagBar", "comment": "I did it"}').all(axis=None) + assert ( + tflags["var1"]["quality_comment"] + == '{"test": "flagBar", "comment": "I did it"}' + ).all(axis=None) assert (tflags["var1"]["quality_cause"] == "OTHER").all(axis=None) assert (tflags["var2"]["quality_flag"] == "BAD").all(axis=None) - assert (tflags["var2"]["quality_comment"] == '{"test": "flagFoo", "comment": ""}').all(axis=None) + assert ( + tflags["var2"]["quality_comment"] == '{"test": "flagFoo", "comment": ""}' + ).all(axis=None) assert (tflags["var2"]["quality_cause"] == "BELOW_OR_ABOVE_MIN_MAX").all(axis=None) - assert (tflags["var3"].loc[flags["var3"] == BAD, "quality_comment"] == '{"test": "unknown", "comment": ""}').all(axis=None) - assert (tflags["var3"].loc[flags["var3"] == BAD, "quality_cause"] == "OTHER").all(axis=None) - assert (tflags["var3"].loc[flags["var3"] == UNFLAGGED, "quality_cause"] == "").all(axis=None) + assert ( + tflags["var3"].loc[flags["var3"] == BAD, "quality_comment"] + == '{"test": "unknown", "comment": ""}' + ).all(axis=None) + assert (tflags["var3"].loc[flags["var3"] == BAD, "quality_cause"] == "OTHER").all( + axis=None + ) + assert (tflags["var3"].loc[flags["var3"] == UNFLAGGED, "quality_cause"] == "").all( + axis=None + ) def test_positionalTranslator(): @@ -161,14 +173,24 @@ def test_dmpTranslatorIntegration(): qcause = pd.DataFrame({k: v["quality_cause"] for k, v in flags.items()}) assert qflags.isin(scheme._forward.keys()).all(axis=None) - assert qfunc.map(lambda v: json.loads(v)["test"] if v else "").isin({"", "flagMissing", "flagRange"}).all(axis=None) + assert ( + qfunc.map(lambda v: json.loads(v)["test"] if v else "") + .isin({"", "flagMissing", "flagRange"}) + .all(axis=None) + ) assert (qcause[qflags[col] == "BAD"] == "OTHER").all(axis=None) round_trip = scheme.toExternal(scheme.toInternal(flags)) - assert pd.DataFrame({k: v["quality_flag"] for k, v in round_trip.items()}).equals(qflags) - assert pd.DataFrame({k: v["quality_comment"] for k, v in round_trip.items()}).equals(qfunc) - assert pd.DataFrame({k: v["quality_cause"] for k, v in round_trip.items()}).equals(qcause) + assert pd.DataFrame({k: v["quality_flag"] for k, v in round_trip.items()}).equals( + qflags + ) + assert pd.DataFrame( + {k: v["quality_comment"] for k, v in round_trip.items()} + ).equals(qfunc) + assert pd.DataFrame({k: v["quality_cause"] for k, v in round_trip.items()}).equals( + qcause + ) def test_dmpValidCombinations():