Index: mojo/public/c/system/tests/macros_unittest.cc |
diff --git a/mojo/public/c/system/tests/macros_unittest.cc b/mojo/public/c/system/tests/macros_unittest.cc |
deleted file mode 100644 |
index b22e1249fa6f477e2f5847f4aedb1a13b69c0840..0000000000000000000000000000000000000000 |
--- a/mojo/public/c/system/tests/macros_unittest.cc |
+++ /dev/null |
@@ -1,84 +0,0 @@ |
-// Copyright 2014 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-// This file tests the C Mojo system macros and consists of "positive" tests, |
-// i.e., those verifying that things work (without compile errors, or even |
-// warnings if warnings are treated as errors). |
-// TODO(vtl): Fix no-compile tests (which are all disabled; crbug.com/105388) |
-// and write some "negative" tests. |
- |
-#include "mojo/public/c/system/macros.h" |
- |
-#include <assert.h> |
-#include <stdint.h> |
-#include <stdlib.h> |
- |
-#include "testing/gtest/include/gtest/gtest.h" |
- |
-namespace mojo { |
-namespace { |
- |
-TEST(MacrosTest, AllowUnused) { |
- // Test that no warning/error is issued even though |x| is unused. |
- int x = 123; |
- MOJO_ALLOW_UNUSED_LOCAL(x); |
-} |
- |
-int MustUseReturnedResult() MOJO_WARN_UNUSED_RESULT; |
-int MustUseReturnedResult() { |
- return 456; |
-} |
- |
-TEST(MacrosTest, WarnUnusedResult) { |
- if (!MustUseReturnedResult()) |
- abort(); |
-} |
- |
-// First test |MOJO_STATIC_ASSERT()| in a global scope. |
-MOJO_STATIC_ASSERT(sizeof(int64_t) == 2 * sizeof(int32_t), |
- "Bad static_assert() failure in global scope"); |
- |
-TEST(MacrosTest, CompileAssert) { |
- // Then in a local scope. |
- MOJO_STATIC_ASSERT(sizeof(int32_t) == 2 * sizeof(int16_t), |
- "Bad static_assert() failure"); |
-} |
- |
-TEST(MacrosTest, Alignof) { |
- // Strictly speaking, this isn't a portable test, but I think it'll pass on |
- // all the platforms we currently support. |
- EXPECT_EQ(1u, MOJO_ALIGNOF(char)); |
- EXPECT_EQ(4u, MOJO_ALIGNOF(int32_t)); |
- EXPECT_EQ(8u, MOJO_ALIGNOF(int64_t)); |
- EXPECT_EQ(8u, MOJO_ALIGNOF(double)); |
-} |
- |
-// These structs are used in the Alignas test. Define them globally to avoid |
-// MSVS warnings/errors. |
-#if defined(_MSC_VER) |
-#pragma warning(push) |
-// Disable the warning "structure was padded due to __declspec(align())". |
-#pragma warning(disable : 4324) |
-#endif |
-struct MOJO_ALIGNAS(1) StructAlignas1 { |
- char x; |
-}; |
-struct MOJO_ALIGNAS(4) StructAlignas4 { |
- char x; |
-}; |
-struct MOJO_ALIGNAS(8) StructAlignas8 { |
- char x; |
-}; |
-#if defined(_MSC_VER) |
-#pragma warning(pop) |
-#endif |
- |
-TEST(MacrosTest, Alignas) { |
- EXPECT_EQ(1u, MOJO_ALIGNOF(StructAlignas1)); |
- EXPECT_EQ(4u, MOJO_ALIGNOF(StructAlignas4)); |
- EXPECT_EQ(8u, MOJO_ALIGNOF(StructAlignas8)); |
-} |
- |
-} // namespace |
-} // namespace mojo |