Quellcode durchsuchen

add chart data update test

Rodja Trappe vor 2 Jahren
Ursprung
Commit
47d86d4c54
1 geänderte Dateien mit 36 neuen und 0 gelöschten Zeilen
  1. 36 0
      tests/test_chart.py

+ 36 - 0
tests/test_chart.py

@@ -0,0 +1,36 @@
+from selenium.webdriver.common.by import By
+
+from nicegui import ui
+
+from .screen import Screen
+
+
+def get_series_0(selenium):
+    return selenium.find_elements(By.CSS_SELECTOR, '.highcharts-series-0 .highcharts-point')
+
+
+def test_change_chart_data(screen: Screen):
+    chart = ui.chart({
+        'title': False,
+        'chart': {'type': 'bar'},
+        'xAxis': {'categories': ['A', 'B']},
+        'series': [
+            {'name': 'Alpha', 'data': [0.1, 0.2]},
+            {'name': 'Beta', 'data': [0.3, 0.4]},
+        ],
+    }).classes('w-full h-64')
+
+    def update():
+        chart.options['series'][0]['data'][:] = [1, 1]
+        chart.update()
+
+    ui.button('Update', on_click=update)
+
+    screen.open('/')
+    screen.wait(.5)
+    before = [bar.size['width'] for bar in get_series_0(screen.selenium)]
+    screen.click('Update')
+    screen.wait(.5)
+    after = [bar.size['width'] for bar in get_series_0(screen.selenium)]
+    assert before[0] < after[0]
+    assert before[1] < after[1]