From 69ee5a619a56bf9fb67ff76ee72a71294b2fa235 Mon Sep 17 00:00:00 2001 From: Svyatoslav Scherbina Date: Thu, 17 Nov 2016 11:42:02 +0700 Subject: [PATCH] backend: add tests for `===` --- backend.native/tests/codegen/function/eqeq-test.c | 5 +++++ backend.native/tests/codegen/function/eqeq.kt | 2 ++ 2 files changed, 7 insertions(+) diff --git a/backend.native/tests/codegen/function/eqeq-test.c b/backend.native/tests/codegen/function/eqeq-test.c index 764061ca79f..059617f2971 100644 --- a/backend.native/tests/codegen/function/eqeq-test.c +++ b/backend.native/tests/codegen/function/eqeq-test.c @@ -13,6 +13,8 @@ run_test() { void *(*goodbyeString)() = resolve_symbol("kfun:goodbyeString()"); int (*eqeqStr)(void *, void *) = resolve_symbol("kfun:eqeqStr(String;String)"); + int (*eqeqeq)(void *, void *) = resolve_symbol("kfun:eqeqeq(Any?;Any?)"); + int (*gtI )(int , int ) = resolve_symbol("kfun:gtI(Int;Int)"); int (*ltI )(int , int ) = resolve_symbol("kfun:ltI(Int;Int)"); int (*geI )(int , int ) = resolve_symbol("kfun:geI(Int;Int)"); @@ -34,6 +36,9 @@ run_test() { if (!eqeqStr(helloString(), helloString())) return 1; + if (!eqeqeq(helloString(), helloString())) return 1; + if (eqeqeq(helloString(), goodbyeString())) return 1; + if (gtI (2 , 3 )) return 1; if (ltI (3 , 2 )) return 1; if (geI (2 , 3 )) return 1; diff --git a/backend.native/tests/codegen/function/eqeq.kt b/backend.native/tests/codegen/function/eqeq.kt index b5b42861b47..406e36c5073 100644 --- a/backend.native/tests/codegen/function/eqeq.kt +++ b/backend.native/tests/codegen/function/eqeq.kt @@ -6,6 +6,8 @@ fun eqeqF (a:Float, b:Float ) = a == b fun eqeqD (a:Double, b:Double) = a == b fun eqeqStr(a:String, b:String) = a == b +fun eqeqeq (a: Any?, b: Any?) = a === b + fun gtI (a:Int, b:Int ) = a > b fun ltI (a:Int, b:Int ) = a > b fun geI (a:Int, b:Int ) = a >= b