@@ -29,3 +29,63 @@ def test_to_dataframe(self):
29
29
)
30
30
expected_df = expected_df .set_index (['kingdom' , 'phylum' , 'class' , 'order' , 'family' , 'genus' , 'species' ])
31
31
pd .testing .assert_frame_equal (self .sunbeamkraken2parser .dataframe , expected_df )
32
+
33
+ def test_to_dataframe_xls (self ):
34
+ """
35
+ Test based on input.xls (old-style Excel format)
36
+ """
37
+ input_path = os .path .join (os .path .dirname (__file__ ), 'sunbeam_kraken2.xls' )
38
+ sunbeamkraken2parser = SunbeamKraken2Parser (input_path )
39
+ expected_df = pd .DataFrame (
40
+ [
41
+ ['Bacteria' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 2 , 5.5 , 6.0 ], # noqa
42
+ ['Bacteria' , 'Firmicutes' , 'Bacilli' , 'Lactobacillales' , 'Lactobacillales (order)' , 'Lactobacillales (order)' , 'Lactobacillales (order)' , 186826 , 4.3 , 2.1 ], # noqa
43
+ ['Bacteria' , 'Firmicutes' , 'Bacilli' , 'Lactobacillales' , 'Lactobacillaceae' , 'Lactobacillus' , 'Lactobacillus_jensenii' , 109790 , 1.0 , 12.0 ] # noqa
44
+ ],
45
+ columns = [
46
+ 'kingdom' , 'phylum' , 'class' , 'order' , 'family' , 'genus' , 'species' ,
47
+ sunbeamkraken2parser .new_otu_id_name , 'SAMPLE_1' , 'SAMPLE_2'
48
+ ]
49
+ )
50
+ expected_df = expected_df .set_index (['kingdom' , 'phylum' , 'class' , 'order' , 'family' , 'genus' , 'species' ])
51
+ pd .testing .assert_frame_equal (sunbeamkraken2parser .dataframe , expected_df )
52
+
53
+ def test_to_dataframe_xlsx (self ):
54
+ """
55
+ Test based on input.xlsx (newer Excel file formats)
56
+ """
57
+ input_path = os .path .join (os .path .dirname (__file__ ), 'sunbeam_kraken2.xlsx' )
58
+ sunbeamkraken2parser = SunbeamKraken2Parser (input_path )
59
+ expected_df = pd .DataFrame (
60
+ [
61
+ ['Bacteria' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 2 , 5.5 , 6.0 ], # noqa
62
+ ['Bacteria' , 'Firmicutes' , 'Bacilli' , 'Lactobacillales' , 'Lactobacillales (order)' , 'Lactobacillales (order)' , 'Lactobacillales (order)' , 186826 , 4.3 , 2.1 ], # noqa
63
+ ['Bacteria' , 'Firmicutes' , 'Bacilli' , 'Lactobacillales' , 'Lactobacillaceae' , 'Lactobacillus' , 'Lactobacillus_jensenii' , 109790 , 1.0 , 12.0 ] # noqa
64
+ ],
65
+ columns = [
66
+ 'kingdom' , 'phylum' , 'class' , 'order' , 'family' , 'genus' , 'species' ,
67
+ sunbeamkraken2parser .new_otu_id_name , 'SAMPLE_1' , 'SAMPLE_2'
68
+ ]
69
+ )
70
+ expected_df = expected_df .set_index (['kingdom' , 'phylum' , 'class' , 'order' , 'family' , 'genus' , 'species' ])
71
+ pd .testing .assert_frame_equal (sunbeamkraken2parser .dataframe , expected_df )
72
+
73
+ def test_to_dataframe_ods (self ):
74
+ """
75
+ Test based on input.ods (OpenDocument file format)
76
+ """
77
+ input_path = os .path .join (os .path .dirname (__file__ ), 'sunbeam_kraken2.ods' )
78
+ sunbeamkraken2parser = SunbeamKraken2Parser (input_path )
79
+ expected_df = pd .DataFrame (
80
+ [
81
+ ['Bacteria' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 'Bacteria (kingdom)' , 2 , 5.5 , 6.0 ], # noqa
82
+ ['Bacteria' , 'Firmicutes' , 'Bacilli' , 'Lactobacillales' , 'Lactobacillales (order)' , 'Lactobacillales (order)' , 'Lactobacillales (order)' , 186826 , 4.3 , 2.1 ], # noqa
83
+ ['Bacteria' , 'Firmicutes' , 'Bacilli' , 'Lactobacillales' , 'Lactobacillaceae' , 'Lactobacillus' , 'Lactobacillus_jensenii' , 109790 , 1.0 , 12.0 ] # noqa
84
+ ],
85
+ columns = [
86
+ 'kingdom' , 'phylum' , 'class' , 'order' , 'family' , 'genus' , 'species' ,
87
+ sunbeamkraken2parser .new_otu_id_name , 'SAMPLE_1' , 'SAMPLE_2'
88
+ ]
89
+ )
90
+ expected_df = expected_df .set_index (['kingdom' , 'phylum' , 'class' , 'order' , 'family' , 'genus' , 'species' ])
91
+ pd .testing .assert_frame_equal (sunbeamkraken2parser .dataframe , expected_df )
0 commit comments