summaryrefslogtreecommitdiff
path: root/spec/javascripts/vue_shared/components/bar_chart_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/javascripts/vue_shared/components/bar_chart_spec.js')
-rw-r--r--spec/javascripts/vue_shared/components/bar_chart_spec.js79
1 files changed, 0 insertions, 79 deletions
diff --git a/spec/javascripts/vue_shared/components/bar_chart_spec.js b/spec/javascripts/vue_shared/components/bar_chart_spec.js
deleted file mode 100644
index 8f673c146ec..00000000000
--- a/spec/javascripts/vue_shared/components/bar_chart_spec.js
+++ /dev/null
@@ -1,79 +0,0 @@
-import Vue from 'vue';
-import mountComponent from 'spec/helpers/vue_mount_component_helper';
-import BarChart from '~/vue_shared/components/bar_chart.vue';
-
-function getRandomArbitrary(min, max) {
- return Math.random() * (max - min) + min;
-}
-
-function generateRandomData(dataNumber) {
- const randomGraphData = [];
-
- for (let i = 1; i <= dataNumber; i += 1) {
- randomGraphData.push({
- name: `random ${i}`,
- value: parseInt(getRandomArbitrary(1, 8), 10),
- });
- }
-
- return randomGraphData;
-}
-
-describe('Bar chart component', () => {
- let barChart;
- const graphData = generateRandomData(10);
-
- beforeEach(() => {
- const BarChartComponent = Vue.extend(BarChart);
-
- barChart = mountComponent(BarChartComponent, {
- graphData,
- yAxisLabel: 'data',
- });
- });
-
- afterEach(() => {
- barChart.$destroy();
- });
-
- it('calculates the padding for even distribution across bars', () => {
- barChart.vbWidth = 1000;
- const result = barChart.calculatePadding(30);
-
- // since padding can't be higher than 1 and lower than 0
- // for more info: https://github.com/d3/d3-scale#band-scales
- expect(result).not.toBeLessThan(0);
- expect(result).not.toBeGreaterThan(1);
- });
-
- it('formats the tooltip title', () => {
- const tooltipTitle = barChart.setTooltipTitle(barChart.graphData[0]);
-
- expect(tooltipTitle).toContain('random 1:');
- });
-
- it('has a translates the bar graphs on across the X axis', () => {
- barChart.panX = 100;
-
- expect(barChart.barTranslationTransform).toEqual('translate(100, 0)');
- });
-
- it('translates the scroll indicator to the far right side', () => {
- barChart.vbWidth = 500;
-
- expect(barChart.scrollIndicatorTransform).toEqual('translate(420, 0)');
- });
-
- it('translates the x-axis to the bottom of the viewbox and pan coordinates', () => {
- barChart.panX = 100;
- barChart.vbHeight = 250;
-
- expect(barChart.xAxisLocation).toEqual('translate(100, 250)');
- });
-
- it('rotates the x axis labels a total of 90 degress (CCW)', () => {
- const xAxisLabel = barChart.$el.querySelector('.x-axis').querySelectorAll('text')[0];
-
- expect(xAxisLabel.getAttribute('transform')).toEqual('rotate(-90)');
- });
-});