summaryrefslogtreecommitdiffstats
path: root/third_party/rust/uniffi-example-geometry/tests/bindings/test_geometry.rb
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/uniffi-example-geometry/tests/bindings/test_geometry.rb')
-rw-r--r--third_party/rust/uniffi-example-geometry/tests/bindings/test_geometry.rb16
1 files changed, 16 insertions, 0 deletions
diff --git a/third_party/rust/uniffi-example-geometry/tests/bindings/test_geometry.rb b/third_party/rust/uniffi-example-geometry/tests/bindings/test_geometry.rb
new file mode 100644
index 0000000000..8b1280d823
--- /dev/null
+++ b/third_party/rust/uniffi-example-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(Point.new(0.0, 0.0), Point.new(1.0, 2.0))
+ln2 = Line.new(Point.new(1.0, 1.0), Point.new(2.0, 2.0))
+
+assert_equal Geometry.gradient(ln1), 2
+assert_equal Geometry.gradient(ln2), 1
+
+assert_equal Geometry.intersection(ln1, ln2), Point.new(0, 0)
+assert Geometry.intersection(ln1, ln1).nil?