summaryrefslogtreecommitdiff
path: root/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js')
-rw-r--r--spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js b/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js
new file mode 100644
index 00000000000..7230017c560
--- /dev/null
+++ b/spec/frontend/ci/ci_variable_list/components/ci_project_variables_spec.js
@@ -0,0 +1,46 @@
+import { shallowMount } from '@vue/test-utils';
+import { convertToGraphQLId } from '~/graphql_shared/utils';
+
+import ciProjectVariables from '~/ci/ci_variable_list/components/ci_project_variables.vue';
+import ciVariableShared from '~/ci/ci_variable_list/components/ci_variable_shared.vue';
+
+import { GRAPHQL_PROJECT_TYPE } from '~/ci/ci_variable_list/constants';
+
+const mockProvide = {
+ projectFullPath: '/namespace/project',
+ projectId: 1,
+};
+
+describe('Ci Project Variable wrapper', () => {
+ let wrapper;
+
+ const findCiShared = () => wrapper.findComponent(ciVariableShared);
+
+ const createComponent = () => {
+ wrapper = shallowMount(ciProjectVariables, {
+ provide: mockProvide,
+ });
+ };
+
+ beforeEach(() => {
+ createComponent();
+ });
+
+ afterEach(() => {
+ wrapper.destroy();
+ });
+
+ it('Passes down the correct props to ci_variable_shared', () => {
+ expect(findCiShared().props()).toEqual({
+ id: convertToGraphQLId(GRAPHQL_PROJECT_TYPE, mockProvide.projectId),
+ areScopedVariablesAvailable: true,
+ componentName: 'ProjectVariables',
+ entity: 'project',
+ fullPath: mockProvide.projectFullPath,
+ hideEnvironmentScope: false,
+ mutationData: wrapper.vm.$options.mutationData,
+ queryData: wrapper.vm.$options.queryData,
+ refetchAfterMutation: false,
+ });
+ });
+});