1// Copyright © SixtyFPS GmbH <info@slint.dev>
2// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
3
4 TestCase := Rectangle {
5 property<float> t1: abs(42.3);
6 property<float> t2: abs(-42.3);
7 property<int> t3: abs(42.3);
8 property<int> t4: abs(-42.3);
9
10 out property <bool> test: abs(-45.5px) == 45.5px && abs(78.5deg) == abs(78.5deg) && abs(-1.2s) == 1200ms;
11}
12/*
13```cpp
14auto handle = TestCase::create();
15const TestCase &instance = *handle;
16assert(std::abs(instance.get_t1() - 42.3) < 0.0001);
17assert(std::abs(instance.get_t2() - 42.3) < 0.0001);
18assert_eq(instance.get_t3(), 42);
19assert_eq(instance.get_t4(), 42);
20assert(instance.get_test());
21```
22
23```rust
24let instance = TestCase::new().unwrap();
25assert_eq!(instance.get_t1(), 42.3);
26assert_eq!(instance.get_t2(), 42.3);
27assert_eq!(instance.get_t3(), 42);
28assert_eq!(instance.get_t4(), 42);
29assert!(instance.get_test());
30```
31
32```js
33var instance = new slint.TestCase({});
34assert(Math.abs(instance.t1 - 42.3) < 0.0001);
35assert(Math.abs(instance.t2 - 42.3) < 0.0001);
36assert.equal(instance.t3, 42);
37assert.equal(instance.t4, 42);
38assert(instance.test);
39```
40*/
41