import json import pandas as pd import streamlit as st from common.utility_functions import convert_df_to_csv, prepare_filter_selections, validate_email def test_convert_df_to_csv(fans: pd.DataFrame, fans2: pd.DataFrame)-> None: """ Test Pandas dataframe creation into CSV :param fans: Dataframe for conversion :param fans2: Dataframe for conversion """ assert isinstance(convert_df_to_csv(fans, False), bytes) assert isinstance(convert_df_to_csv(fans2, True), bytes) def test_prepare_filter_selections()-> None: """ Test the filter selection creations """ st.session_state.report_type = "Form" st.session_state.approver = "Manager" st.session_state.dummy = "Unknown" assert json.dumps({'report_type': 'Form', 'approver':'Manager'}, indent=4) == prepare_filter_selections(st.session_state) def test_validate_email()-> None: """ Test email validator """ assert validate_email('correct.email@domain.com') assert not validate_email("not.correct.email")