@pie-lib/graphing-solution-set 4.0.13 → 4.1.0-beta

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/CHANGELOG.md +0 -44
  2. package/lib/__tests__/bg.test.js +282 -0
  3. package/lib/__tests__/bg.test.js.map +1 -0
  4. package/lib/__tests__/coordinates-label.test.js +276 -0
  5. package/lib/__tests__/coordinates-label.test.js.map +1 -0
  6. package/lib/__tests__/graph-with-controls.test.js +256 -0
  7. package/lib/__tests__/graph-with-controls.test.js.map +1 -0
  8. package/lib/__tests__/graph.test.js +113 -0
  9. package/lib/__tests__/graph.test.js.map +1 -0
  10. package/lib/__tests__/grid-setup.test.js +729 -0
  11. package/lib/__tests__/grid-setup.test.js.map +1 -0
  12. package/lib/__tests__/grid.test.js +29 -0
  13. package/lib/__tests__/grid.test.js.map +1 -0
  14. package/lib/__tests__/labels.test.js +45 -0
  15. package/lib/__tests__/labels.test.js.map +1 -0
  16. package/lib/__tests__/mark-label.test.js +133 -0
  17. package/lib/__tests__/mark-label.test.js.map +1 -0
  18. package/lib/__tests__/toggle-bar.test.js +146 -0
  19. package/lib/__tests__/toggle-bar.test.js.map +1 -0
  20. package/lib/__tests__/tool-menu.test.js +540 -0
  21. package/lib/__tests__/tool-menu.test.js.map +1 -0
  22. package/lib/__tests__/undo-redo.test.js +31 -0
  23. package/lib/__tests__/undo-redo.test.js.map +1 -0
  24. package/lib/__tests__/use-debounce.test.js +24 -0
  25. package/lib/__tests__/use-debounce.test.js.map +1 -0
  26. package/lib/__tests__/utils.js +70 -0
  27. package/lib/__tests__/utils.js.map +1 -0
  28. package/lib/__tests__/utils.test.js +123 -0
  29. package/lib/__tests__/utils.test.js.map +1 -0
  30. package/lib/axis/__tests__/arrow.test.js +60 -0
  31. package/lib/axis/__tests__/arrow.test.js.map +1 -0
  32. package/lib/axis/__tests__/axes.test.js +160 -0
  33. package/lib/axis/__tests__/axes.test.js.map +1 -0
  34. package/lib/container/__tests__/actions.test.js +108 -0
  35. package/lib/container/__tests__/actions.test.js.map +1 -0
  36. package/lib/container/__tests__/index.test.js +346 -0
  37. package/lib/container/__tests__/index.test.js.map +1 -0
  38. package/lib/container/__tests__/marks.test.js +259 -0
  39. package/lib/container/__tests__/marks.test.js.map +1 -0
  40. package/lib/container/__tests__/middleware.test.js +244 -0
  41. package/lib/container/__tests__/middleware.test.js.map +1 -0
  42. package/lib/container/__tests__/reducer.test.js +450 -0
  43. package/lib/container/__tests__/reducer.test.js.map +1 -0
  44. package/lib/tools/line/__tests__/component.test.js +45 -0
  45. package/lib/tools/line/__tests__/component.test.js.map +1 -0
  46. package/lib/tools/polygon/__tests__/component.test.js +501 -0
  47. package/lib/tools/polygon/__tests__/component.test.js.map +1 -0
  48. package/lib/tools/polygon/__tests__/index.test.js +92 -0
  49. package/lib/tools/polygon/__tests__/index.test.js.map +1 -0
  50. package/lib/tools/polygon/__tests__/line.test.js +30 -0
  51. package/lib/tools/polygon/__tests__/line.test.js.map +1 -0
  52. package/lib/tools/polygon/__tests__/polygon.test.js +61 -0
  53. package/lib/tools/polygon/__tests__/polygon.test.js.map +1 -0
  54. package/lib/tools/shared/__tests__/arrow-head.test.js +45 -0
  55. package/lib/tools/shared/__tests__/arrow-head.test.js.map +1 -0
  56. package/lib/tools/shared/line/__tests__/index.test.js +725 -0
  57. package/lib/tools/shared/line/__tests__/index.test.js.map +1 -0
  58. package/lib/tools/shared/line/__tests__/line-path.test.js +64 -0
  59. package/lib/tools/shared/line/__tests__/line-path.test.js.map +1 -0
  60. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +618 -0
  61. package/lib/tools/shared/line/__tests__/with-root-edge.test.js.map +1 -0
  62. package/lib/tools/shared/point/__tests__/arrow-point.test.js +127 -0
  63. package/lib/tools/shared/point/__tests__/arrow-point.test.js.map +1 -0
  64. package/lib/tools/shared/point/__tests__/arrow.test.js +619 -0
  65. package/lib/tools/shared/point/__tests__/arrow.test.js.map +1 -0
  66. package/lib/tools/shared/point/__tests__/base-point.test.js +122 -0
  67. package/lib/tools/shared/point/__tests__/base-point.test.js.map +1 -0
  68. package/package.json +7 -7
  69. package/LICENSE.md +0 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"with-root-edge.test.js","names":["_testUtils","require","_react","_interopRequireDefault","_withRootEdge","_utils","_plot","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","xy","utils","jest","mock","React","out","lineBase","fn","Component","lineToolComponent","props","createElement","describe","Comp","onChange","beforeEach","rootEdgeToFromToWrapper","_extends2","renderComponent","extras","defaults","mark","root","edge","render","it","_renderComponent","container","expect","firstChild","toBeInTheDocument","_renderComponent2","_renderComponent3","_renderComponent4","_renderComponent5","_renderComponent6","getByTestId","wrappedComponent","_renderComponent7","_renderComponent8","undefined","_renderComponent9","not","toHaveBeenCalled","_renderComponent0","_renderComponent1","disabled","correctness","graphProps","getGraphProps","_renderComponent10","_renderComponent11","fill","onClick","onDragStart","onDragStop","_renderComponent12","_renderComponent13","_renderComponent14","_renderComponent15","x","y","label","rootEdgeComponent","_renderComponent16","buildingMark","building","_renderComponent17","completeMark","_renderComponent18","disabledMark","_renderComponent19","correctMark","_renderComponent20","_renderComponent21","_renderComponent22","middle","_renderComponent23","_renderComponent24","type","customGraphProps","_renderComponent25","_renderComponent26","labelNode","document","_renderComponent27","_renderComponent28","labelModeEnabled","_renderComponent29","coordinatesOnHover","_renderComponent30","_renderComponent31","_renderComponent32","_renderComponent33","getPoints","dataPoints","enableCurve","withRootEdge","from","to","_renderComponent34","mockReturnValue","_renderComponent35","_renderComponent36","_renderComponent37","_renderComponent38","points","Array","_","i","_renderComponent39","_renderComponent40","_renderComponent41","_renderComponent42","_renderComponent43","_renderComponent44","_renderComponent45","_renderComponent46","strokeWidth","_renderComponent47","_renderComponent48","_renderComponent49","_renderComponent50"],"sources":["../../../../../src/tools/shared/line/__tests__/with-root-edge.test.jsx"],"sourcesContent":["import { render } from '@pie-lib/test-utils';\nimport React from 'react';\nimport { rootEdgeComponent, rootEdgeToFromToWrapper, withRootEdge } from '../with-root-edge';\nimport { graphProps as getGraphProps } from '../../../../__tests__/utils';\nimport { utils } from '@pie-lib/plot';\n\nconst { xy } = utils;\n\njest.mock('../index', () => {\n const React = require('react');\n const out = {\n lineBase: jest.fn((Component) => Component),\n lineToolComponent: jest.fn((Component) => {\n return (props) => <Component {...props} />;\n }),\n };\n return out;\n});\n\ndescribe('rootEdgeToFromToWrapper', () => {\n let Comp;\n let onChange;\n\n beforeEach(() => {\n onChange = jest.fn();\n Comp = rootEdgeToFromToWrapper((props) => <div data-testid=\"wrapped-component\" {...props} />);\n });\n\n const renderComponent = (extras) => {\n const defaults = {\n mark: { root: xy(1, 1), edge: xy(2, 2) },\n onChange,\n };\n const props = { ...defaults, ...extras };\n return render(<Comp {...props} />);\n };\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with only root point', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with root and edge points', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(5, 5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with negative coordinates', () => {\n const { container } = renderComponent({\n mark: { root: xy(-5, -5), edge: xy(-1, -1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with decimal coordinates', () => {\n const { container } = renderComponent({\n mark: { root: xy(0.5, 0.5), edge: xy(1.5, 1.5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('coordinate transformation', () => {\n it('converts root/edge to from/to for wrapped component', () => {\n const { getByTestId } = renderComponent({\n mark: { root: xy(1, 1), edge: xy(2, 2) },\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n\n it('handles mark without edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with undefined edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1), edge: undefined },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('onChange handling', () => {\n it('passes onChange handler to wrapped component', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n expect(onChange).not.toHaveBeenCalled();\n });\n\n it('provides onChange prop to wrapped component', () => {\n const { getByTestId } = renderComponent();\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n });\n\n describe('prop forwarding', () => {\n it('forwards additional props to wrapped component', () => {\n const { getByTestId } = renderComponent({\n disabled: true,\n correctness: 'correct',\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n\n it('forwards graphProps', () => {\n const graphProps = getGraphProps();\n const { getByTestId } = renderComponent({\n graphProps,\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n\n it('forwards all standard props', () => {\n const { getByTestId } = renderComponent({\n disabled: false,\n correctness: 'incorrect',\n fill: '#ff0000',\n onClick: jest.fn(),\n onDragStart: jest.fn(),\n onDragStop: jest.fn(),\n });\n\n const wrappedComponent = getByTestId('wrapped-component');\n expect(wrappedComponent).toBeInTheDocument();\n });\n });\n\n describe('edge cases', () => {\n it('handles mark with same root and edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1), edge: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with zero coordinates', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(0, 0) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with large coordinate values', () => {\n const { container } = renderComponent({\n mark: { root: xy(1000, 1000), edge: xy(2000, 2000) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with labels', () => {\n const { container } = renderComponent({\n mark: {\n root: { x: 1, y: 1, label: 'Root' },\n edge: { x: 2, y: 2, label: 'Edge' },\n },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n});\n\ndescribe('rootEdgeComponent', () => {\n let onChange;\n let Comp;\n let mark;\n\n beforeEach(() => {\n onChange = jest.fn();\n mark = { root: xy(0, 0), edge: xy(1, 1) };\n Comp = rootEdgeComponent((props) => <text data-testid=\"root-edge-comp\" {...props} />);\n });\n\n const renderComponent = (extras) => {\n const defaults = {\n mark,\n graphProps: getGraphProps(),\n onChange,\n };\n const props = { ...defaults, ...extras };\n return render(<Comp {...props} />);\n };\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with building mark', () => {\n const buildingMark = { root: xy(0, 0), building: true };\n const { container } = renderComponent({ mark: buildingMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with complete mark', () => {\n const completeMark = { root: xy(0, 0), edge: xy(5, 5), building: false };\n const { container } = renderComponent({ mark: completeMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with disabled mark', () => {\n const disabledMark = { root: xy(0, 0), edge: xy(1, 1), disabled: true };\n const { container } = renderComponent({ mark: disabledMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with correctness state', () => {\n const correctMark = { root: xy(0, 0), edge: xy(1, 1), correctness: 'correct' };\n const { container } = renderComponent({ mark: correctMark });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('mark variations', () => {\n it('handles mark without edge', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with middle point', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(2, 2), middle: xy(1, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with custom fill', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(1, 1), fill: '#00ff00' },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles mark with type property', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(1, 1), type: 'parabola' },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('prop forwarding', () => {\n it('forwards graphProps correctly', () => {\n const customGraphProps = getGraphProps(0, 10, 0, 10);\n const { container } = renderComponent({ graphProps: customGraphProps });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards onClick handler', () => {\n const onClick = jest.fn();\n const { container } = renderComponent({ onClick });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards labelNode', () => {\n const labelNode = document.createElement('foreignObject');\n const { container } = renderComponent({ labelNode });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards labelModeEnabled', () => {\n const { container } = renderComponent({ labelModeEnabled: true });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards coordinatesOnHover', () => {\n const { container } = renderComponent({ coordinatesOnHover: true });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('edge cases', () => {\n it('handles vertical line (same x coordinates)', () => {\n const { container } = renderComponent({\n mark: { root: xy(1, 0), edge: xy(1, 5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles horizontal line (same y coordinates)', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 1), edge: xy(5, 1) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles diagonal line', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 0), edge: xy(5, 5) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles negative slope', () => {\n const { container } = renderComponent({\n mark: { root: xy(0, 5), edge: xy(5, 0) },\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n});\n\ndescribe('withRootEdge', () => {\n let getPoints;\n let Comp;\n\n beforeEach(() => {\n getPoints = jest.fn(() => ({\n dataPoints: [\n { x: 0, y: 0 },\n { x: 1, y: 1 },\n { x: 2, y: 4 },\n ],\n enableCurve: true,\n }));\n Comp = withRootEdge(getPoints);\n });\n\n const renderComponent = (extras) => {\n const defaults = {\n from: xy(0, 0),\n to: xy(2, 2),\n graphProps: getGraphProps(),\n onChange: jest.fn(),\n };\n const props = { ...defaults, ...extras };\n return render(<Comp {...props} />);\n };\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('calls getPoints with correct parameters', () => {\n renderComponent();\n expect(getPoints).toHaveBeenCalled();\n });\n\n it('renders with curve enabled', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(0, 0), xy(1, 1), xy(2, 2)],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('renders with curve disabled', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(0, 0), xy(1, 1), xy(2, 2)],\n enableCurve: false,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('data points handling', () => {\n it('handles empty data points', () => {\n getPoints.mockReturnValue({\n dataPoints: [],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles single data point', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(1, 1)],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles many data points', () => {\n const points = Array.from({ length: 100 }, (_, i) => xy(i, i * i));\n getPoints.mockReturnValue({\n dataPoints: points,\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles negative coordinate data points', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(-5, -5), xy(-3, -3), xy(-1, -1)],\n enableCurve: true,\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('prop handling', () => {\n it('forwards onClick handler', () => {\n const onClick = jest.fn();\n const { container } = renderComponent({ onClick });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards onDragStart handler', () => {\n const onDragStart = jest.fn();\n const { container } = renderComponent({ onDragStart });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards onDragStop handler', () => {\n const onDragStop = jest.fn();\n const { container } = renderComponent({ onDragStop });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards disabled state', () => {\n const { container } = renderComponent({ disabled: true });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards correctness state', () => {\n const { container } = renderComponent({ correctness: 'correct' });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('forwards custom props', () => {\n const { container } = renderComponent({\n fill: '#ff0000',\n strokeWidth: 5,\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n\n describe('edge cases', () => {\n it('handles undefined to point', () => {\n const { container } = renderComponent({ to: undefined });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles same from and to points', () => {\n const { container } = renderComponent({\n from: xy(1, 1),\n to: xy(1, 1),\n });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles different graph scales', () => {\n const customGraphProps = getGraphProps(-10, 10, -10, 10);\n const { container } = renderComponent({ graphProps: customGraphProps });\n expect(container.firstChild).toBeInTheDocument();\n });\n\n it('handles getPoints returning enableCurve as undefined', () => {\n getPoints.mockReturnValue({\n dataPoints: [xy(0, 0), xy(1, 1)],\n // enableCurve is undefined\n });\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
5
+ var _testUtils = require("@pie-lib/test-utils");
6
+ var _react = _interopRequireDefault(require("react"));
7
+ var _index = require("../index");
8
+ var _utils = require("../../../../__tests__/utils");
9
+ var _utils2 = require("../../../../utils");
10
+ var _plot = require("@pie-lib/plot");
11
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
12
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
13
+ var xy = _plot.utils.xy;
14
+ jest.mock('../../../../utils', function () {
15
+ var _jest$requireActual = jest.requireActual('../../../../utils'),
16
+ point = _jest$requireActual.point,
17
+ getAngleDeg = _jest$requireActual.getAngleDeg,
18
+ arrowDimensions = _jest$requireActual.arrowDimensions;
19
+ return {
20
+ bounds: jest.fn(),
21
+ point: point,
22
+ getAngleDeg: getAngleDeg,
23
+ arrowDimensions: arrowDimensions
24
+ };
25
+ });
26
+ jest.mock('@pie-lib/plot', function () {
27
+ var _jest$requireActual2 = jest.requireActual('@pie-lib/plot'),
28
+ types = _jest$requireActual2.types,
29
+ utils = _jest$requireActual2.utils;
30
+ return {
31
+ gridDraggable: jest.fn(function (opts) {
32
+ return function (Comp) {
33
+ return Comp;
34
+ };
35
+ }),
36
+ types: types,
37
+ utils: utils
38
+ };
39
+ });
40
+ describe('ArrowPoint', function () {
41
+ var onChange = jest.fn();
42
+ var renderComponent = function renderComponent(extras) {
43
+ var defaults = {
44
+ classes: {},
45
+ className: 'className',
46
+ onChange: onChange,
47
+ graphProps: (0, _utils.graphProps)(),
48
+ from: xy(0, 0),
49
+ to: xy(1, 1),
50
+ x: 0,
51
+ y: 0
52
+ };
53
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
54
+ return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(_index.ArrowPoint, props));
55
+ };
56
+ describe('rendering', function () {
57
+ it('renders without crashing', function () {
58
+ var _renderComponent = renderComponent(),
59
+ container = _renderComponent.container;
60
+ expect(container.firstChild).toBeInTheDocument();
61
+ });
62
+ });
63
+ describe('gridDraggable options', function () {
64
+ var opts;
65
+ var domain;
66
+ var range;
67
+ beforeEach(function () {
68
+ domain = {
69
+ min: 0,
70
+ max: 1,
71
+ step: 1
72
+ };
73
+ range = {
74
+ min: 0,
75
+ max: 1,
76
+ step: 1
77
+ };
78
+ renderComponent();
79
+ opts = _plot.gridDraggable.mock.calls[_plot.gridDraggable.mock.calls.length - 1][0];
80
+ });
81
+ describe('bounds', function () {
82
+ it('calls utils.bounds with area', function () {
83
+ var result = opts.bounds({
84
+ x: 0,
85
+ y: 0
86
+ }, {
87
+ domain: domain,
88
+ range: range
89
+ });
90
+ expect(_utils2.bounds).toHaveBeenCalledWith({
91
+ left: 0,
92
+ top: 0,
93
+ bottom: 0,
94
+ right: 0
95
+ }, domain, range);
96
+ });
97
+ });
98
+ describe('anchorPoint', function () {
99
+ it('returns x/y', function () {
100
+ var result = opts.anchorPoint({
101
+ x: 0,
102
+ y: 0
103
+ });
104
+ expect(result).toEqual({
105
+ x: 0,
106
+ y: 0
107
+ });
108
+ });
109
+ });
110
+ describe('fromDelta', function () {
111
+ it('returns a new point from the x/y + delta', function () {
112
+ var result = opts.fromDelta({
113
+ x: -1,
114
+ y: 0
115
+ }, {
116
+ x: 1,
117
+ y: 3
118
+ });
119
+ expect(result).toEqual({
120
+ x: 0,
121
+ y: 3
122
+ });
123
+ });
124
+ });
125
+ });
126
+ });
127
+ //# sourceMappingURL=arrow-point.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arrow-point.test.js","names":["_testUtils","require","_react","_interopRequireDefault","_index","_utils","_utils2","_plot","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","xy","utils","jest","mock","_jest$requireActual","requireActual","point","getAngleDeg","arrowDimensions","bounds","fn","_jest$requireActual2","types","gridDraggable","opts","Comp","describe","onChange","renderComponent","extras","defaults","classes","className","graphProps","from","to","x","y","props","render","createElement","ArrowPoint","it","_renderComponent","container","expect","firstChild","toBeInTheDocument","domain","range","beforeEach","min","max","step","calls","result","toHaveBeenCalledWith","left","top","bottom","right","anchorPoint","toEqual","fromDelta"],"sources":["../../../../../src/tools/shared/point/__tests__/arrow-point.test.jsx"],"sourcesContent":["import { render } from '@pie-lib/test-utils';\nimport React from 'react';\nimport { ArrowPoint } from '../index';\nimport { graphProps } from '../../../../__tests__/utils';\nimport { bounds } from '../../../../utils';\nimport { gridDraggable, utils } from '@pie-lib/plot';\n\nconst { xy } = utils;\njest.mock('../../../../utils', () => {\n const { point, getAngleDeg, arrowDimensions } = jest.requireActual('../../../../utils');\n return {\n bounds: jest.fn(),\n point,\n getAngleDeg,\n arrowDimensions,\n };\n});\n\njest.mock('@pie-lib/plot', () => {\n const { types, utils } = jest.requireActual('@pie-lib/plot');\n return {\n gridDraggable: jest.fn((opts) => (Comp) => Comp),\n types,\n utils,\n };\n});\n\ndescribe('ArrowPoint', () => {\n let onChange = jest.fn();\n\n const renderComponent = (extras) => {\n const defaults = {\n classes: {},\n className: 'className',\n onChange,\n graphProps: graphProps(),\n from: xy(0, 0),\n to: xy(1, 1),\n x: 0,\n y: 0,\n };\n const props = { ...defaults, ...extras };\n return render(<ArrowPoint {...props} />);\n };\n\n describe('rendering', () => {\n it('renders without crashing', () => {\n const { container } = renderComponent();\n expect(container.firstChild).toBeInTheDocument();\n });\n });\n describe('gridDraggable options', () => {\n let opts;\n let domain;\n let range;\n beforeEach(() => {\n domain = {\n min: 0,\n max: 1,\n step: 1,\n };\n range = {\n min: 0,\n max: 1,\n step: 1,\n };\n renderComponent();\n opts = gridDraggable.mock.calls[gridDraggable.mock.calls.length - 1][0];\n });\n\n describe('bounds', () => {\n it('calls utils.bounds with area', () => {\n const result = opts.bounds({ x: 0, y: 0 }, { domain, range });\n expect(bounds).toHaveBeenCalledWith({ left: 0, top: 0, bottom: 0, right: 0 }, domain, range);\n });\n });\n describe('anchorPoint', () => {\n it('returns x/y', () => {\n const result = opts.anchorPoint({ x: 0, y: 0 });\n expect(result).toEqual({ x: 0, y: 0 });\n });\n });\n\n describe('fromDelta', () => {\n it('returns a new point from the x/y + delta', () => {\n const result = opts.fromDelta({ x: -1, y: 0 }, { x: 1, y: 3 });\n expect(result).toEqual({ x: 0, y: 3 });\n });\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}