| // Part of the Crubit project, under the Apache License v2.0 with LLVM | |
| // Exceptions. See /LICENSE for license information. | |
| // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | |
| use googletest::prelude::*; | |
| use methods::*; | |
| #[gtest] | |
| fn test_instance_const_method() { | |
| let s = InstanceMethods { int_field: 124 }; | |
| assert_eq!(124, s.get_int_field()); | |
| } | |
| #[gtest] | |
| fn test_instance_nonconst_method() { | |
| let mut s = InstanceMethods { int_field: 123 }; | |
| s.set_int_field(457); | |
| assert_eq!(457, s.int_field); | |
| } | |
| #[gtest] | |
| fn test_inline_instance_const_method() { | |
| let s = InstanceMethods { int_field: 124 }; | |
| assert_eq!(124, s.inline_get_int_field()); | |
| } | |
| #[gtest] | |
| fn test_inline_instance_nonconst_method() { | |
| let mut s = InstanceMethods { int_field: 123 }; | |
| s.inline_set_int_field(457); | |
| assert_eq!(457, s.int_field); | |
| } | |
| #[gtest] | |
| fn test_static_factory_method() { | |
| let s: SomeClass = SomeClass::static_factory_method(123); | |
| assert_eq!(123, s.int_var); | |
| } | |
| #[gtest] | |
| fn test_static_method_that_multiplies_its_args() { | |
| assert_eq!(42 * 789, SomeClass::static_method_that_multiplies_its_args(42, 789)); | |
| } | |
| #[gtest] | |
| fn test_static_inline_method() { | |
| assert_eq!(42 * 456, SomeClass::static_inline_method(456)); | |
| } |