| // Copyright (c) 2016 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. | |
| #include "base/bit_cast.h" | |
| #include "testing/gtest/include/gtest/gtest.h" | |
| namespace base { | |
| namespace { | |
| TEST(BitCastTest, FloatIntFloat) { | |
| float f = 3.1415926f; | |
| int i = bit_cast<int32_t>(f); | |
| float f2 = bit_cast<float>(i); | |
| EXPECT_EQ(f, f2); | |
| } | |
| struct A { | |
| int x; | |
| }; | |
| TEST(BitCastTest, StructureInt) { | |
| A a = { 1 }; | |
| int b = bit_cast<int>(a); | |
| EXPECT_EQ(1, b); | |
| } | |
| } // namespace | |
| } // namespace base |