Changeset 789 in dev for branches/egtra/ab5.0/abdev/ab-test/ab-test.cpp
- Timestamp:
- Jan 30, 2011, 2:19:10 AM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/egtra/ab5.0/abdev/ab-test/ab-test.cpp
r782 r789 72 72 BOOST_CHECK_EQUAL(bmpL.LockBits(&rc, Gdiplus::ImageLockModeRead, PixelFormat32bppARGB, &bdL), Gdiplus::Ok); 73 73 BOOST_CHECK_EQUAL(bmpR.LockBits(&rc, Gdiplus::ImageLockModeRead, PixelFormat32bppARGB, &bdR), Gdiplus::Ok); 74 74 75 75 AB_SCOPE_EXIT({bmpL.UnlockBits(&bdL);}); 76 76 AB_SCOPE_EXIT({bmpR.UnlockBits(&bdR);}); … … 94 94 } 95 95 96 BOOST_AUTO_TEST_CASE( ResourceLoading ) 96 UniqueHModule LoadABModule(LPCWSTR name) 97 { 98 TCHAR moduleName[MAX_PATH]; 99 ::GetModuleFileName(nullptr, moduleName, MAX_PATH); 100 101 auto systemDir = fs::path(moduleName).parent_path().parent_path() / L"build/release/system"; 102 103 UniqueHModule hmodRes(::LoadLibraryExW((systemDir / name).wstring().c_str(), nullptr, LOAD_LIBRARY_AS_DATAFILE)); 104 BOOST_CHECK(hmodRes != nullptr); 105 return hmodRes; 106 } 107 108 BOOST_AUTO_TEST_CASE( IconResourceLoading ) 97 109 { 98 110 Gdiplus::GdiplusStartupInput gdiplusStartupInput; … … 102 114 AB_SCOPE_EXIT_2(std::bind(Gdiplus::GdiplusShutdown, gdiplusToken)); 103 115 104 TCHAR moduleName[MAX_PATH]; 105 ::GetModuleFileName(nullptr, moduleName, MAX_PATH); 116 UniqueHModule hmodRes = LoadABModule(L"res.dll"); 106 117 107 auto systemDir = fs::path(moduleName).parent_path().parent_path() / "build/release/system"; 118 auto hBasicProgramIconL = (HICON)::LoadImage(hmodRes.get(), MAKEINTRESOURCE(IDI_BASICPROGRAM), IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR); 119 auto hBasicProgramIconR = abres::LoadIcon(hmodRes.get(), IDI_BASICPROGRAM, 16, 16, LR_DEFAULTCOLOR); 108 120 109 UniqueHModule hmodRes(::LoadLibraryExW((systemDir / "res.dll").wstring().c_str(), nullptr, LOAD_LIBRARY_AS_DATAFILE));110 BOOST_CHECK(h modRes!= nullptr);121 BOOST_CHECK(hBasicProgramIconL != nullptr); 122 BOOST_CHECK(hBasicProgramIconR != nullptr); 111 123 112 auto hBasicProgramIconTarget = (HICON)LoadImage(hmodRes.get(), MAKEINTRESOURCE(IDI_BASICPROGRAM), IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR); 113 auto hBasicProgramIcon = abres::LoadIcon(hmodRes.get(), IDI_BASICPROGRAM, 16, 16, LR_DEFAULTCOLOR); 124 BOOST_CHECK(IconEquals(hBasicProgramIconL, hBasicProgramIconR)); 114 125 115 BOOST_CHECK(hBasicProgramIconTarget != nullptr);116 BOOST_CHECK(hBasicProgramIcon != nullptr);126 auto hcurL = ::LoadCursor(hmodRes.get(), MAKEINTRESOURCE(IDC_CURSOR_PEN)); 127 auto hcurR = abres::LoadCursor(hmodRes.get(), IDC_CURSOR_PEN); 117 128 118 BOOST_CHECK(IconEquals(hBasicProgramIconTarget, hBasicProgramIcon)); 129 BOOST_CHECK(hcurL != nullptr); 130 BOOST_CHECK(hcurR != nullptr); 119 131 132 //BOOST_CHECK(IconEquals(hcurL, hcurR)); 120 133 } 134 135 BOOST_AUTO_TEST_CASE( StringResourceLoading ) 136 { 137 UniqueHModule hmodRes = LoadABModule(L"res.dll"); 138 139 WCHAR strL[1024]; 140 ::LoadStringW(hmodRes.get(), IDS_DEV_GROUP, strL, ARRAYSIZE(strL)); 141 142 boost::optional<std::wstring> strR = abres::LoadString(hmodRes.get(), IDS_DEV_GROUP); 143 144 BOOST_CHECK(!!strR); 145 BOOST_CHECK(strL == *strR); 146 }
Note:
See TracChangeset
for help on using the changeset viewer.