void cmdAbout(const std::string& args) { // TODO: replace this with a GUI window narf::console->println(""); narf::console->println("About NarfBlock"); narf::console->println("Version: " VERSION_STR); narf::console->println(""); narf::console->println("Authors:"); auto authors = narf::util::tokenize(VERSION_AUTHORS, '\n'); for (auto& a : authors) { narf::console->println(a); } narf::console->println(""); auto credits = narf::util::tokenize(EMBED_STRING(extra_credits_txt), '\n'); for (auto& c : credits) { narf::console->println(c); } narf::console->println(""); narf::console->println("Library versions:"); narf::console->println("ENet " + std::to_string(ENET_VERSION_MAJOR) + "." + std::to_string(ENET_VERSION_MINOR) + "." + std::to_string(ENET_VERSION_PATCH)); SDL_version sdl; SDL_GetVersion(&sdl); narf::console->println("SDL " + std::to_string(sdl.major) + "." + std::to_string(sdl.minor) + "." + std::to_string(sdl.patch)); narf::console->println("zlib " + std::string(zlibVersion())); auto png = png_access_version_number(); auto pngMajor = png / 10000; auto pngMinor = (png / 100) % 100; auto pngRelease = png % 100; narf::console->println("libpng " + std::to_string(pngMajor) + "." + std::to_string(pngMinor) + "." + std::to_string(pngRelease)); FT_Library ftlib; FT_Init_FreeType(&ftlib); FT_Int ftMajor, ftMinor, ftPatch; FT_Library_Version(ftlib, &ftMajor, &ftMinor, &ftPatch); FT_Done_FreeType(ftlib); narf::console->println("FreeType " + std::to_string(ftMajor) + "." + std::to_string(ftMinor) + "." + std::to_string(ftPatch)); narf::console->println(opus_get_version_string()); narf::console->println(""); narf::console->println("OpenGL information:"); narf::console->println("OpenGL version " + std::string(display->glVersion)); narf::console->println("GLSL version " + std::string(display->glslVersion)); narf::console->println("GL context version " + std::to_string(display->glContextVersionMajor) + "." + std::to_string(display->glContextVersionMinor)); }
TEST(EMBED, bar) { std::string bar = EMBED_STRING(bar_txt); ASSERT_EQ("Foo\n", bar); }