Coverage for tests/test_experiment.py: 100%
25 statements
« prev ^ index » next coverage.py v7.0.2, created at 2023-01-03 12:07 -0800
« prev ^ index » next coverage.py v7.0.2, created at 2023-01-03 12:07 -0800
1from sleapyfaces.experiment import Experiment
2from sleapyfaces.structs import File, FileConstructor, CustomColumn
3from sleapyfaces.io import SLEAPanalysis
4import pandas as pd
7def test_experiment():
8 daq_file = File(
9 "/Users/annieehler/Projects/Jupyter_Notebooks/SLEAPyFaces/tests/data/20211105",
10 "DAQOutput.csv",
11 )
12 sleap_file = File(
13 "/Users/annieehler/Projects/Jupyter_Notebooks/SLEAPyFaces/tests/data/20211105",
14 "*.h5",
15 True,
16 )
17 beh_file = File(
18 "/Users/annieehler/Projects/Jupyter_Notebooks/SLEAPyFaces/tests/data/20211105",
19 "BehMetadata.json",
20 )
21 video_file = File(
22 "/Users/annieehler/Projects/Jupyter_Notebooks/SLEAPyFaces/tests/data/20211105",
23 "video.mp4",
24 )
25 sleap = SLEAPanalysis(sleap_file.file)
26 fc = FileConstructor(daq_file, sleap_file, beh_file, video_file)
27 expr = Experiment("Test", fc)
28 assert expr.name == "Test"
29 assert expr.files == fc
30 assert expr.sleap.tracks.equals(sleap.tracks)
31 assert expr.numeric_columns == sleap.track_names
32 cc = [CustomColumn("Mouse", "CSE008"), CustomColumn("Date", "20211105")]
33 expr.buildData(cc)
34 cc[0].buildColumn(len(expr.sleap.tracks.index))
35 assert len(expr.sleap.tracks["Mouse"]) == len(cc[0].Column)
36 assert expr.sleap.tracks.loc[
37 :,
38 ["Mouse", "Date", "Timestamps", "Frames"],
39 ].equals(expr.custom_columns.loc[:, ["Mouse", "Date", "Timestamps", "Frames"]])
40 expr.buildTrials(["Speaker_on", "LED590_on"], [False, True])
41 assert len(expr.trialData) > 1
42 assert type(expr.trialData[0]) is pd.DataFrame
43 assert type(expr.trials) is pd.DataFrame