Newer
Older
"""
This test file tests the Dataset class in Dataset.py.
"""
from Dataset import Dataset
import pandas as pd
from pathlib import Path
import pytest
this_file_dir = Path(__file__).parent
@pytest.fixture
dataset = Dataset(str(this_file_dir / "../data/GamingStudy_data.csv"))
return dataset
def test_load_Dataset_class():
"""Tests if the dataset is successfully loaded."""
dataset = Dataset(str(this_file_dir / "../data/GamingStudy_data.csv"))
assert type(dataset) == Dataset
assert type(dataset.dataframe) == pd.DataFrame
def test_incorrectly_load_Dataset_class():
with pytest.raises(ValueError):
dataset = Dataset(1234) # not a string
with pytest.raises(OSError):
dataset = Dataset("aaa.bcd") # doesn't end with .csv
with pytest.raises(FileNotFoundError):
dataset = Dataset(
str(this_file_dir / "./data/GamingStudy_data.csv")
) # wrong file location
assert type(the_dataset.get_dataframe()) == pd.DataFrame
def test_combined_anxiety_score(the_dataset: Dataset):
"""Tests Dataset.get_combined_anxiety_score()."""
dataframe = the_dataset.get_dataframe()
anxiety_scores = the_dataset.get_combined_anxiety_score(dataframe)
assert anxiety_scores.dtype == float
assert anxiety_scores.min() >= 0
assert anxiety_scores.max() <= 1
def test_get_is_narcissist_col(the_dataset: Dataset):
dataframe = the_dataset.get_dataframe()
is_narcissist_row = the_dataset.get_is_narcissist_col(dataframe)
assert is_narcissist_row.dtype == bool
def test_preprocessed_dataframe(the_dataset: Dataset):
"""Tests that the dataframe is preprocessed correctly."""
dataframe = the_dataset.get_dataframe()
columns_set = set(dataframe.columns)
assert "League" not in columns_set
assert "Anxiety_score" in columns_set
assert "Is_narcissist" in columns_set
def test_get_sorted_columns(the_dataset: Dataset):
sorted_GAD1 = the_dataset.get_sorted_column("GAD_T")