summaryrefslogtreecommitdiff
path: root/qa/qa/vendor/smocker/event_payload.rb
diff options
context:
space:
mode:
Diffstat (limited to 'qa/qa/vendor/smocker/event_payload.rb')
-rw-r--r--qa/qa/vendor/smocker/event_payload.rb49
1 files changed, 49 insertions, 0 deletions
diff --git a/qa/qa/vendor/smocker/event_payload.rb b/qa/qa/vendor/smocker/event_payload.rb
new file mode 100644
index 00000000000..4bf154b76c2
--- /dev/null
+++ b/qa/qa/vendor/smocker/event_payload.rb
@@ -0,0 +1,49 @@
+# frozen_string_literal: true
+
+module QA
+ module Vendor
+ module Smocker
+ class EventPayload
+ def initialize(hook_data)
+ @hook_data = hook_data
+ end
+
+ def raw
+ @hook_data
+ end
+
+ def event
+ raw[:object_kind]&.to_sym
+ end
+
+ def project_name
+ raw.dig(:project, :name)
+ end
+
+ def mr?
+ event == :merge_request
+ end
+
+ def issue?
+ event == :issue
+ end
+
+ def note?
+ event == :note
+ end
+
+ def push?
+ event == :push
+ end
+
+ def tag?
+ event == :tag
+ end
+
+ def wiki?
+ event == :wiki_page
+ end
+ end
+ end
+ end
+end