Skip to content

Commit 1516d40

Browse files
rudybearmeta-codesync[bot]
authored andcommitted
igl | Add BackendType, NormalizedZRange, ResourceStorage, and Result::Code tests
Reviewed By: corporateshark Differential Revision: D109855103 fbshipit-source-id: 7e4d3217882ea3e3577dd4071ab807f479b90cfc
1 parent 9c0a86e commit 1516d40

1 file changed

Lines changed: 120 additions & 0 deletions

File tree

‎src/igl/tests/CommonEnumsTest.cpp‎

Lines changed: 120 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,120 @@
1+
/*
2+
* Copyright (c) Meta Platforms, Inc. and affiliates.
3+
*
4+
* This source code is licensed under the MIT license found in the
5+
* LICENSE file in the root directory of this source tree.
6+
*/
7+
8+
#include <gtest/gtest.h>
9+
10+
#include <igl/Common.h>
11+
12+
namespace igl::tests {
13+
14+
// ---------------------------------------------------------------------------
15+
// BackendType
16+
// ---------------------------------------------------------------------------
17+
18+
TEST(BackendTypeTest, EnumValues) {
19+
EXPECT_EQ(static_cast<uint8_t>(BackendType::Invalid), 0u);
20+
EXPECT_EQ(static_cast<uint8_t>(BackendType::OpenGL), 1u);
21+
EXPECT_EQ(static_cast<uint8_t>(BackendType::Metal), 2u);
22+
EXPECT_EQ(static_cast<uint8_t>(BackendType::Vulkan), 3u);
23+
EXPECT_EQ(static_cast<uint8_t>(BackendType::D3D12), 4u);
24+
// @fb-only
25+
// @fb-only
26+
}
27+
28+
// ---------------------------------------------------------------------------
29+
// NormalizedZRange
30+
// ---------------------------------------------------------------------------
31+
32+
TEST(NormalizedZRangeTest, EnumValues) {
33+
EXPECT_EQ(static_cast<uint8_t>(NormalizedZRange::NegOneToOne), 0u);
34+
EXPECT_EQ(static_cast<uint8_t>(NormalizedZRange::ZeroToOne), 1u);
35+
}
36+
37+
TEST(NormalizedZRangeTest, ValuesAreDistinct) {
38+
EXPECT_NE(NormalizedZRange::NegOneToOne, NormalizedZRange::ZeroToOne);
39+
}
40+
41+
// ---------------------------------------------------------------------------
42+
// ResourceStorage
43+
// ---------------------------------------------------------------------------
44+
45+
TEST(ResourceStorageTest, InvalidIsZero) {
46+
EXPECT_EQ(static_cast<int>(ResourceStorage::Invalid), 0);
47+
}
48+
49+
TEST(ResourceStorageTest, AllValuesDistinct) {
50+
EXPECT_NE(ResourceStorage::Invalid, ResourceStorage::Private);
51+
EXPECT_NE(ResourceStorage::Invalid, ResourceStorage::Shared);
52+
EXPECT_NE(ResourceStorage::Invalid, ResourceStorage::Managed);
53+
EXPECT_NE(ResourceStorage::Invalid, ResourceStorage::Memoryless);
54+
EXPECT_NE(ResourceStorage::Private, ResourceStorage::Shared);
55+
EXPECT_NE(ResourceStorage::Private, ResourceStorage::Managed);
56+
EXPECT_NE(ResourceStorage::Private, ResourceStorage::Memoryless);
57+
EXPECT_NE(ResourceStorage::Shared, ResourceStorage::Managed);
58+
EXPECT_NE(ResourceStorage::Shared, ResourceStorage::Memoryless);
59+
EXPECT_NE(ResourceStorage::Managed, ResourceStorage::Memoryless);
60+
}
61+
62+
// ---------------------------------------------------------------------------
63+
// Result::Code
64+
// ---------------------------------------------------------------------------
65+
66+
TEST(ResultCodeTest, OkIsZero) {
67+
EXPECT_EQ(static_cast<int>(Result::Code::Ok), 0);
68+
}
69+
70+
TEST(ResultCodeTest, ErrorCodesAreNonZero) {
71+
EXPECT_NE(static_cast<int>(Result::Code::ArgumentInvalid), 0);
72+
EXPECT_NE(static_cast<int>(Result::Code::ArgumentNull), 0);
73+
EXPECT_NE(static_cast<int>(Result::Code::ArgumentOutOfRange), 0);
74+
EXPECT_NE(static_cast<int>(Result::Code::InvalidOperation), 0);
75+
EXPECT_NE(static_cast<int>(Result::Code::Unsupported), 0);
76+
EXPECT_NE(static_cast<int>(Result::Code::Unimplemented), 0);
77+
EXPECT_NE(static_cast<int>(Result::Code::RuntimeError), 0);
78+
EXPECT_NE(static_cast<int>(Result::Code::DeviceLost), 0);
79+
}
80+
81+
TEST(ResultCodeTest, AllCodesDistinct) {
82+
EXPECT_NE(Result::Code::Ok, Result::Code::ArgumentInvalid);
83+
EXPECT_NE(Result::Code::Ok, Result::Code::ArgumentNull);
84+
EXPECT_NE(Result::Code::Ok, Result::Code::ArgumentOutOfRange);
85+
EXPECT_NE(Result::Code::Ok, Result::Code::InvalidOperation);
86+
EXPECT_NE(Result::Code::Ok, Result::Code::Unsupported);
87+
EXPECT_NE(Result::Code::Ok, Result::Code::Unimplemented);
88+
EXPECT_NE(Result::Code::Ok, Result::Code::RuntimeError);
89+
EXPECT_NE(Result::Code::Ok, Result::Code::DeviceLost);
90+
EXPECT_NE(Result::Code::ArgumentInvalid, Result::Code::ArgumentNull);
91+
EXPECT_NE(Result::Code::ArgumentInvalid, Result::Code::ArgumentOutOfRange);
92+
EXPECT_NE(Result::Code::ArgumentInvalid, Result::Code::InvalidOperation);
93+
EXPECT_NE(Result::Code::ArgumentInvalid, Result::Code::Unsupported);
94+
EXPECT_NE(Result::Code::ArgumentInvalid, Result::Code::Unimplemented);
95+
EXPECT_NE(Result::Code::ArgumentInvalid, Result::Code::RuntimeError);
96+
EXPECT_NE(Result::Code::ArgumentInvalid, Result::Code::DeviceLost);
97+
EXPECT_NE(Result::Code::ArgumentNull, Result::Code::ArgumentOutOfRange);
98+
EXPECT_NE(Result::Code::ArgumentNull, Result::Code::InvalidOperation);
99+
EXPECT_NE(Result::Code::ArgumentNull, Result::Code::Unsupported);
100+
EXPECT_NE(Result::Code::ArgumentNull, Result::Code::Unimplemented);
101+
EXPECT_NE(Result::Code::ArgumentNull, Result::Code::RuntimeError);
102+
EXPECT_NE(Result::Code::ArgumentNull, Result::Code::DeviceLost);
103+
EXPECT_NE(Result::Code::ArgumentOutOfRange, Result::Code::InvalidOperation);
104+
EXPECT_NE(Result::Code::ArgumentOutOfRange, Result::Code::Unsupported);
105+
EXPECT_NE(Result::Code::ArgumentOutOfRange, Result::Code::Unimplemented);
106+
EXPECT_NE(Result::Code::ArgumentOutOfRange, Result::Code::RuntimeError);
107+
EXPECT_NE(Result::Code::ArgumentOutOfRange, Result::Code::DeviceLost);
108+
EXPECT_NE(Result::Code::InvalidOperation, Result::Code::Unsupported);
109+
EXPECT_NE(Result::Code::InvalidOperation, Result::Code::Unimplemented);
110+
EXPECT_NE(Result::Code::InvalidOperation, Result::Code::RuntimeError);
111+
EXPECT_NE(Result::Code::InvalidOperation, Result::Code::DeviceLost);
112+
EXPECT_NE(Result::Code::Unsupported, Result::Code::Unimplemented);
113+
EXPECT_NE(Result::Code::Unsupported, Result::Code::RuntimeError);
114+
EXPECT_NE(Result::Code::Unsupported, Result::Code::DeviceLost);
115+
EXPECT_NE(Result::Code::Unimplemented, Result::Code::RuntimeError);
116+
EXPECT_NE(Result::Code::Unimplemented, Result::Code::DeviceLost);
117+
EXPECT_NE(Result::Code::RuntimeError, Result::Code::DeviceLost);
118+
}
119+
120+
} // namespace igl::tests

0 commit comments

Comments
 (0)