Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/ide/stores/actions/alert_spec.js')
-rw-r--r--spec/frontend/ide/stores/actions/alert_spec.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/spec/frontend/ide/stores/actions/alert_spec.js b/spec/frontend/ide/stores/actions/alert_spec.js
new file mode 100644
index 00000000000..1321c402ebb
--- /dev/null
+++ b/spec/frontend/ide/stores/actions/alert_spec.js
@@ -0,0 +1,46 @@
+import testAction from 'helpers/vuex_action_helper';
+import service from '~/ide/services';
+import {
+ detectEnvironmentsGuidance,
+ dismissEnvironmentsGuidance,
+} from '~/ide/stores/actions/alert';
+import * as types from '~/ide/stores/mutation_types';
+
+jest.mock('~/ide/services');
+
+describe('~/ide/stores/actions/alert', () => {
+ describe('detectEnvironmentsGuidance', () => {
+ it('should try to fetch CI info', () => {
+ const stages = ['a', 'b', 'c'];
+ service.getCiConfig.mockResolvedValue({ stages });
+
+ return testAction(
+ detectEnvironmentsGuidance,
+ 'the content',
+ { currentProjectId: 'gitlab/test' },
+ [{ type: types.DETECT_ENVIRONMENTS_GUIDANCE_ALERT, payload: stages }],
+ [],
+ () => expect(service.getCiConfig).toHaveBeenCalledWith('gitlab/test', 'the content'),
+ );
+ });
+ });
+ describe('dismissCallout', () => {
+ it('should try to dismiss the given callout', () => {
+ const callout = { featureName: 'test', dismissedAt: 'now' };
+
+ service.dismissUserCallout.mockResolvedValue({ userCalloutCreate: { userCallout: callout } });
+
+ return testAction(
+ dismissEnvironmentsGuidance,
+ undefined,
+ {},
+ [{ type: types.DISMISS_ENVIRONMENTS_GUIDANCE_ALERT }],
+ [],
+ () =>
+ expect(service.dismissUserCallout).toHaveBeenCalledWith(
+ 'web_ide_ci_environments_guidance',
+ ),
+ );
+ });
+ });
+});