xref: /aosp_15_r20/external/bazelbuild-kotlin-rules/tests/common/testing/unittest_suites/unittests.bzl (revision 3a22c0a33dd99bcca39a024d43e6fbcc55c2806e)
1# Copyright 2022 Google LLC. All rights reserved.
2#
3# Licensed under the Apache License, Version 2.0 (the License);
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#     http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15"""unittests"""
16
17load("//:visibility.bzl", "RULES_KOTLIN")
18load("//kotlin/common/testing:unittest_suites.bzl", "kt_unittest_suites")
19
20visibility(RULES_KOTLIN)
21
22unittests = kt_unittest_suites.create()
23
24def _add_private_test_case(_ctx, _env):
25    under_test = kt_unittest_suites.create()
26
27    def _some_test():
28        pass
29
30    under_test.expect_finish(_some_test)
31
32unittests.expect_finish(_add_private_test_case)
33
34def _add_private_fail_case(_ctx, _env):
35    under_test = kt_unittest_suites.create()
36
37    def _some_test():
38        pass
39
40    under_test.expect_fail(_some_test, "")
41
42unittests.expect_finish(_add_private_fail_case)
43
44def _add_public_test_case(_ctx):
45    under_test = kt_unittest_suites.create()
46
47    def some_test():
48        pass
49
50    under_test.expect_finish(some_test)
51
52unittests.expect_fail(_add_public_test_case, "private")
53
54def _add_public_fail_case(_ctx):
55    under_test = kt_unittest_suites.create()
56
57    def some_test():
58        pass
59
60    under_test.expect_fail(some_test, "")
61
62unittests.expect_fail(_add_public_fail_case, "private")
63
64def _add_duplicate_test_case(_ctx):
65    under_test = kt_unittest_suites.create()
66
67    def _some_test():
68        pass
69
70    under_test.expect_finish(_some_test)
71    under_test.expect_finish(_some_test)
72
73unittests.expect_fail(_add_duplicate_test_case, "Existing")
74
75def _add_duplicate_fail_case(_ctx):
76    under_test = kt_unittest_suites.create()
77
78    def _some_test():
79        pass
80
81    under_test.expect_fail(_some_test, "")
82    under_test.expect_fail(_some_test, "")
83
84unittests.expect_fail(_add_duplicate_fail_case, "Existing")
85
86def _add_duplicate_test_fail_case(_ctx):
87    under_test = kt_unittest_suites.create()
88
89    def _some_test():
90        pass
91
92    under_test.expect_finish(_some_test)
93    under_test.expect_fail(_some_test, "")
94
95unittests.expect_fail(_add_duplicate_test_fail_case, "Existing")
96
97_test, _fail = unittests.close()  # @unused
98