| /* |
| * Copyright 2010-2020 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license |
| * that can be found in the LICENSE file. |
| */ |
| |
| import Kt |
| |
| private func testIntType() throws { |
| let i = KT38641.IntType() |
| |
| try assertEquals(actual: i.description_, expected: 42) |
| |
| i.description_ = 17 |
| try assertEquals(actual: i.description_, expected: 17) |
| } |
| |
| private func testVal() throws { |
| try assertEquals(actual: KT38641.Val().description_, expected: "val") |
| } |
| |
| private func testVar() throws { |
| let v = KT38641.Var() |
| |
| try assertEquals(actual: v.description_, expected: "var") |
| |
| v.description_ = "newValue" |
| try assertEquals(actual: v.description_, expected: "newValue") |
| } |
| |
| private func testTwoProperties() throws { |
| let t = KT38641.TwoProperties() |
| #if !DISABLE_MEMBER_NAME_MANGLING |
| try assertEquals(actual: t.description_, expected: "description") |
| try assertEquals(actual: t.description__, expected: "description_") |
| #endif |
| } |
| |
| private func testOverrideVal() throws { |
| try assertEquals(actual: Kt38641Kt.getOverrideValDescription(impl: KT38641OverrideValImpl()), expected: "description_") |
| } |
| |
| class KT38641OverrideValImpl : KT38641.OverrideVal { |
| override var description_: String { |
| get { |
| return "description_" |
| } |
| } |
| } |
| |
| private func testOverrideVar() throws { |
| let impl = KT38641OverrideVarImpl() |
| |
| try assertEquals(actual: Kt38641Kt.getOverrideVarDescription(impl: impl), expected: "description_") |
| |
| Kt38641Kt.setOverrideVarDescription(impl: impl, newValue: "d") |
| try assertEquals(actual: Kt38641Kt.getOverrideVarDescription(impl: impl), expected: "d") |
| } |
| |
| class KT38641OverrideVarImpl : KT38641OverrideVar { |
| var description_: String = "description_" |
| } |
| |
| class Kt38641Tests : SimpleTestProvider { |
| override init() { |
| super.init() |
| |
| test("TestIntType", testIntType) |
| test("TestVal", testVal) |
| test("TestVar", testVar) |
| test("TestTwoProperties", testTwoProperties) |
| test("TestOverrideVal", testOverrideVal) |
| test("TestOverrideVar", testOverrideVar) |
| } |
| } |