-
Notifications
You must be signed in to change notification settings - Fork 0
/
test_app.py
84 lines (61 loc) · 2.53 KB
/
test_app.py
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
import app
import pandas as dataframes
import plotly.express as graphs
from dash import dcc, html
def create_test_dataframe():
return dataframes.DataFrame(
{
"Fruit": ["Apples", "Oranges", "Bananas", "Apples", "Oranges", "Bananas"],
"Amount": [4, 1, 2, 2, 4, 5],
"City": ["SF", "SF", "SF", "Montreal", "Montreal", "Montreal"],
}
)
def create_test_plotly_barchart():
graphs.bar(create_test_dataframe(), x="Fruit", y="Amount", color="City", barmode="group")
def create_test_dash_barchart():
return dcc.Graph(id="example-graph", figure=create_test_plotly_barchart())
def test_example_dataframe_creation():
test_dataframe = app.create_example_dataframe()
app.dataframes.testing.assert_frame_equal(
test_dataframe,
dataframes.DataFrame(
{
"Fruit": [
"Apples",
"Oranges",
"Bananas",
"Apples",
"Oranges",
"Bananas",
],
"Amount": [4, 1, 2, 2, 4, 5],
"City": ["SF", "SF", "SF", "Montreal", "Montreal", "Montreal"],
}
),
)
def test_example_bar_chart():
test_dataframe = create_test_dataframe()
test_bar_chart = app.create_example_barchart(test_dataframe)
assert test_bar_chart.layout.barmode == "group"
assert test_bar_chart.layout.xaxis.title.text == "Fruit"
assert test_bar_chart.layout.yaxis.title.text == "Amount"
assert test_bar_chart.layout.legend.title.text == "City"
def test_example_header():
test_header = app.create_example_header()
assert test_header.children == "Hello Dash"
def test_example_div():
test_div = app.create_example_div()
assert test_div.children == "Dash: A web application framework for Python."
def test_example_dash_graph():
test_ploty_barchart = create_test_plotly_barchart()
test_dash_graph = app.create_example_dash_graph(test_ploty_barchart)
assert test_dash_graph.figure == test_ploty_barchart
def test_dash_graph_id():
test_ploty_barchart = create_test_plotly_barchart()
test_dash_graph = app.create_example_dash_graph(test_ploty_barchart)
assert test_dash_graph.id == "example-graph"
def test_dash_app():
test_app = app.create_example_layout()
assert test_app.children[0].children == "Hello Dash"
assert test_app.children[1].children == "Dash: A web application framework for Python."
# assert test_app.children[2] == create_test_dash_barchart()