summaryrefslogtreecommitdiff
path: root/spec/javascripts/helpers
diff options
context:
space:
mode:
authorFilipa Lacerda <filipa@gitlab.com>2017-09-20 19:03:53 +0100
committerFilipa Lacerda <filipa@gitlab.com>2017-09-20 19:03:53 +0100
commitee3cf5d6f3d5a3631fa7e94a242f2dfe9b38a935 (patch)
tree855937f227caaac46688dca63f82a18598be778b /spec/javascripts/helpers
parent6c63520ef5735e56749c77b495f8137a20942504 (diff)
downloadgitlab-ce-ee3cf5d6f3d5a3631fa7e94a242f2dfe9b38a935.tar.gz
[ci skip] Adds tests to vuex and collapsibe component
Formats dates Fixes clipboard button Simplifies HTML
Diffstat (limited to 'spec/javascripts/helpers')
-rw-r--r--spec/javascripts/helpers/vuex_action_helper.js37
1 files changed, 37 insertions, 0 deletions
diff --git a/spec/javascripts/helpers/vuex_action_helper.js b/spec/javascripts/helpers/vuex_action_helper.js
new file mode 100644
index 00000000000..2d386fe1da5
--- /dev/null
+++ b/spec/javascripts/helpers/vuex_action_helper.js
@@ -0,0 +1,37 @@
+/* eslint-disable */
+
+/**
+ * helper for testing action with expected mutations
+ * https://vuex.vuejs.org/en/testing.html
+ */
+export default (action, payload, state, expectedMutations, done) => {
+ let count = 0;
+
+ // mock commit
+ const commit = (type, payload) => {
+ const mutation = expectedMutations[count];
+
+ try {
+ expect(mutation.type).to.equal(type);
+ if (payload) {
+ expect(mutation.payload).to.deep.equal(payload);
+ }
+ } catch (error) {
+ done(error);
+ }
+
+ count++;
+ if (count >= expectedMutations.length) {
+ done();
+ }
+ };
+
+ // call the action with mocked store and arguments
+ action({ commit, state }, payload);
+
+ // check if no mutations should have been dispatched
+ if (expectedMutations.length === 0) {
+ expect(count).to.equal(0);
+ done();
+ }
+};