var niceMax = Math.ceil(dataRange.max / spacing) * spacing;
// If min, max and stepSize is set and they make an evenly spaced scale use it.
- if (generationOptions.min && generationOptions.max && generationOptions.stepSize) {
+ if (!helpers.isNullOrUndef(generationOptions.min) && !helpers.isNullOrUndef(generationOptions.max) && generationOptions.stepSize) {
// If very close to our whole number, use it.
if (helpers.almostWhole((generationOptions.max - generationOptions.min) / generationOptions.stepSize, spacing / 1000)) {
niceMin = generationOptions.min;
expect(chart.scales['x-axis-0'].min).toEqual(20);
expect(chart.scales['x-axis-0'].max).toEqual(21);
});
+
+ it('min settings should be used if set to zero', function() {
+ var barData = {
+ labels: ['S1', 'S2', 'S3'],
+ datasets: [{
+ label: 'dataset 1',
+ backgroundColor: '#382765',
+ data: [2500, 2000, 1500]
+ }]
+ };
+
+ var chart = window.acquireChart({
+ type: 'horizontalBar',
+ data: barData,
+ options: {
+ scales: {
+ xAxes: [{
+ ticks: {
+ min: 0,
+ max: 3000
+ }
+ }]
+ }
+ }
+ });
+
+ expect(chart.scales['x-axis-0'].min).toEqual(0);
+ });
+
+ it('max settings should be used if set to zero', function() {
+ var barData = {
+ labels: ['S1', 'S2', 'S3'],
+ datasets: [{
+ label: 'dataset 1',
+ backgroundColor: '#382765',
+ data: [-2500, -2000, -1500]
+ }]
+ };
+
+ var chart = window.acquireChart({
+ type: 'horizontalBar',
+ data: barData,
+ options: {
+ scales: {
+ xAxes: [{
+ ticks: {
+ min: -3000,
+ max: 0
+ }
+ }]
+ }
+ }
+ });
+
+ expect(chart.scales['x-axis-0'].max).toEqual(0);
+ });
});