summaryrefslogtreecommitdiffstats
path: root/toolkit/components/uniffi-fixtures/geometry/tests
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/uniffi-fixtures/geometry/tests')
-rw-r--r--toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.kts10
-rw-r--r--toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.py10
-rw-r--r--toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.rb16
-rw-r--r--toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.swift10
-rw-r--r--toolkit/components/uniffi-fixtures/geometry/tests/test_generated_bindings.rs6
5 files changed, 52 insertions, 0 deletions
diff --git a/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.kts b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.kts
new file mode 100644
index 0000000000..77bb9932ec
--- /dev/null
+++ b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.kts
@@ -0,0 +1,10 @@
+import uniffi.geometry.*;
+
+val ln1 = Line(Point(0.0,0.0), Point(1.0,2.0))
+val ln2 = Line(Point(1.0,1.0), Point(2.0,2.0))
+
+assert( gradient(ln1) == 2.0 )
+assert( gradient(ln2) == 1.0 )
+
+assert( intersection(ln1, ln2) == Point(0.0, 0.0) )
+assert( intersection(ln1, ln1) == null )
diff --git a/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.py b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.py
new file mode 100644
index 0000000000..bfb6560626
--- /dev/null
+++ b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.py
@@ -0,0 +1,10 @@
+from geometry import Line, Point, gradient, intersection
+
+ln1 = Line(start=Point(coord_x=0, coord_y=0), end=Point(coord_x=1, coord_y=2))
+ln2 = Line(start=Point(coord_x=1, coord_y=1), end=Point(coord_x=2, coord_y=2))
+
+assert gradient(ln1) == 2
+assert gradient(ln2) == 1
+
+assert intersection(ln1, ln2) == Point(coord_x=0, coord_y=0)
+assert intersection(ln1, ln1) is None
diff --git a/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.rb b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.rb
new file mode 100644
index 0000000000..90fdff684e
--- /dev/null
+++ b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.rb
@@ -0,0 +1,16 @@
+# frozen_string_literal: true
+
+require 'test/unit'
+require 'geometry'
+
+include Test::Unit::Assertions
+include Geometry
+
+ln1 = Line.new(start: Point.new(coord_x: 0.0, coord_y: 0.0), _end: Point.new(coord_x: 1.0, coord_y: 2.0))
+ln2 = Line.new(start: Point.new(coord_x: 1.0, coord_y: 1.0), _end: Point.new(coord_x: 2.0, coord_y: 2.0))
+
+assert_equal Geometry.gradient(ln1), 2
+assert_equal Geometry.gradient(ln2), 1
+
+assert_equal Geometry.intersection(ln1, ln2), Point.new(coord_x: 0, coord_y: 0)
+assert Geometry.intersection(ln1, ln1).nil?
diff --git a/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.swift b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.swift
new file mode 100644
index 0000000000..58bd65607f
--- /dev/null
+++ b/toolkit/components/uniffi-fixtures/geometry/tests/bindings/test_geometry.swift
@@ -0,0 +1,10 @@
+import geometry
+
+let ln1 = Line(start: Point(coordX: 0, coordY: 0), end: Point(coordX: 1, coordY: 2))
+let ln2 = Line(start: Point(coordX: 1, coordY: 1), end: Point(coordX: 2, coordY: 2))
+
+assert(gradient(ln: ln1) == 2.0)
+assert(gradient(ln: ln2) == 1.0)
+
+assert(intersection(ln1: ln1, ln2: ln2) == Point(coordX: 0, coordY: 0))
+assert(intersection(ln1: ln1, ln2: ln1) == nil)
diff --git a/toolkit/components/uniffi-fixtures/geometry/tests/test_generated_bindings.rs b/toolkit/components/uniffi-fixtures/geometry/tests/test_generated_bindings.rs
new file mode 100644
index 0000000000..4638d847c8
--- /dev/null
+++ b/toolkit/components/uniffi-fixtures/geometry/tests/test_generated_bindings.rs
@@ -0,0 +1,6 @@
+uniffi::build_foreign_language_testcases!(
+ "tests/bindings/test_geometry.py",
+ "tests/bindings/test_geometry.rb",
+ "tests/bindings/test_geometry.kts",
+ "tests/bindings/test_geometry.swift",
+);