TEST(FunctionBigNumber, OddBigWholeNumber)
{
  MyOddWeb::BigNumber x("1234567890987654321123456781");
  ASSERT_TRUE(x.IsOdd());
  ASSERT_FALSE(x.IsEven());
}
TEST_F(BooleanEnumTest, test1)
{
    BooleanTest f1 = BooleanTest::F;
    BooleanTest t1 = BooleanTest::T;
    BooleanTest tmp = BooleanTest::T;

    {
        std::stringstream ss;

        ss << f1;
        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        ASSERT_EQ(ss.str(),std::string("BooleanTest::F"));

        ss >> tmp;

        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        ASSERT_EQ(tmp, BooleanTest::F);
        ss >> tmp;
        ASSERT_TRUE(ss.fail());
        ASSERT_TRUE(ss.eof());
        ASSERT_TRUE(ss.bad());
        ASSERT_FALSE(ss.good());
        ASSERT_FALSE(ss);
    }

    {
        std::stringstream ss;

        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        ss << t1;
        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        ASSERT_EQ(ss.str(),std::string("BooleanTest::T"));
        ss >> tmp;
        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        ASSERT_EQ(tmp, BooleanTest::T);
        ss >> tmp;
        ASSERT_TRUE(ss.fail());
        ASSERT_TRUE(ss.eof());
        ASSERT_TRUE(ss.bad());
        ASSERT_FALSE(ss.good());
        ASSERT_FALSE(ss);
    }
}
TEST(NumLib, TimeSteppingIterationNumberBased1)
{
    std::vector<std::size_t> iter_times_vector = {0, 3, 5, 7};
    std::vector<double> multiplier_vector = {2.0, 1.0, 0.5, 0.25};
    NumLib::IterationNumberBasedAdaptiveTimeStepping alg(1, 31, 1, 10, 1, iter_times_vector, multiplier_vector);

    ASSERT_TRUE(alg.next()); // t=2, dt=1
    NumLib::TimeStep ts = alg.getTimeStep();
    ASSERT_EQ(1u, ts.steps());
    ASSERT_EQ(1., ts.previous());
    ASSERT_EQ(2., ts.current());
    ASSERT_EQ(1., ts.dt());
    ASSERT_TRUE(alg.accepted());

    ASSERT_TRUE(alg.next()); // t=4, dt=2

    // dt*=2
    alg.setNIterations(3);
    ASSERT_TRUE(alg.next()); // t=8, dt=4
    ts = alg.getTimeStep();
    ASSERT_EQ(3u, ts.steps());
    ASSERT_EQ(4., ts.previous());
    ASSERT_EQ(8., ts.current());
    ASSERT_EQ(4., ts.dt());
    ASSERT_TRUE(alg.accepted());

    // dt*=1
    alg.setNIterations(5);
    ASSERT_TRUE(alg.next()); // t=12, dt=4
    ts = alg.getTimeStep();
    ASSERT_EQ(4u, ts.steps());
    ASSERT_EQ(8., ts.previous());
    ASSERT_EQ(12., ts.current());
    ASSERT_EQ(4., ts.dt());
    ASSERT_TRUE(alg.accepted());

    // dt*=0.5
    alg.setNIterations(7);
    ASSERT_TRUE(alg.next()); // t=14, dt=2
    ts = alg.getTimeStep();
    ASSERT_EQ(5u, ts.steps());
    ASSERT_EQ(12., ts.previous());
    ASSERT_EQ(14., ts.current());
    ASSERT_EQ(2., ts.dt());
    ASSERT_TRUE(alg.accepted());

    // dt*=0.25 but dt_min = 1
    alg.setNIterations(8); // exceed max
    ASSERT_TRUE(alg.next()); // t=13, dt=1
    ts = alg.getTimeStep();
    ASSERT_EQ(5u, ts.steps());
    ASSERT_EQ(12., ts.previous());
    ASSERT_EQ(13, ts.current());
    ASSERT_EQ(1., ts.dt());
    ASSERT_FALSE(alg.accepted());

    // restart, dt*=1
    alg.setNIterations(4);
    ASSERT_TRUE(alg.next()); // t=14, dt=1
    ts = alg.getTimeStep();
    ASSERT_EQ(6u, ts.steps());
    ASSERT_EQ(13., ts.previous());
    ASSERT_EQ(14, ts.current());
    ASSERT_EQ(1., ts.dt());
    ASSERT_TRUE(alg.accepted());
}
Exemple #4
0
TEST(TestMemFile, BadReadFromCache) {
  StaticContentCache::TheFileCache = FileCachePtr(new FileCache());

  MemFile mf;
  ASSERT_FALSE(mf.open("/some/random/file", "r"));
}
Exemple #5
0
TEST(TestMemFile, NotInCache) {
  StaticContentCache::TheFileCache = FileCachePtr(new FileCache());

  MemFile mf;
  ASSERT_FALSE(mf.open("/not/even/there", "r"));
}
TEST(TEST_CASE_LABEL, are_reference) {
    ASSERT_EQ((are_reference<A&&>::value), (are_reference_v<A&&>));
    ASSERT_TRUE((are_reference_v<B&>));
    ASSERT_FALSE((are_reference_v<A&, B, D&&>));
    ASSERT_TRUE((are_reference_v<A&, B&&, D&>));
}
TEST_F(ScrollingCoordinatorTest, fastScrollingForFixedPosition)
{
    registerMockedHttpURLLoad("fixed-position.html");
    navigateTo(m_baseURL + "fixed-position.html");
    forceFullCompositingUpdate();

    // Fixed position should not fall back to main thread scrolling.
    WebLayer* rootScrollLayer = getRootScrollLayer();
    ASSERT_FALSE(rootScrollLayer->shouldScrollOnMainThread());

    Document* document = frame()->document();
    {
        Element* element = document->getElementById("div-tl");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(!constraint.isFixedToRightEdge && !constraint.isFixedToBottomEdge);
    }
    {
        Element* element = document->getElementById("div-tr");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(constraint.isFixedToRightEdge && !constraint.isFixedToBottomEdge);
    }
    {
        Element* element = document->getElementById("div-bl");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(!constraint.isFixedToRightEdge && constraint.isFixedToBottomEdge);
    }
    {
        Element* element = document->getElementById("div-br");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(constraint.isFixedToRightEdge && constraint.isFixedToBottomEdge);
    }
    {
        Element* element = document->getElementById("span-tl");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(!constraint.isFixedToRightEdge && !constraint.isFixedToBottomEdge);
    }
    {
        Element* element = document->getElementById("span-tr");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(constraint.isFixedToRightEdge && !constraint.isFixedToBottomEdge);
    }
    {
        Element* element = document->getElementById("span-bl");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(!constraint.isFixedToRightEdge && constraint.isFixedToBottomEdge);
    }
    {
        Element* element = document->getElementById("span-br");
        ASSERT_TRUE(element);
        WebLayer* layer = webLayerFromElement(element);
        ASSERT_TRUE(layer);
        WebLayerPositionConstraint constraint = layer->positionConstraint();
        ASSERT_TRUE(constraint.isFixedPosition);
        ASSERT_TRUE(constraint.isFixedToRightEdge && constraint.isFixedToBottomEdge);
    }
}
TEST_F(MemoryPressureMesosTest, ROOT_CGROUPS_Statistics)
{
  Try<Owned<cluster::Master>> master = StartMaster();
  ASSERT_SOME(master);

  slave::Flags flags = CreateSlaveFlags();

  // We only care about memory cgroup for this test.
  flags.isolation = "cgroups/mem";

  Fetcher fetcher(flags);

  Try<MesosContainerizer*> _containerizer =
    MesosContainerizer::create(flags, true, &fetcher);

  ASSERT_SOME(_containerizer);
  Owned<MesosContainerizer> containerizer(_containerizer.get());

  Owned<MasterDetector> detector = master.get()->createDetector();

  Try<Owned<cluster::Slave>> slave =
    StartSlave(detector.get(), containerizer.get(), flags);
  ASSERT_SOME(slave);

  MockScheduler sched;

  MesosSchedulerDriver driver(
      &sched, DEFAULT_FRAMEWORK_INFO, master.get()->pid, DEFAULT_CREDENTIAL);

  EXPECT_CALL(sched, registered(_, _, _));

  Future<vector<Offer>> offers;
  EXPECT_CALL(sched, resourceOffers(_, _))
    .WillOnce(FutureArg<1>(&offers))
    .WillRepeatedly(Return());      // Ignore subsequent offers.

  driver.start();

  AWAIT_READY(offers);
  ASSERT_FALSE(offers->empty());

  Offer offer = offers.get()[0];

  // Run a task that triggers memory pressure event. We request 1G
  // disk because we are going to write a 512 MB file repeatedly.
  TaskInfo task = createTask(
      offer.slave_id(),
      Resources::parse("cpus:1;mem:256;disk:1024").get(),
      "while true; do dd count=512 bs=1M if=/dev/zero of=./temp; done");

  Future<TaskStatus> starting;
  Future<TaskStatus> running;
  Future<TaskStatus> killed;
  EXPECT_CALL(sched, statusUpdate(&driver, _))
    .WillOnce(FutureArg<1>(&starting))
    .WillOnce(FutureArg<1>(&running))
    .WillOnce(FutureArg<1>(&killed))
    .WillRepeatedly(Return());       // Ignore subsequent updates.

  driver.launchTasks(offer.id(), {task});

  AWAIT_READY(starting);
  EXPECT_EQ(task.task_id(), starting->task_id());
  EXPECT_EQ(TASK_STARTING, starting->state());

  AWAIT_READY(running);
  EXPECT_EQ(task.task_id(), running->task_id());
  EXPECT_EQ(TASK_RUNNING, running->state());

  Future<hashset<ContainerID>> containers = containerizer->containers();
  AWAIT_READY(containers);
  ASSERT_EQ(1u, containers->size());

  ContainerID containerId = *(containers->begin());

  // Wait a while for some memory pressure events to occur.
  Duration waited = Duration::zero();
  do {
    Future<ResourceStatistics> usage = containerizer->usage(containerId);
    AWAIT_READY(usage);

    if (usage->mem_low_pressure_counter() > 0) {
      // We will check the correctness of the memory pressure counters
      // later, because the memory-hammering task is still active
      // and potentially incrementing these counters.
      break;
    }

    os::sleep(Milliseconds(100));
    waited += Milliseconds(100);
  } while (waited < Seconds(5));

  EXPECT_LE(waited, Seconds(5));

  // Pause the clock to ensure that the reaper doesn't reap the exited
  // command executor and inform the containerizer/slave.
  Clock::pause();
  Clock::settle();

  // Stop the memory-hammering task.
  driver.killTask(task.task_id());

  AWAIT_READY_FOR(killed, Seconds(120));
  EXPECT_EQ(task.task_id(), killed->task_id());
  EXPECT_EQ(TASK_KILLED, killed->state());

  // Now check the correctness of the memory pressure counters.
  Future<ResourceStatistics> usage = containerizer->usage(containerId);
  AWAIT_READY(usage);

  EXPECT_GE(usage->mem_low_pressure_counter(),
            usage->mem_medium_pressure_counter());
  EXPECT_GE(usage->mem_medium_pressure_counter(),
            usage->mem_critical_pressure_counter());

  Clock::resume();

  driver.stop();
  driver.join();
}
Exemple #9
0
TEST_F(octtointTest, Overflow) {
	const char* str = "40000000000";
	u_long actual;

	ASSERT_FALSE(octtoint(str, &actual));
}
Exemple #10
0
TEST(StringNumber, StringToNumber)
{
    int16_t i16;
    int32_t i32;
    int64_t i64;
    long long ll;
    unsigned long long ull;
    ASSERT_FALSE(StringToNumber("223372036854775807", &i32));
    ASSERT_TRUE(StringToNumber("223372036854775807", &i64));
    ASSERT_TRUE(StringToNumber("223372036854775807", &ll));
    ASSERT_TRUE(StringToNumber("223372036854775807", &ull));
    ASSERT_EQ(i64, 223372036854775807LL);
    ASSERT_EQ(ll, 223372036854775807LL);
    ASSERT_EQ(ull, 223372036854775807ULL);
    ASSERT_FALSE(StringToNumber("1147483647", &i16));
    ASSERT_TRUE(StringToNumber("1147483647", &i32));
    ASSERT_TRUE(StringToNumber("1147483647", &i64));
    ASSERT_EQ(i32, 1147483647);
    ASSERT_EQ(i64, 1147483647);

    uint32_t u32;
    ASSERT_TRUE(StringToNumber("1147483647", &u32));

    char buffer[1024];
    double d = 1.0003;

    ASSERT_STREQ(DoubleToString(d, buffer), "1.0003");
    d = std::numeric_limits<double>::infinity();
    ASSERT_STREQ(DoubleToString(d, buffer), "inf");
    d = -std::numeric_limits<double>::infinity();
    ASSERT_STREQ(DoubleToString(d, buffer), "-inf");
#ifdef __GNUC__ // divided by zero is not allowed in msvc
    d = NAN;
    ASSERT_STREQ(DoubleToString(d, buffer), "nan");
#endif

    float f = 1e+22;
    ASSERT_STREQ(FloatToString(f, buffer), "1e+22");
    f = 0.000325;
    ASSERT_STREQ(FloatToString(f, buffer), "0.000325");
    f = std::numeric_limits<double>::infinity();
    ASSERT_STREQ(FloatToString(f, buffer), "inf");
    f = -std::numeric_limits<double>::infinity();
    ASSERT_STREQ(FloatToString(f, buffer), "-inf");

#ifdef __GNUC__ // divided by zero is not allowed in msvc
    f = NAN;
    ASSERT_STREQ(FloatToString(f, buffer), "nan");

    f = INFINITY;
    ASSERT_STREQ(FloatToString(f, buffer), "inf");
#endif

    f = -std::numeric_limits<float>::infinity();
    ASSERT_STREQ(FloatToString(f, buffer), "-inf");

    uint32_t i = 255;
    ASSERT_STREQ(UInt32ToHexString(i, buffer), "000000ff");

    std::string str = "1110.32505QQ";
    char* endptr;
    ASSERT_TRUE(ParseNumber(str.c_str(), &d, &endptr));
    ASSERT_TRUE(d == 1110.32505);
    ASSERT_FALSE(StringToNumber(str.c_str(), &d));

    ASSERT_TRUE(ParseNumber(str.c_str(), &f, &endptr));
    ASSERT_TRUE(f == 1110.32505f);
    ASSERT_FALSE(StringToNumber(str.c_str(), &f));

    ASSERT_TRUE(ParseNumber(str.c_str(), &i, &endptr));
    ASSERT_EQ(1110U, i);
    ASSERT_FALSE(StringToNumber(str.c_str(), &i));

    str = "1110.32505";
    d = 0;
    f = 0;
    i = 0;
    ASSERT_TRUE(StringToNumber(str.c_str(), &d));
    ASSERT_TRUE(d == 1110.32505);
    ASSERT_TRUE(StringToNumber(str.c_str(), &f));
    ASSERT_TRUE(f == 1110.32505f);
    ASSERT_FALSE(StringToNumber(str.c_str(), &i));
    str = "-1110";
    int32_t x;
    ASSERT_TRUE(StringToNumber(str.c_str(), &x));
    ASSERT_EQ(x, -1110);
}
Exemple #11
0
TEST(WTF, StringIsolatedCopy)
{
    String original = "1234";
    auto copy = std::move(original).isolatedCopy();
    ASSERT_FALSE(original.impl() == copy.impl());
}
TEST(PalindromeNumber, int_12332){
    Solution *sln = new Solution();
    ASSERT_FALSE(sln->isPalindrome(12332));
}
TEST(FunctionBigNumber, EvenBigDecimalNumber)
{
  MyOddWeb::BigNumber x("1234567890987654321123456780.1357997531");
  ASSERT_FALSE(x.IsOdd());
  ASSERT_TRUE(x.IsEven());
}
TEST(FunctionBigNumber, OddBigDecimalNumber)
{
  MyOddWeb::BigNumber x("1234567890987654321123456781.2468008642");
  ASSERT_TRUE(x.IsOdd());
  ASSERT_FALSE(x.IsEven());
}
TEST(TEST_CASE_LABEL, are_scalar) {
    ASSERT_EQ((are_scalar<E>::value), (are_scalar_v<E>));
    ASSERT_TRUE((are_scalar_v<E>));
    ASSERT_FALSE((are_scalar_v<A*, std::nullptr_t, int, B>));
    ASSERT_TRUE((are_scalar_v<B*, std::nullptr_t, E, void(B::*)()>));
}
Exemple #16
0
TEST_F(octtointTest, IllegalCharacter) {
	const char* str = "5ac2";
	u_long actual;

	ASSERT_FALSE(octtoint(str, &actual));
}
TEST(TEST_CASE_LABEL, are_compound) {
    ASSERT_EQ((are_compound<int[]>::value), (are_compound_v<int[]>));
    ASSERT_TRUE((are_compound_v<void(*)(int)>));
    ASSERT_FALSE((are_compound_v<A[], char, int(B::*)(char, float)>));
    ASSERT_TRUE((are_compound_v<A[], int(B::*)(char, float), D&, E>));
}
Exemple #18
0
TEST_F(octtointTest, IllegalDigit) {
	const char* str = "5283";
	u_long actual;

	ASSERT_FALSE(octtoint(str, &actual));
}
TEST(TEST_CASE_LABEL, are_member_pointer) {
    ASSERT_EQ((are_member_pointer<A&&>::value), (are_member_pointer_v<A&&>));
    ASSERT_TRUE((are_member_pointer_v<int(D::*)>));
    ASSERT_FALSE((are_member_pointer_v<void(A::*)(int), B>));
    ASSERT_TRUE((are_member_pointer_v<B(A::*)(D, D), char(B::*)>));
}
Exemple #20
0
TEST_F(MindMapModelTest, loadMindMap)
{
	ASSERT_FALSE(Mindmapmodel->loadMindMap("C:\\MindMap\\file_not_exist.mm"));
	ASSERT_TRUE(Mindmapmodel->loadMindMap("..\\test_file.mm"));
}
Exemple #21
0
TEST(AllUnknownTests, NonIUnknownTest)
{
    ASSERT_FALSE(dhorn::com::all_unknown_v<std::string>);
}
Exemple #22
0
TEST_F(MindMapModelTest, checkMindMapExist)
{
	ASSERT_FALSE(Mindmapmodel->checkMindMapExist());
	Mindmapmodel->createMindMap("Root");
	ASSERT_TRUE(Mindmapmodel->checkMindMapExist());
}
Exemple #23
0
TEST(TestMemFile, BadOpenModes) {
  MemFile mf;
  ASSERT_FALSE(mf.open("/some/file1", "+"));
  ASSERT_FALSE(mf.open("/some/file2", "a"));
  ASSERT_FALSE(mf.open("/some/file3", "w"));
}
TEST(MatchExpressionParserGeoNear, ParseInvalidNear) {
    {
        BSONObj query = fromjson("{loc: {$maxDistance: 100, $near: [0,0]}}");
        const CollatorInterface* collator = nullptr;
        StatusWithMatchExpression result =
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator);
        ASSERT_FALSE(result.isOK());
    }
    {
        BSONObj query = fromjson("{loc: {$minDistance: 100, $near: [0,0]}}");
        const CollatorInterface* collator = nullptr;
        StatusWithMatchExpression result =
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator);
        ASSERT_FALSE(result.isOK());
    }
    {
        BSONObj query = fromjson("{loc: {$near: [0,0], $maxDistance: {}}}");
        const CollatorInterface* collator = nullptr;
        ASSERT_THROWS(
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator),
            UserException);
    }
    {
        BSONObj query = fromjson("{loc: {$near: [0,0], $minDistance: {}}}");
        const CollatorInterface* collator = nullptr;
        ASSERT_THROWS(
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator),
            UserException);
    }
    {
        BSONObj query = fromjson("{loc: {$near: [0,0], $eq: 40}}");
        const CollatorInterface* collator = nullptr;
        ASSERT_THROWS(
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator),
            UserException);
    }
    {
        BSONObj query = fromjson("{loc: {$eq: 40, $near: [0,0]}}");
        const CollatorInterface* collator = nullptr;
        StatusWithMatchExpression result =
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator);
        ASSERT_FALSE(result.isOK());
    }
    {
        BSONObj query = fromjson(
            "{loc: {$near: [0,0], $geoWithin: {$geometry: {type: \"Polygon\", coordinates: []}}}}");
        const CollatorInterface* collator = nullptr;
        ASSERT_THROWS(
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator),
            UserException);
    }
    {
        BSONObj query = fromjson("{loc: {$near: {$foo: 1}}}");
        const CollatorInterface* collator = nullptr;
        StatusWithMatchExpression result =
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator);
        ASSERT_FALSE(result.isOK());
    }
    {
        BSONObj query = fromjson("{loc: {$minDistance: 10}}");
        const CollatorInterface* collator = nullptr;
        StatusWithMatchExpression result =
            MatchExpressionParser::parse(query, ExtensionsCallbackDisallowExtensions(), collator);
        ASSERT_FALSE(result.isOK());
    }
}
TEST_F(BooleanEnumTest, test2)
{
    {
        std::stringstream ss("Initial Content");

        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        BooleanTest t;
        ss >> t;

        ASSERT_FALSE(ss.good());
        ASSERT_FALSE(ss.eof());
        ASSERT_TRUE(ss.fail());
        ASSERT_TRUE(ss.bad());
    }

    {
        std::stringstream ss("BooleanTe");

        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.eof());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        BooleanTest t;
        ss >> t;

        ASSERT_FALSE(ss.good());
        ASSERT_TRUE(ss.eof());
        ASSERT_TRUE(ss.fail());
        ASSERT_TRUE(ss.bad());
    }

    {
        std::stringstream ss("BooleanTest::");

        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.eof());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        BooleanTest t;
        ss >> t;

        ASSERT_FALSE(ss.good());
        ASSERT_TRUE(ss.eof());
        ASSERT_TRUE(ss.fail());
        ASSERT_TRUE(ss.bad());
    }

    {
        std::stringstream ss("BooleanTest::K");

        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.eof());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        BooleanTest t;
        ss >> t;

        ASSERT_FALSE(ss.good());
        ASSERT_FALSE(ss.eof());
        ASSERT_TRUE(ss.fail());
        ASSERT_TRUE(ss.bad());
    }

    {
        std::stringstream ss("BooleanTest::Trump");

        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.eof());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        BooleanTest t;
        ss >> t;
        ASSERT_TRUE(ss.good());
        ASSERT_FALSE(ss.eof());
        ASSERT_FALSE(ss.fail());
        ASSERT_FALSE(ss.bad());

        ASSERT_EQ(t, BooleanTest::T);
    }
}
TEST_F(
    SyncTailTest,
    MultiApplyDoesNotSetOplogEntryIsForCappedCollectionWhenProcessingNonCappedCollectionInsertOperation) {
    NamespaceString nss("local." + _agent.getSuiteName() + "_" + _agent.getTestName());
    ASSERT_FALSE(_testOplogEntryIsForCappedCollection(_txn.get(), nss, CollectionOptions()));
}
CUDA_TEST_P(Hog_var_cell, HOG)
{
    cv::cuda::GpuMat _img(c_img);
    cv::cuda::GpuMat _img2(c_img2);
    cv::cuda::GpuMat _img3(c_img3);
    cv::cuda::GpuMat _img4(c_img4);
    cv::cuda::GpuMat d_img;

    ASSERT_FALSE(_img.empty());
    ASSERT_TRUE(d_img.empty());

    int win_stride_width = 8;int win_stride_height = 8;
    int win_width = 48;
    int block_width = 16;
    int block_stride_width = 8;int block_stride_height = 8;
    int cell_width = 8;
    int nbins = 9;

    Size win_stride(win_stride_width, win_stride_height);
    Size win_size(win_width, win_width * 2);
    Size block_size(block_width, block_width);
    Size block_stride(block_stride_width, block_stride_height);
    Size cell_size(cell_width, cell_width);

    cv::Ptr<cv::cuda::HOG> gpu_hog = cv::cuda::HOG::create(win_size, block_size, block_stride, cell_size, nbins);

    gpu_hog->setNumLevels(13);
    gpu_hog->setHitThreshold(0);
    gpu_hog->setWinStride(win_stride);
    gpu_hog->setScaleFactor(1.05);
    gpu_hog->setGroupThreshold(8);
    gpu_hog->compute(_img, d_img);
//------------------------------------------------------------------------------
    cv::cuda::GpuMat d_img2;
    ASSERT_TRUE(d_img2.empty());

    int win_stride_width2 = 8;int win_stride_height2 = 8;
    int win_width2 = 48;
    int block_width2 = 16;
    int block_stride_width2 = 8;int block_stride_height2 = 8;
    int cell_width2 = 4;

    Size win_stride2(win_stride_width2, win_stride_height2);
    Size win_size2(win_width2, win_width2 * 2);
    Size block_size2(block_width2, block_width2);
    Size block_stride2(block_stride_width2, block_stride_height2);
    Size cell_size2(cell_width2, cell_width2);

    cv::Ptr<cv::cuda::HOG> gpu_hog2 = cv::cuda::HOG::create(win_size2, block_size2, block_stride2, cell_size2, nbins);
    gpu_hog2->setWinStride(win_stride2);
    gpu_hog2->compute(_img, d_img2);
//------------------------------------------------------------------------------
    cv::cuda::GpuMat d_img3;
    ASSERT_TRUE(d_img3.empty());

    int win_stride_width3 = 9;int win_stride_height3 = 9;
    int win_width3 = 54;
    int block_width3 = 18;
    int block_stride_width3 = 9;int block_stride_height3 = 9;
    int cell_width3 = 6;

    Size win_stride3(win_stride_width3, win_stride_height3);
    Size win_size3(win_width3, win_width3 * 2);
    Size block_size3(block_width3, block_width3);
    Size block_stride3(block_stride_width3, block_stride_height3);
    Size cell_size3(cell_width3, cell_width3);

    cv::Ptr<cv::cuda::HOG> gpu_hog3 = cv::cuda::HOG::create(win_size3, block_size3, block_stride3, cell_size3, nbins);
    gpu_hog3->setWinStride(win_stride3);
    gpu_hog3->compute(_img2, d_img3);
//------------------------------------------------------------------------------
    cv::cuda::GpuMat d_img4;
    ASSERT_TRUE(d_img4.empty());

    int win_stride_width4 = 16;int win_stride_height4 = 16;
    int win_width4 = 64;
    int block_width4 = 32;
    int block_stride_width4 = 16;int block_stride_height4 = 16;
    int cell_width4 = 8;

    Size win_stride4(win_stride_width4, win_stride_height4);
    Size win_size4(win_width4, win_width4 * 2);
    Size block_size4(block_width4, block_width4);
    Size block_stride4(block_stride_width4, block_stride_height4);
    Size cell_size4(cell_width4, cell_width4);

    cv::Ptr<cv::cuda::HOG> gpu_hog4 = cv::cuda::HOG::create(win_size4, block_size4, block_stride4, cell_size4, nbins);
    gpu_hog4->setWinStride(win_stride4);
    gpu_hog4->compute(_img3, d_img4);
//------------------------------------------------------------------------------
    cv::cuda::GpuMat d_img5;
    ASSERT_TRUE(d_img5.empty());

    int win_stride_width5 = 16;int win_stride_height5 = 16;
    int win_width5 = 64;
    int block_width5 = 32;
    int block_stride_width5 = 16;int block_stride_height5 = 16;
    int cell_width5 = 16;

    Size win_stride5(win_stride_width5, win_stride_height5);
    Size win_size5(win_width5, win_width5 * 2);
    Size block_size5(block_width5, block_width5);
    Size block_stride5(block_stride_width5, block_stride_height5);
    Size cell_size5(cell_width5, cell_width5);

    cv::Ptr<cv::cuda::HOG> gpu_hog5 = cv::cuda::HOG::create(win_size5, block_size5, block_stride5, cell_size5, nbins);
    gpu_hog5->setWinStride(win_stride5);
    gpu_hog5->compute(_img3, d_img5);
//------------------------------------------------------------------------------
}
Exemple #28
0
TEST(TestUtilities, GetAttribute)
{
  TiXmlDocument doc;
  doc.LoadFile("src/Utility/Test/refdata/getattribute.xml");
  ASSERT_TRUE(doc.RootElement());

  const char* bTrue[4]  = { "booltrue" , "boolone" , "boolon" , "boolyes" };
  const char* bFalse[4] = { "boolfalse", "boolzero", "booloff", "boolno"  };

  int i;
  for (i = 0; i < 4; i++) {
    const TiXmlElement* elem = doc.RootElement()->FirstChildElement(bTrue[i]);
    ASSERT_TRUE(elem != nullptr);
    bool b = false;
    ASSERT_TRUE(utl::getAttribute(elem, "bar", b));
    ASSERT_TRUE(b);
  }

  for (i = 0; i < 4; i++) {
    const TiXmlElement* elem = doc.RootElement()->FirstChildElement(bFalse[i]);
    ASSERT_TRUE(elem != nullptr);
    bool b = false;
    ASSERT_TRUE(utl::getAttribute(elem, "bar", b));
    ASSERT_FALSE(b);
  }

  const TiXmlElement* elem = doc.RootElement()->FirstChildElement("intval");
  ASSERT_TRUE(elem != nullptr);
  int val1 = 0;
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val1));
  ASSERT_EQ(val1, 1);
  size_t val2 = 0;
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val2));
  ASSERT_EQ(val2, 1U);

  elem = doc.RootElement()->FirstChildElement("realval");
  ASSERT_TRUE(elem != nullptr);
  double val3 = 0.0;
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val3));
  ASSERT_FLOAT_EQ(val3, 2.01);

  elem = doc.RootElement()->FirstChildElement("vecval1");
  ASSERT_TRUE(elem != nullptr);
  Vec3 val4;
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 0.0);
  ASSERT_FLOAT_EQ(val4.z, 0.0);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4, 2));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 1.2);
  ASSERT_FLOAT_EQ(val4.z, 0.0);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4, 3));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 1.2);
  ASSERT_FLOAT_EQ(val4.z, 1.2);

  elem = doc.RootElement()->FirstChildElement("vecval2");
  ASSERT_TRUE(elem != nullptr);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 3.4);
  ASSERT_FLOAT_EQ(val4.z, 0.0);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4, 2));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 3.4);
  ASSERT_FLOAT_EQ(val4.z, 0.0);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4, 3));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 3.4);
  ASSERT_FLOAT_EQ(val4.z, 3.4);

  elem = doc.RootElement()->FirstChildElement("vecval3");
  ASSERT_TRUE(elem != nullptr);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 3.4);
  ASSERT_FLOAT_EQ(val4.z, 5.6);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4, 2));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 3.4);
  ASSERT_FLOAT_EQ(val4.z, 0.0);
  ASSERT_TRUE(utl::getAttribute(elem, "bar", val4, 3));
  ASSERT_FLOAT_EQ(val4.x, 1.2);
  ASSERT_FLOAT_EQ(val4.y, 3.4);
  ASSERT_FLOAT_EQ(val4.z, 5.6);
}
Exemple #29
0
void FileV3Test::TearDown()
{
  ASSERT_TRUE(pws_os::DeleteAFile(fname));
  ASSERT_FALSE(pws_os::FileExists(fname));
}
TEST(FunctionBigNumber, OddDecimalNumber)
{
  MyOddWeb::BigNumber x(1235.246);
  ASSERT_TRUE(x.IsOdd());
  ASSERT_FALSE(x.IsEven());
}