Exemplo n.º 1
0
    FileOpenFixture()
    {
        tmpPath = bfs::absolute(bfs::unique_path());
        BOOST_TEST_CHECKPOINT("Creating special filenames");
#ifdef _WIN32
        // Widestring UCS2 path
        fileNormal = bfs::path(L"1Normal.txt");
        fileUmlaut = bfs::path(L"2Um\u00E4\u00F6\u00FCLaut.txt");
        fileSpecial = bfs::path(L"3Spe\u0139\u00D4cial.txt");
#else
        // Use UTF8 (widestring not portable, either 16 or 32 bit)
        fileNormal = bfs::path("1Normal.txt");
        fileUmlaut = bfs::path("2Um\xC3\xA4\xC3\xB6\xC3\xBC"
                               "Laut.txt");
        fileSpecial = bfs::path("3Spe\xC4\xB9\xC3\x94"
                                "cial.txt");
#endif
        BOOST_TEST_CHECKPOINT("Creating tmp path" << tmpPath);
        bfs::create_directories(tmpPath);
        BOOST_TEST_CHECKPOINT("Creating files");
        bnw::ofstream fNormal(tmpPath / fileNormal);
        bnw::ofstream fUmlaut(tmpPath / fileUmlaut);
        bnw::ofstream fSpecial(tmpPath / fileSpecial);
        BOOST_TEST_CHECKPOINT("Filling files");
        fNormal << "OK";
        fUmlaut << "OK";
        fSpecial << "OK";
    }
Exemplo n.º 2
0
BOOST_FIXTURE_TEST_CASE(read_by_eight_bits, Fixture)
{
    for (size_t i = 0; i < v.size(); ++i)
    {
        BOOST_TEST_CHECKPOINT("Shifted " << i << " times so far");
        BOOST_CHECK_EQUAL(*bit, *it);
        unsigned char shifted = bit.shift(8);
        BOOST_REQUIRE_LT(shifted, 256);
        BOOST_CHECK_EQUAL(shifted, *it++);
    }
}
BOOST_FIXTURE_TEST_CASE( next, next_fixture )
{
    it_u8 = enc_u8_beg;
    for (size_t i = 0; i < dec.size( ); ++i)
    {
        std::string::const_iterator last = it_u8;
        BOOST_TEST_CHECKPOINT( "i=" << i << " cp=U+" << std::hex << (uint32_t)dec[i] );

        char32_t cp = lib::next( it_u8 );
        BOOST_CHECK_EQUAL( cp, dec[i] );
        BOOST_REQUIRE( it_u8 == last + enc_u8_cp_size[i] );
    }
}
Exemplo n.º 4
0
BOOST_FIXTURE_TEST_CASE(read_by_two_bits, Fixture)
{
    v_t shift_results = {0x0, 0x0, 0x3, 0x3, 0x3, 0x3, 0x0, 0x0, 0x3, 0x3, 0x3, 0x3};
    v_t deref_results = {0xf0, 0xf3, 0xff, 0xcf, 0x0f, 0x0f, 0x0f, 0x3f, 0xff, 0xfc, 0xf0, 0xc0};
    for (size_t i = 0; i < shift_results.size(); ++i)
    {
        BOOST_TEST_CHECKPOINT("Shifted " << i << " times so far");
        BOOST_CHECK_EQUAL(*bit, deref_results[i]);
        unsigned char shifted = bit.shift(2);
        BOOST_REQUIRE_EQUAL(bit.shift(), ((i+1)*2)%8);
        BOOST_REQUIRE_LT(shifted, 4);
        BOOST_CHECK_EQUAL(shifted, shift_results[i]);
    }
}
BOOST_FIXTURE_TEST_CASE( previous, previous_fixture )
{
    it_u8 = enc_u8_end;

    for (size_t i = dec.size( ); i > 0; --i)
    {
        std::string::const_iterator last = it_u8;
        BOOST_TEST_CHECKPOINT( "i=" << i << " cp=U+" << std::hex << (uint32_t)dec[i - 1] );

        char32_t cp = lib::previous( it_u8 );
        BOOST_REQUIRE_EQUAL( cp, dec[i - 1] );
        BOOST_REQUIRE( it_u8 == last - enc_u8_cp_size[i - 1] );
    }
}
Exemplo n.º 6
0
BOOST_FIXTURE_TEST_CASE(read_by_three_bits, Fixture)
{
    v_t shift_results = {0x0, 0x6, 0x7, 0x7, 0x0, 0x6, 0x7, 0x7};
    v_t deref_results = {0xf0, 0xf7, 0xcf, 0x0f, 0x0f, 0x7f}; // undefined, undefined};
    for (size_t i = 0; i < shift_results.size(); ++i)
    {
        BOOST_TEST_CHECKPOINT("Shifted " << i << " times so far");
        if (i < deref_results.size())
            BOOST_CHECK_EQUAL(*bit, deref_results[i]);
        unsigned char shifted = bit.shift(3);
        BOOST_REQUIRE_LT(shifted, 8);
        BOOST_REQUIRE_EQUAL(bit.shift(), ((i+1)*3)%8);
        BOOST_CHECK_EQUAL(shifted, shift_results[i]);
    }
}
Exemplo n.º 7
0
BOOST_FIXTURE_TEST_CASE(read_by_seven_bits, Fixture)
{
    v_t shift_results = {0x70, 0x1f, 0x7c};
    v_t deref_results = {0xf0, 0x8f, 0x3f};
    for (size_t i = 0; i < shift_results.size(); ++i)
    {
        BOOST_TEST_CHECKPOINT("Shifted " << i << " times so far");
        if (i < deref_results.size())
            BOOST_CHECK_EQUAL(*bit, deref_results[i]);
        unsigned char shifted = bit.shift(7);
        BOOST_REQUIRE_LT(shifted, 128);
        BOOST_REQUIRE_EQUAL(bit.shift(), ((i+1)*7)%8);
        BOOST_CHECK_EQUAL(shifted, shift_results[i]);
    }
}
Exemplo n.º 8
0
BOOST_FIXTURE_TEST_CASE(read_by_five_bits, Fixture)
{
    v_t shift_results = {0x10, 0x1f, 0x03, 0x1e};
    v_t deref_results = {0xf0, 0xef, 0x0f, 0x7f};
    for (size_t i = 0; i < shift_results.size(); ++i)
    {
        BOOST_TEST_CHECKPOINT("Shifted " << i << " times so far");
        if (i < deref_results.size())
            BOOST_CHECK_EQUAL(*bit, deref_results[i]);
        unsigned char shifted = bit.shift(5);
        BOOST_REQUIRE_LT(shifted, 32);
        BOOST_REQUIRE_EQUAL(bit.shift(), ((i+1)*5)%8);
        BOOST_CHECK_EQUAL(shifted, shift_results[i]);
    }
}
BOOST_FIXTURE_TEST_CASE( append, append_fixture )
{
    it_u8 = enc_u8_beg;
    for (char32_t cp : dec)
    {
        std::string res;
        std::string::const_iterator it2_u8 = it_u8;
        BOOST_TEST_CHECKPOINT( "cp=U+" << std::hex << (uint32_t)cp );
        utf8::unchecked::advance( it_u8, 1 );

        lib::append( cp, std::back_inserter( res ) );
        BOOST_REQUIRE_EQUAL_COLLECTIONS( res.cbegin( ), res.cend( ), it2_u8, it_u8 );

        it2_u8 = lib::append( cp, res.begin( ) );
        BOOST_REQUIRE( it2_u8 == res.cend( ) );
    }
}
Exemplo n.º 10
0
        virtual void OnTestEnd(const ::testing::TestInfo& testInfo)
        {
            std::stringstream s;
            std::string name = testInfo.name() ? testInfo.name() : "<unknown>";
            s << "***Ending test [" << GoogleTestCase << ":" << GoogleTestName << "]" << std::endl;
            BOOST_TEST_CHECKPOINT(s.str());
#if defined(UNICODE)
            std::string sstr = s.str();
            std::wstring ws(sstr.size(), L' ');
            ws.resize(mbstowcs(&ws[0], sstr.c_str(), sstr.size()));
            output_debug_string(ws.c_str());
#else
            output_debug_string(s.str().c_str());
#endif
            is_google_test = false;
            GoogleTestCase = "";
            GoogleTestName = "";
        }
Exemplo n.º 11
0
BOOST_FIXTURE_TEST_CASE_TEMPLATE(InsertReadDelete, T, CommonDatasets, Fixture<T>)
{
  BOOST_TEST_CHECKPOINT(T::getName());

  std::vector<Name> names;

  // Insert
  for (auto i = this->data.begin();
       i != this->data.end(); ++i) {
    Name name = Name();
    this->handle->insert(**i);
    name = (*i)->getFullName();
    this->nameToDataMap.insert(std::make_pair(name, *i));
    names.push_back(name);
  }
  BOOST_CHECK_EQUAL(this->handle->size(), static_cast<int64_t>(this->data.size()));

  std::mt19937 rng{std::random_device{}()};
  std::shuffle(names.begin(), names.end(), rng);

  // Read (all items should exist)
  for (auto i = names.begin(); i != names.end(); ++i) {
    std::shared_ptr<Data> retrievedData = this->handle->read(*i);

    BOOST_REQUIRE(this->nameToDataMap.count(*i) > 0);
    BOOST_CHECK_EQUAL(*this->nameToDataMap[*i], *retrievedData);
  }
  BOOST_CHECK_EQUAL(this->handle->size(), static_cast<int64_t>(this->data.size()));

  // Delete
  for (auto i = names.begin(); i != names.end(); ++i) {
    BOOST_CHECK_EQUAL(this->handle->erase(*i), true);
  }

  BOOST_CHECK_EQUAL(this->handle->size(), 0);
}
Exemplo n.º 12
0
void test_Object_func(void)
{
	BOOST_TEST_CHECKPOINT("BUFFER");
	Tester<oglplus::Buffer>()();

	BOOST_TEST_CHECKPOINT("FRAMEBUFFER");
	Tester<oglplus::Framebuffer>()();

#if GL_VERSION_4_1 || GL_ARB_separate_shader_objects
	BOOST_TEST_CHECKPOINT("PROGRAM_PIPELINE");
	Tester<oglplus::ProgramPipeline>()();
#endif

	BOOST_TEST_CHECKPOINT("PROGRAM");
	Tester<oglplus::Program>()();

	BOOST_TEST_CHECKPOINT("QUERY");
	Tester<oglplus::Query>()();

	BOOST_TEST_CHECKPOINT("RENDERBUFFER");
	Tester<oglplus::Renderbuffer>()();

	BOOST_TEST_CHECKPOINT("SAMPLER");
	Tester<oglplus::Sampler>()();

	BOOST_TEST_CHECKPOINT("VERTEX_SHADER");
	Tester<oglplus::VertexShader>()();
#if GL_VERSION_3_2
	BOOST_TEST_CHECKPOINT("GEOMETRY_SHADER");
	Tester<oglplus::GeometryShader>()();
#endif
#if GL_VERSION_4_0
	BOOST_TEST_CHECKPOINT("TESS_CONTROL_SHADER");
	Tester<oglplus::TessControlShader>()();
#endif
#if GL_VERSION_4_0
	BOOST_TEST_CHECKPOINT("TESS_EVALUATION_SHADER");
	Tester<oglplus::TessEvaluationShader>()();
#endif
	BOOST_TEST_CHECKPOINT("FRAGMENT_SHADER");
	Tester<oglplus::FragmentShader>()();
#if GL_VERSION_4_3
	BOOST_TEST_CHECKPOINT("COMPUTE_SHADER");
	Tester<oglplus::ComputeShader>()();
#endif

	BOOST_TEST_CHECKPOINT("TEXTURE");
	Tester<oglplus::Texture>()();

#if GL_VERSION_4_0 || GL_ARB_transform_feedback2
	BOOST_TEST_CHECKPOINT("TRANSFORM_FEEDBACK");
	Tester<oglplus::TransformFeedback>()();
#endif

	BOOST_TEST_CHECKPOINT("VERTEX_ARRAY");
	Tester<oglplus::VertexArray>()();
}