int GetAppInstalledTime(const char* appid, uid_t uid);
+enum class CrashStepType {
+ PROCESS,
+ CLEAN
+};
+
+class StepCrash : public common_installer::Step {
+ public:
+ using Step::Step;
+
+ explicit StepCrash(common_installer::InstallerContext* context,
+ CrashStepType type)
+ : common_installer::Step::Step(context), type_(type) {}
+
+ common_installer::Step::Status process() override {
+ if (type_ == CrashStepType::PROCESS)
+ raise(SIGSEGV);
+ return Status::OK;
+ }
+ common_installer::Step::Status clean() override {
+ if (type_ == CrashStepType::CLEAN)
+ raise(SIGSEGV);
+ return Status::OK;
+ }
+ common_installer::Step::Status undo() override {
+ return common_installer::Step::Status::OK;
+ }
+ common_installer::Step::Status precheck() override {
+ return common_installer::Step::Status::OK;
+ }
+
+ STEP_NAME(Crash)
+
+ private:
+ CrashStepType type_;
+};
+
} // namespace smoke_test
#endif // UNIT_TESTS_COMMON_SMOKE_UTILS_H_