Gmock ловит исключение, если проверенный код вызывает это исключение? - PullRequest
0 голосов
/ 14 апреля 2020

У меня есть нагрузочный тест (gmock), который использует многопоточность для добавления многих JSON сообщений в очередь. Что-то вроде:

TEST_F(Send_LoadTest, sendBatchLoadTest){

    test = 2;

    RUN_MULTIPLE_THREADS<LoadTest_ThreadParams>(this);

};

Это вызывает следующий код C ++ для построения очереди:

    if (dataQueue.depth() < 500){
      dataQueue.put(entry);
    } else {
      throw -1;
    }

Я хочу добиться функциональности, где, если максимальная глубина очереди превышена, то у меня есть тест потоки спят немного, если они ловят исключение. Это позволило бы некоторым другим потокам отправителя C ++ очистить текущую очередь перед ее повторным добавлением.

Как бы я перехватил исключение в тесте gmock и заставил его спать, не мешая потокам отправителя?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...