aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gn3/csvcmp.py3
-rw-r--r--tests/unit/test_csvcmp.py22
2 files changed, 24 insertions, 1 deletions
diff --git a/gn3/csvcmp.py b/gn3/csvcmp.py
index 453c97a..ebd323e 100644
--- a/gn3/csvcmp.py
+++ b/gn3/csvcmp.py
@@ -66,7 +66,8 @@ def csv_diff(base_csv, delta_csv, tmp_dir="/tmp"):
"--format json"))
if _r.get("code") == 0:
_r = json.loads(_r.get("output"))
- _r["Columns"] = max(base_csv_header, delta_csv_header)
+ if any(_r.values()):
+ _r["Columns"] = max(base_csv_header, delta_csv_header)
else:
_r = {}
diff --git a/tests/unit/test_csvcmp.py b/tests/unit/test_csvcmp.py
index 023415d..4a96f99 100644
--- a/tests/unit/test_csvcmp.py
+++ b/tests/unit/test_csvcmp.py
@@ -77,3 +77,25 @@ BXD15,14,x,x"""
'Deletions': [],
'Modifications': [{'Current': 'BXD12,16,x,x,1',
'Original': 'BXD12,16,x,x,x'}]})
+
+
+@pytest.mark.unit_test
+def test_csv_diff_only_column_change():
+ base_csv = """
+Strain Name,Value,SE,Count
+BXD1,18,x,0
+BXD12,16,x,x
+BXD14,15,x,x
+BXD15,14,x,x
+"""
+ delta_csv = """Strain Name,Value,SE,Count,Sex
+BXD1,18,x,0
+BXD12,16,x,x
+BXD14,15,x,x
+BXD15,14,x,x
+"""
+ assert(csv_diff(base_csv=base_csv,
+ delta_csv=delta_csv) == {
+ 'Additions': [],
+ 'Deletions': [],
+ 'Modifications': []})