From a4ffdf5caced76f720b44f2b3ccd13a9be6f7040 Mon Sep 17 00:00:00 2001 From: BonfaceKilz Date: Mon, 14 Mar 2022 18:01:02 +0300 Subject: Get all permissible column data * gn3/csvcmp.py: Import "Any" and "List". (get_allowable_sampledata_headers): New function. * tests/unit/test_csvcmp: Import "get_allowable_sampledata_headers". (test_get_allowable_csv_headers): Test case for the above. --- gn3/csvcmp.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'gn3') diff --git a/gn3/csvcmp.py b/gn3/csvcmp.py index 43b795d..aa057b7 100644 --- a/gn3/csvcmp.py +++ b/gn3/csvcmp.py @@ -1,5 +1,7 @@ """This module contains functions for manipulating and working with csv texts""" +from typing import Any, List + import json import os import uuid @@ -106,3 +108,13 @@ def fill_csv(csv_text, width, value="x"): _n[i] = value data.append(",".join(_n + [value] * (width - len(_n)))) return "\n".join(data) + + +def get_allowable_sampledata_headers(conn: Any) -> List: + """Get a list of all the case-attributes stored in the database""" + attributes = ["Strain Name", "Value", "SE", "Count"] + with conn.cursor() as cursor: + cursor.execute("SELECT Name from CaseAttribute") + attributes += [attributes[0] for attributes in + cursor.fetchall()] + return attributes -- cgit v1.2.3