From 27ab1be90ac1cbb7e5ae7ef59d63b6948c4d52a2 Mon Sep 17 00:00:00 2001 From: Bryan Brancotte <bryan.brancotte@pasteur.fr> Date: Thu, 3 Feb 2022 18:06:19 +0100 Subject: [PATCH] add file to drive import when considering duplicates --- .../test_data/duplicated_host.xlsx | Bin 0 -> 5858 bytes .../test_data/duplicated_host.xlsx.json | 17 +++++++++++++++++ .../test_data/duplicated_virus.xlsx | Bin 0 -> 5848 bytes .../test_data/duplicated_virus.xlsx.json | 18 ++++++++++++++++++ 4 files changed, 35 insertions(+) create mode 100644 src/viralhostrange/test_data/duplicated_host.xlsx create mode 100644 src/viralhostrange/test_data/duplicated_host.xlsx.json create mode 100644 src/viralhostrange/test_data/duplicated_virus.xlsx create mode 100644 src/viralhostrange/test_data/duplicated_virus.xlsx.json diff --git a/src/viralhostrange/test_data/duplicated_host.xlsx b/src/viralhostrange/test_data/duplicated_host.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..827987ba34d96b69d851994209003f1b37585307 GIT binary patch literal 5858 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 Hm(u?O;9?p1 literal 0 HcmV?d00001 diff --git a/src/viralhostrange/test_data/duplicated_host.xlsx.json b/src/viralhostrange/test_data/duplicated_host.xlsx.json new file mode 100644 index 00000000..96d5ae5e --- /dev/null +++ b/src/viralhostrange/test_data/duplicated_host.xlsx.json @@ -0,0 +1,17 @@ +{ + "C1": { + "r1": "0", + "r2": "0", + "r3": "0" + }, + "C2": { + "r1": "1", + "r2": "1", + "r3": "2" + }, + "C4": { + "r1": "2", + "r2": "0", + "r3": "0" + } +} \ No newline at end of file diff --git a/src/viralhostrange/test_data/duplicated_virus.xlsx b/src/viralhostrange/test_data/duplicated_virus.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..6944e1e12d018e8259c24849936452ba3f84a0c0 GIT binary patch literal 5848 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 DJiPr4 literal 0 HcmV?d00001 diff --git a/src/viralhostrange/test_data/duplicated_virus.xlsx.json b/src/viralhostrange/test_data/duplicated_virus.xlsx.json new file mode 100644 index 00000000..db4d26e6 --- /dev/null +++ b/src/viralhostrange/test_data/duplicated_virus.xlsx.json @@ -0,0 +1,18 @@ +{ + "C1": { + "r1": "0", + "r2": "0" + }, + "C2": { + "r1": "1", + "r2": "1" + }, + "C3": { + "r1": "0", + "r2": "2" + }, + "C4": { + "r1": "2", + "r2": "0" + } +} \ No newline at end of file -- GitLab