OLD | NEW |
| (Empty) |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "base/scoped_ptr.h" | |
6 #include "chrome/common/gpu_info.h" | |
7 #include "chrome/common/gpu_messages.h" | |
8 #include "ipc/ipc_message.h" | |
9 #include "ipc/ipc_message_utils.h" | |
10 #include "testing/gtest/include/gtest/gtest.h" | |
11 | |
12 // Test GPUInfo serialization | |
13 TEST(GPUIPCMessageTest, GPUInfo) { | |
14 GPUInfo input; | |
15 // Test variables taken from HP Z600 Workstation | |
16 input.level = GPUInfo::kPartial; | |
17 input.initialization_time = base::TimeDelta::FromMilliseconds(100); | |
18 input.vendor_id = 0x10de; | |
19 input.device_id = 0x0658; | |
20 input.driver_vendor = "NVIDIA"; | |
21 input.driver_version = "195.36.24"; | |
22 input.driver_date = "7-14-2009"; | |
23 input.pixel_shader_version = 0x0162; | |
24 input.vertex_shader_version = 0x0162; | |
25 input.gl_version = 0x0302; | |
26 input.gl_version_string = "3.2.0 NVIDIA 195.36.24"; | |
27 input.gl_vendor = "NVIDIA Corporation"; | |
28 input.gl_renderer = "Quadro FX 380/PCI/SSE2"; | |
29 input.gl_extensions ="GL_ARB_texture_rg GL_ARB_window_pos"; | |
30 input.can_lose_context = false; | |
31 | |
32 IPC::Message msg(1, 2, IPC::Message::PRIORITY_NORMAL); | |
33 IPC::WriteParam(&msg, input); | |
34 | |
35 GPUInfo output; | |
36 void* iter = NULL; | |
37 EXPECT_TRUE(IPC::ReadParam(&msg, &iter, &output)); | |
38 EXPECT_EQ(input.level, output.level); | |
39 EXPECT_EQ(input.initialization_time.InMilliseconds(), | |
40 output.initialization_time.InMilliseconds()); | |
41 EXPECT_EQ(input.vendor_id, output.vendor_id); | |
42 EXPECT_EQ(input.device_id, output.device_id); | |
43 EXPECT_EQ(input.driver_vendor, output.driver_vendor); | |
44 EXPECT_EQ(input.driver_version, output.driver_version); | |
45 EXPECT_EQ(input.driver_date, output.driver_date); | |
46 EXPECT_EQ(input.pixel_shader_version, output.pixel_shader_version); | |
47 EXPECT_EQ(input.vertex_shader_version, output.vertex_shader_version); | |
48 EXPECT_EQ(input.gl_version, output.gl_version); | |
49 EXPECT_EQ(input.gl_version_string, output.gl_version_string); | |
50 EXPECT_EQ(input.gl_vendor, output.gl_vendor); | |
51 EXPECT_EQ(input.gl_renderer, output.gl_renderer); | |
52 EXPECT_EQ(input.gl_extensions, output.gl_extensions); | |
53 EXPECT_EQ(input.can_lose_context, output.can_lose_context); | |
54 | |
55 std::string log_message; | |
56 IPC::LogParam(output, &log_message); | |
57 EXPECT_STREQ("<GPUInfo> 2 100 10de 658 NVIDIA " | |
58 "195.36.24 7-14-2009 162 162 302 0", | |
59 log_message.c_str()); | |
60 } | |
OLD | NEW |