From bbaf2bb0438b1c71020d9d216feb528add225a7f Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 3 Mar 2020 21:08:37 +0000 Subject: Add latest changes from gitlab-org/gitlab@master --- danger/karma/Dangerfile | 50 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 danger/karma/Dangerfile (limited to 'danger') diff --git a/danger/karma/Dangerfile b/danger/karma/Dangerfile new file mode 100644 index 00000000000..6d692a89e13 --- /dev/null +++ b/danger/karma/Dangerfile @@ -0,0 +1,50 @@ +# frozen_string_literal: true +# rubocop:disable Style/SignalException + +def get_karma_files(files) + files.select do |file| + file.start_with?('ee/spec/javascripts', 'spec/javascripts') && + !file.end_with?('browser_spec.js') + end +end + +new_karma_files = get_karma_files(git.added_files.to_a) + +unless new_karma_files.empty? + + if GitlabDanger.new(helper.gitlab_helper).ci? + markdown(<<~MARKDOWN) + ## New karma spec file + + New frontend specs ([except `browser_specs`](https://gitlab.com/gitlab-org/gitlab/blob/3b6fe2f1077eedb0b8aff02a7350234f0b7dc4f9/spec/javascripts/lib/utils/browser_spec.js#L2)) should be + [written in jest](https://docs.gitlab.com/ee/development/testing_guide/frontend_testing.html#jest). + + You have created the following tests, please migrate them over to jest: + + * #{new_karma_files.map { |path| "`#{path}`" }.join("\n* ")} + MARKDOWN + end + + fail "You have created a new karma spec file" + +end + +changed_karma_files = get_karma_files(helper.all_changed_files) - new_karma_files + +return if changed_karma_files.empty? + +warn 'You have edited karma spec files. Please consider migrating them to jest.' + +if GitlabDanger.new(helper.gitlab_helper).ci? + markdown(<<~MARKDOWN) + ## Edited karma files + + You have edited the following karma spec files. Please consider migrating them to jest: + + * #{changed_karma_files.map { |path| "`#{path}`" }.join("\n* ")} + + In order to align with our Iteration value, migration can also be done as a follow-up. + + For more information: [Jestodus epic](https://gitlab.com/groups/gitlab-org/-/epics/895) + MARKDOWN +end -- cgit v1.2.3