from pantomath_sdk import PlatformTypes


def test_get_platform_types():
    expected_list = [
        "ADF",
        "AIRFLOW",
        "ALTERYX",
        "ANALYZER",
        "API_GATEWAY",
        "ASTRO",
        "ASTRONOMER",
        "AWS",
        "AWS_ATHENA",
        "AWS_EMR",
        "AWS_GLUE",
        "AWS_QUICKSIGHT",
        "AWS_SAGEMAKER",
        "AZSTORAGE",
        "BIGQUERY",
        "BIG_QUERY",
        "BOX",
        "CASSANDRADB",
        "CLICKHOUSE",
        "COMPOSER",
        "CONTROL_M",
        "CUSTOM_LOGS",
        "DATAIKU",
        "DATAPROC",
        "DATASTAGE",
        "DATA_ACTIVATOR",
        "DATA_PROC",
        "DBT",
        "DBT_CORE",
        "DBX",
        "DBX_LEGACY",
        "DELTA_LAKE",
        "DOMO",
        "DROPBOX",
        "DYNAMODB",
        "EXCEL",
        "EXTERNAL",
        "FIREBASE",
        "FIVETRAN",
        "GOOGLE_DATA_FUSION",
        "GOOGLE_DRIVE",
        "GOOGLE_LOOKER",
        "GOOGLE_STORAGE",
        "GREENPLUM",
        "HPCC",
        "HVR",
        "IBM_DATASTAGE",
        "INFORMATICA",
        "KAFKA",
        "KINESIS",
        "KNIME",
        "LOGIC_APP",
        "LOGIC_APPS",
        "MARIADB",
        "MATILLION",
        "METABASE",
        "MICROSOFT_FABRIC",
        "MICROSTRATEGY",
        "MODE",
        "MONGODB",
        "MYSQL",
        "NEO4J",
        "OBIEE",
        "ONELAKE",
        "ORACLE",
        "ORACLE_DATA_INTEGRATOR",
        "OUTLOOK",
        "PBIRS",
        "POSTGRES",
        "POWERBI",
        "POWER_APPS",
        "POWER_AUTOMATE",
        "PREFECT",
        "QLIKSENSE",
        "QLIKVIEW",
        "QLIK_REPLICATE",
        "RDS",
        "REDSHIFT",
        "S3",
        "SAP_BO",
        "SAP_HANA",
        "SHAREPOINT",
        "SIGMA",
        "SISENSE",
        "SNAP_LOGIC",
        "SNOWFLAKE",
        "SPARK",
        "SPOTFIRE",
        "SQL_SERVER",
        "SSAS",
        "SSIS",
        "SSRS",
        "STARBURST",
        "SYNAPSE",
        "TABLEAU",
        "TALEND",
        "THOUGHTSPOT",
        "UNKNOWN",
        "YELLOWBRICK",
    ]
    statuses = PlatformTypes.get_platform_types()
    assert statuses.sort() == expected_list.sort()


def test_is_platform_type():
    assert PlatformTypes.is_platform_type("SQL_SERVER")


def test_not_is_platform_type():
    assert not PlatformTypes.is_platform_type("FOO")
