Home | History | Annotate | Download | only in chrome_elf
      1 // Copyright 2013 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 <windows.h>
      6 
      7 #include "base/basictypes.h"
      8 #include "base/compiler_specific.h"
      9 #include "chrome_elf/ntdll_cache.h"
     10 #include "testing/gtest/include/gtest/gtest.h"
     11 
     12 namespace {
     13 
     14 class NTDLLCacheTest : public testing::Test {
     15  protected:
     16   virtual void SetUp() OVERRIDE {
     17     InitCache();
     18   }
     19 
     20 };
     21 
     22 TEST_F(NTDLLCacheTest, NtDLLCacheSanityCheck) {
     23   HMODULE ntdll_handle = ::GetModuleHandle(L"ntdll.dll");
     24   // Grab a couple random entries from the cache and make sure they match the
     25   // addresses exported by ntdll.
     26   EXPECT_EQ(::GetProcAddress(ntdll_handle, "A_SHAFinal"),
     27             g_ntdll_lookup["A_SHAFinal"]);
     28   EXPECT_EQ(::GetProcAddress(ntdll_handle, "ZwTraceControl"),
     29             g_ntdll_lookup["ZwTraceControl"]);
     30 }
     31 
     32 }  // namespace
     33