blob: cf3bf1bcf11111a8689034286765fedc39e44d9e [file] [log] [blame]
Ben Clayton6b4924f2021-02-17 20:13:34 +00001// Copyright 2021 The Tint Authors.
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#include "src/debug.h"
16
17#include "gtest/gtest-spi.h"
18
19namespace tint {
20namespace {
21
22TEST(DebugTest, Unreachable) {
23 EXPECT_FATAL_FAILURE(
24 {
25 diag::List diagnostics;
26 TINT_UNREACHABLE(diagnostics);
27 },
28 "internal compiler error");
Ben Clayton6b4924f2021-02-17 20:13:34 +000029}
30
Ben Clayton01df2a72021-03-09 13:52:18 +000031TEST(DebugTest, AssertTrue) {
32 TINT_ASSERT(true);
33}
34
35TEST(DebugTest, AssertFalse) {
36 EXPECT_FATAL_FAILURE({ TINT_ASSERT(false); }, "internal compiler error");
37}
38
Ben Clayton6b4924f2021-02-17 20:13:34 +000039} // namespace
40} // namespace tint