diff --git a/grafana_dashboards/schema/panel.py b/grafana_dashboards/schema/panel.py index 0b303b9..1008632 100644 --- a/grafana_dashboards/schema/panel.py +++ b/grafana_dashboards/schema/panel.py @@ -44,9 +44,9 @@ class Panel(object): self.text.update(self.base) def _validate(self): - res = [] def f(data): + res = [] if not isinstance(data, list): raise v.Invalid('Should be a list') diff --git a/tests/schema/fixtures/dashboard-0007.json b/tests/schema/fixtures/dashboard-0007.json new file mode 100644 index 0000000..bff9364 --- /dev/null +++ b/tests/schema/fixtures/dashboard-0007.json @@ -0,0 +1,45 @@ +{ + "dashboard": { + "rows": [ + { + "collapse": false, + "editable": true, + "height": "250px", + "panels": [ + { + "editable": true, + "error": false, + "limit": 10, + "mode": "starred", + "query": "", + "span": 12, + "tag": "", + "title": "Starred Dashboards", + "type": "dashlist" + } + ], + "showTitle": false, + "title": "foo" + }, + { + "collapse": false, + "editable": true, + "height": "250px", + "panels": [ + { + "content": "Some example text is required.", + "editable": true, + "error": false, + "mode": "markdown", + "span": 12, + "title": "no title (click here)", + "type": "text" + } + ], + "showTitle": false, + "title": "bar" + } + ], + "title": "New dashboard" + } +} diff --git a/tests/schema/fixtures/dashboard-0007.yaml b/tests/schema/fixtures/dashboard-0007.yaml new file mode 100644 index 0000000..368b7f7 --- /dev/null +++ b/tests/schema/fixtures/dashboard-0007.yaml @@ -0,0 +1,16 @@ +dashboard: + title: New dashboard + rows: + - title: foo + height: 250px + panels: + - title: Starred Dashboards + type: dashlist + mode: starred + - title: bar + height: 250px + panels: + - title: no title (click here) + type: text + mode: markdown + content: Some example text is required.