-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathtest_join_datasets.py
More file actions
30 lines (23 loc) · 1023 Bytes
/
test_join_datasets.py
File metadata and controls
30 lines (23 loc) · 1023 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# tests/test_join_datasets.py
import pandas as pd
from coderdata.load.loader import DatasetLoader, join_datasets
def test_join_datasets():
# Create mock data for two loaders
data1 = pd.DataFrame({'improve_sample_id': [1, 2], 'entrez_id': [3, 4], 'transcriptomics': [.1, .2]})
data2 = pd.DataFrame({'improve_sample_id': [1, 2], 'entrez_id': [5, 6], 'transcriptomics': [.3, .4]})
# Create two DatasetLoader instances
loader1 = DatasetLoader("dataset1")
loader2 = DatasetLoader("dataset2")
# Manually set data for loaders
loader1.transcriptomics = data1
loader2.transcriptomics = data2
# Perform the join
joined_loader = join_datasets(loader1, loader2)
# Expected result after join
expected_data = pd.DataFrame({
'improve_sample_id': [1, 2, 1, 2],
'entrez_id': [3, 4, 5, 6],
'transcriptomics': [.1, .2, .3, .4]
})
# Assert that joined data is as expected
pd.testing.assert_frame_equal(joined_loader.transcriptomics, expected_data)