2016-12-16 20:56:36 +08:00
|
|
|
#define CATCH_CONFIG_MAIN
|
|
|
|
#include "catch.hpp"
|
|
|
|
|
|
|
|
#include <iostream>
|
|
|
|
#include <string>
|
|
|
|
#include <utility>
|
|
|
|
|
|
|
|
#include "utils/signals/handler.hpp"
|
|
|
|
#include "utils/stacktrace.hpp"
|
|
|
|
|
|
|
|
TEST_CASE("SignalHandler Segmentation Fault Test") {
|
|
|
|
SignalHandler::register_handler(Signal::SegmentationFault, []() {
|
|
|
|
std::cout << "Segmentation Fault" << std::endl;
|
|
|
|
Stacktrace stacktrace;
|
|
|
|
|
|
|
|
std::string message;
|
2016-12-17 00:10:29 +08:00
|
|
|
stacktrace.dump(message);
|
2016-12-16 20:56:36 +08:00
|
|
|
std::cout << message << std::endl;
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
std::raise(SIGSEGV);
|
|
|
|
}
|