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/vue_merge_request_widget/deployment/deployment_info_spec.js')
-rw-r--r--spec/frontend/vue_merge_request_widget/deployment/deployment_info_spec.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/spec/frontend/vue_merge_request_widget/deployment/deployment_info_spec.js b/spec/frontend/vue_merge_request_widget/deployment/deployment_info_spec.js
new file mode 100644
index 00000000000..c6b73f63301
--- /dev/null
+++ b/spec/frontend/vue_merge_request_widget/deployment/deployment_info_spec.js
@@ -0,0 +1,42 @@
+import { mount } from '@vue/test-utils';
+import { GlTruncate, GlLink } from '@gitlab/ui';
+import DeploymentInfo from '~/vue_merge_request_widget/components/deployment/deployment_info.vue';
+import { deploymentMockData } from './deployment_mock_data';
+
+// This component is well covered in ./deployment_spec.js
+// more component-specific tests are added below
+describe('Deployment Info component', () => {
+ let wrapper;
+
+ const defaultDeploymentInfoOptions = {
+ computedDeploymentStatus: 'computed deployment status',
+ deployment: deploymentMockData,
+ showMetrics: false,
+ };
+
+ const factory = (options = {}) => {
+ const componentProps = { ...defaultDeploymentInfoOptions, ...options };
+ const componentOptions = { propsData: componentProps };
+ wrapper = mount(DeploymentInfo, componentOptions);
+ };
+
+ beforeEach(() => {
+ factory();
+ });
+
+ it('should render gl-truncate for environment name', () => {
+ const envNameComponent = wrapper.findComponent(GlTruncate);
+ expect(envNameComponent.exists()).toBe(true, 'We should use gl-truncate for environment name');
+ expect(envNameComponent.props()).toEqual({
+ text: deploymentMockData.name,
+ withTooltip: true,
+ position: 'middle',
+ });
+ });
+
+ it('should have a link with a correct href to deployed environment', () => {
+ const envLink = wrapper.findComponent(GlLink);
+ expect(envLink.exists()).toBe(true, 'We should have gl-link pointing to deployed environment');
+ expect(envLink.attributes().href).toBe(deploymentMockData.url);
+ });
+});