aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_fact_sales_order.py
blob: 82845d764d770fb1c998f2d360658dc86f41a8f6 (plain)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
from src.fact_sales_order import create_dim_design, create_dim_staff, create_dim_currency
import pandas as pd

class TestCreateDimDesign:
    def test_dim_design_returns_dataframe(self):
        d = {"test": ["Hello", "Bye"], "design_id": ["Hello", "Bye"], "design_name": ["Hello", "Bye"], 
                "file_name": ["Hello", "Bye"], "file_location": ["Hello", "Bye"], "Hello": ["Hello", "Bye"]}
        test_df = {"design": pd.DataFrame(data=d)}
        result = create_dim_design(test_df)
        assert isinstance(result, pd.DataFrame)

    def test_dim_design_returns_correct_columns_and_values(self):
        d = {"test": ["Hello", "Bye"], "design_id": ["Hello", "Bye"], "design_name": ["Hello", "Bye"], 
                "file_name": ["Hello", "Bye"], "file_location": ["Hello", "Bye"], "Hello": ["Hello", "Bye"]}
        test_df = {"design": pd.DataFrame(data=d)}
        result = create_dim_design(test_df)
        d2 = {"design_id": ["Hello", "Bye"], "design_name": ["Hello", "Bye"], "file_name": ["Hello", "Bye"], 
            "file_location": ["Hello", "Bye"]}
        expected_df = pd.DataFrame(data=d2)
        expected_result = expected_df.copy()
        assert result.equals(expected_result)

class TestCreateDimStaff:
    def test_dim_staff_returns_dataframe(self):
        d = {"staff_id": ["Hello", "Bye"], "first_name": ["Hello", "Bye"], "last_name": ["Hello", "Bye"], "department_id": ["Hello", "Bye"]}
        d2 = {"department_name": ["Hello", "Bye"], "location": ["Hello", "Bye"], "email_address": ["Hello", "Bye"], "department_id": ["Hello", "Bye"]}
        test_df = {"staff": pd.DataFrame(data=d), "department": pd.DataFrame(data=d2)}
        result = create_dim_staff(test_df)
        assert isinstance(result, pd.DataFrame)  

    def test_dim_staff_returns_correct_columns_and_values(self):
        d = {"staff_id": ["Hello", "Bye"], "first_name": ["Hello", "Bye"], "last_name": ["Hello", "Bye"], "department_id": ["Hello", "Bye"]}
        d2 = {"department_name": ["Hello", "Bye"], "location": ["Hello", "Bye"], "email_address": ["Hello", "Bye"], "department_id": ["Hello", "Bye"]}
        test_df = {"staff": pd.DataFrame(data=d), "department": pd.DataFrame(data=d2)}
        result = create_dim_staff(test_df)
        expected_d = {"staff_id": ["Hello", "Bye"], "first_name": ["Hello", "Bye"], "last_name": ["Hello", "Bye"], "department_name": ["Hello", "Bye"], "location": ["Hello", "Bye"], "email_address": ["Hello", "Bye"]}
        expected_df = pd.DataFrame(data=expected_d)
        expected_result = expected_df.copy()
        assert result.equals(expected_result)     

class TestCreateDimCurrency:
    def test_dim_currency_returns_dataframe(self):
        d = {"currency_id": [1, 2, 3], "currency_code": ["USD", "EUR", "GBP"]}
        test_df = {"currency": pd.DataFrame(data=d)}
        result = create_dim_currency(test_df)
        assert isinstance(result, pd.DataFrame)  
        
    def test_dim_currency_returns_columns_and_values(self):
        d = {"currency_id": [1, 2, 3], "currency_code": ["USD", "EUR", "GBP"]}
        test_df = {"currency": pd.DataFrame(data=d)}
        result = create_dim_currency(test_df)
        expected_d = {"currency_id": [1, 2, 3], "currency_code": ["USD", "EUR", "GBP"], "currency_name": ["US Dollar", "Euro", "Pound"]}
        expected_df = pd.DataFrame(data=expected_d)
        expected_result = expected_df.copy()
        assert result.equals(expected_result)

    
git.ajschof.me — hosted by ajschofield — powered by cgit