tests: Add some error handling tests

This commit is contained in:
James Westman 2021-11-03 23:03:43 -05:00
parent 241668fb94
commit 43d442a6df
No known key found for this signature in database
GPG key ID: CE2DBA0ADB654EA6
11 changed files with 29 additions and 5 deletions

View file

@ -0,0 +1,2 @@
using Gtk 4.0;
using Gtk 3.0;

View file

@ -0,0 +1 @@
2,7,7,Namespace Gtk-3.0 can't be imported because version 4.0 was imported earlier

View file

@ -0,0 +1,4 @@
using Gtk 4.0;
template ClassName : Gtk.Button {}
template ClassName2 : Gtk.Button {}

View file

@ -0,0 +1 @@
4,10,10,Only one template may be defined per file, but this file contains 2

View file

@ -0,0 +1 @@
using Gtk 3.0;

View file

@ -0,0 +1 @@
1,11,3,Only GTK 4 is supported

View file

@ -0,0 +1,2 @@
using Gtk 4.0;
using NotARealNamespace 2.0;

View file

@ -0,0 +1 @@
2,7,17,Namespace NotARealNamespace-2.0 could not be found

View file

@ -73,7 +73,7 @@ class TestSamples(unittest.TestCase):
def error_str(error):
line, col = utils.idx_to_pos(error.start, blueprint)
len = error.end - error.start
return ",".join([str(line + 1), str(col), str(len), error.message])
return ",".join([str(line + 1), str(col + 1), str(len), error.message])
if isinstance(e, CompileError):
actual = error_str(e)
@ -103,4 +103,8 @@ class TestSamples(unittest.TestCase):
def test_sample_errors(self):
self.assert_sample_error("conflicting_namespaces")
self.assert_sample_error("duplicate_obj_id")
self.assert_sample_error("two_templates")
self.assert_sample_error("using_gtk_3")
self.assert_sample_error("using_invalid_namespace")