@pie-lib/graphing 2.15.0-beta.4 → 2.15.0-beta.5

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 (36) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/lib/__tests__/graph-with-controls.test.js +215 -0
  3. package/lib/__tests__/graph.test.js +290 -0
  4. package/lib/__tests__/grid.test.js +40 -0
  5. package/lib/__tests__/labels.test.js +59 -0
  6. package/lib/__tests__/mark-label.test.js +154 -0
  7. package/lib/__tests__/toggle-bar.test.js +54 -0
  8. package/lib/__tests__/tool-menu.test.js +43 -0
  9. package/lib/__tests__/undo-redo.test.js +42 -0
  10. package/lib/__tests__/use-debounce.test.js +28 -0
  11. package/lib/__tests__/utils.js +72 -0
  12. package/lib/__tests__/utils.test.js +133 -0
  13. package/lib/axis/__tests__/arrow.test.js +68 -0
  14. package/lib/axis/__tests__/axes.test.js +214 -0
  15. package/lib/tools/absolute/__tests__/component.test.js +74 -0
  16. package/lib/tools/circle/__tests__/bg-circle.test.js +46 -0
  17. package/lib/tools/circle/__tests__/component.test.js +259 -0
  18. package/lib/tools/exponential/__tests__/component.test.js +73 -0
  19. package/lib/tools/line/__tests__/component.test.js +56 -0
  20. package/lib/tools/parabola/__tests__/component.test.js +73 -0
  21. package/lib/tools/point/__tests__/component.test.js +97 -0
  22. package/lib/tools/polygon/__tests__/component.test.js +255 -0
  23. package/lib/tools/polygon/__tests__/index.test.js +95 -0
  24. package/lib/tools/polygon/__tests__/line.test.js +43 -0
  25. package/lib/tools/polygon/__tests__/polygon.test.js +73 -0
  26. package/lib/tools/ray/__tests__/component.test.js +48 -0
  27. package/lib/tools/segment/__tests__/component.test.js +48 -0
  28. package/lib/tools/shared/__tests__/arrow-head.test.js +62 -0
  29. package/lib/tools/shared/line/__tests__/index.test.js +301 -0
  30. package/lib/tools/shared/line/__tests__/line-path.test.js +78 -0
  31. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +122 -0
  32. package/lib/tools/shared/point/__tests__/arrow-point.test.js +137 -0
  33. package/lib/tools/shared/point/__tests__/base-point.test.js +134 -0
  34. package/lib/tools/sine/__tests__/component.test.js +81 -0
  35. package/lib/tools/vector/__tests__/component.test.js +45 -0
  36. package/package.json +8 -8
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
+
7
+ var _enzyme = require("enzyme");
8
+
9
+ var _react = _interopRequireDefault(require("react"));
10
+
11
+ var _arrow = require("../arrow");
12
+
13
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
14
+
15
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
16
+
17
+ describe('Arrow', function () {
18
+ var w;
19
+ var onChange = jest.fn();
20
+
21
+ var wrapper = function wrapper(extras) {
22
+ var defaults = {
23
+ classes: {},
24
+ className: 'className',
25
+ onChange: onChange,
26
+ scale: {
27
+ x: jest.fn(function (n) {
28
+ return n;
29
+ }),
30
+ y: jest.fn(function (n) {
31
+ return n;
32
+ })
33
+ }
34
+ };
35
+
36
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
37
+
38
+ return (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_arrow.Arrow, props));
39
+ };
40
+
41
+ describe('snapshot', function () {
42
+ it('up', function () {
43
+ w = wrapper({
44
+ direction: 'up'
45
+ });
46
+ expect(w).toMatchSnapshot();
47
+ });
48
+ it('down', function () {
49
+ w = wrapper({
50
+ direction: 'down'
51
+ });
52
+ expect(w).toMatchSnapshot();
53
+ });
54
+ it('left', function () {
55
+ w = wrapper({
56
+ direction: 'left'
57
+ });
58
+ expect(w).toMatchSnapshot();
59
+ });
60
+ it('right', function () {
61
+ w = wrapper({
62
+ direction: 'right'
63
+ });
64
+ expect(w).toMatchSnapshot();
65
+ });
66
+ });
67
+ });
68
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9heGlzL19fdGVzdHNfXy9hcnJvdy50ZXN0LmpzeCJdLCJuYW1lcyI6WyJkZXNjcmliZSIsInciLCJvbkNoYW5nZSIsImplc3QiLCJmbiIsIndyYXBwZXIiLCJleHRyYXMiLCJkZWZhdWx0cyIsImNsYXNzZXMiLCJjbGFzc05hbWUiLCJzY2FsZSIsIngiLCJuIiwieSIsInByb3BzIiwiaXQiLCJkaXJlY3Rpb24iLCJleHBlY3QiLCJ0b01hdGNoU25hcHNob3QiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBOztBQUNBOztBQUNBOzs7Ozs7QUFFQUEsUUFBUSxDQUFDLE9BQUQsRUFBVSxZQUFNO0FBQ3RCLE1BQUlDLENBQUo7QUFDQSxNQUFJQyxRQUFRLEdBQUdDLElBQUksQ0FBQ0MsRUFBTCxFQUFmOztBQUNBLE1BQU1DLE9BQU8sR0FBRyxTQUFWQSxPQUFVLENBQUNDLE1BQUQsRUFBWTtBQUMxQixRQUFNQyxRQUFRLEdBQUc7QUFDZkMsTUFBQUEsT0FBTyxFQUFFLEVBRE07QUFFZkMsTUFBQUEsU0FBUyxFQUFFLFdBRkk7QUFHZlAsTUFBQUEsUUFBUSxFQUFSQSxRQUhlO0FBSWZRLE1BQUFBLEtBQUssRUFBRTtBQUNMQyxRQUFBQSxDQUFDLEVBQUVSLElBQUksQ0FBQ0MsRUFBTCxDQUFRLFVBQUNRLENBQUQ7QUFBQSxpQkFBT0EsQ0FBUDtBQUFBLFNBQVIsQ0FERTtBQUVMQyxRQUFBQSxDQUFDLEVBQUVWLElBQUksQ0FBQ0MsRUFBTCxDQUFRLFVBQUNRLENBQUQ7QUFBQSxpQkFBT0EsQ0FBUDtBQUFBLFNBQVI7QUFGRTtBQUpRLEtBQWpCOztBQVNBLFFBQU1FLEtBQUssbUNBQVFQLFFBQVIsR0FBcUJELE1BQXJCLENBQVg7O0FBQ0EsV0FBTyxtQ0FBUSxnQ0FBQyxZQUFELEVBQVdRLEtBQVgsQ0FBUixDQUFQO0FBQ0QsR0FaRDs7QUFhQWQsRUFBQUEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFNO0FBQ3pCZSxJQUFBQSxFQUFFLENBQUMsSUFBRCxFQUFPLFlBQU07QUFDYmQsTUFBQUEsQ0FBQyxHQUFHSSxPQUFPLENBQUM7QUFBRVcsUUFBQUEsU0FBUyxFQUFFO0FBQWIsT0FBRCxDQUFYO0FBQ0FDLE1BQUFBLE1BQU0sQ0FBQ2hCLENBQUQsQ0FBTixDQUFVaUIsZUFBVjtBQUNELEtBSEMsQ0FBRjtBQUlBSCxJQUFBQSxFQUFFLENBQUMsTUFBRCxFQUFTLFlBQU07QUFDZmQsTUFBQUEsQ0FBQyxHQUFHSSxPQUFPLENBQUM7QUFBRVcsUUFBQUEsU0FBUyxFQUFFO0FBQWIsT0FBRCxDQUFYO0FBQ0FDLE1BQUFBLE1BQU0sQ0FBQ2hCLENBQUQsQ0FBTixDQUFVaUIsZUFBVjtBQUNELEtBSEMsQ0FBRjtBQUlBSCxJQUFBQSxFQUFFLENBQUMsTUFBRCxFQUFTLFlBQU07QUFDZmQsTUFBQUEsQ0FBQyxHQUFHSSxPQUFPLENBQUM7QUFBRVcsUUFBQUEsU0FBUyxFQUFFO0FBQWIsT0FBRCxDQUFYO0FBQ0FDLE1BQUFBLE1BQU0sQ0FBQ2hCLENBQUQsQ0FBTixDQUFVaUIsZUFBVjtBQUNELEtBSEMsQ0FBRjtBQUlBSCxJQUFBQSxFQUFFLENBQUMsT0FBRCxFQUFVLFlBQU07QUFDaEJkLE1BQUFBLENBQUMsR0FBR0ksT0FBTyxDQUFDO0FBQUVXLFFBQUFBLFNBQVMsRUFBRTtBQUFiLE9BQUQsQ0FBWDtBQUNBQyxNQUFBQSxNQUFNLENBQUNoQixDQUFELENBQU4sQ0FBVWlCLGVBQVY7QUFDRCxLQUhDLENBQUY7QUFJRCxHQWpCTyxDQUFSO0FBa0JELENBbENPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBBcnJvdyB9IGZyb20gJy4uL2Fycm93JztcblxuZGVzY3JpYmUoJ0Fycm93JywgKCkgPT4ge1xuICBsZXQgdztcbiAgbGV0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICBjb25zdCB3cmFwcGVyID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgY2xhc3Nlczoge30sXG4gICAgICBjbGFzc05hbWU6ICdjbGFzc05hbWUnLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBzY2FsZToge1xuICAgICAgICB4OiBqZXN0LmZuKChuKSA9PiBuKSxcbiAgICAgICAgeTogamVzdC5mbigobikgPT4gbiksXG4gICAgICB9LFxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gc2hhbGxvdyg8QXJyb3cgey4uLnByb3BzfSAvPik7XG4gIH07XG4gIGRlc2NyaWJlKCdzbmFwc2hvdCcsICgpID0+IHtcbiAgICBpdCgndXAnLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcih7IGRpcmVjdGlvbjogJ3VwJyB9KTtcbiAgICAgIGV4cGVjdCh3KS50b01hdGNoU25hcHNob3QoKTtcbiAgICB9KTtcbiAgICBpdCgnZG93bicsICgpID0+IHtcbiAgICAgIHcgPSB3cmFwcGVyKHsgZGlyZWN0aW9uOiAnZG93bicgfSk7XG4gICAgICBleHBlY3QodykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gICAgaXQoJ2xlZnQnLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcih7IGRpcmVjdGlvbjogJ2xlZnQnIH0pO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuICAgIGl0KCdyaWdodCcsICgpID0+IHtcbiAgICAgIHcgPSB3cmFwcGVyKHsgZGlyZWN0aW9uOiAncmlnaHQnIH0pO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19
@@ -0,0 +1,214 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
7
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
8
+
9
+ var _enzyme = require("enzyme");
10
+
11
+ var _react = _interopRequireDefault(require("react"));
12
+
13
+ var _utils = require("../../__tests__/utils");
14
+
15
+ var _axes = _interopRequireWildcard(require("../axes"));
16
+
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+
19
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+
21
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
22
+
23
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
24
+
25
+ describe('RawXAxis', function () {
26
+ var w;
27
+ var onChange = jest.fn();
28
+
29
+ var wrapper = function wrapper(extras) {
30
+ var defaults = {
31
+ classes: {},
32
+ className: 'className',
33
+ onChange: onChange,
34
+ graphProps: (0, _utils.graphProps)(),
35
+ includeArrows: {
36
+ left: true,
37
+ right: true,
38
+ up: true,
39
+ down: true
40
+ }
41
+ };
42
+
43
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
44
+
45
+ return (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_axes.RawXAxis, props));
46
+ };
47
+
48
+ describe('snapshot', function () {
49
+ it('renders', function () {
50
+ w = wrapper();
51
+ expect(w).toMatchSnapshot();
52
+ });
53
+ });
54
+ });
55
+ describe('RawYAxis', function () {
56
+ var w;
57
+ var onChange = jest.fn();
58
+
59
+ var wrapper = function wrapper(extras) {
60
+ var defaults = {
61
+ classes: {},
62
+ className: 'className',
63
+ onChange: onChange,
64
+ graphProps: (0, _utils.graphProps)(),
65
+ includeArrows: {
66
+ left: true,
67
+ right: true,
68
+ up: true,
69
+ down: true
70
+ }
71
+ };
72
+
73
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
74
+
75
+ return (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_axes.RawYAxis, props));
76
+ };
77
+
78
+ describe('snapshot', function () {
79
+ it('renders', function () {
80
+ w = wrapper();
81
+ expect(w).toMatchSnapshot();
82
+ });
83
+ });
84
+ });
85
+
86
+ var customScaleMock = function customScaleMock(distance) {
87
+ var fn = jest.fn(function (n) {
88
+ return n * distance;
89
+ });
90
+ fn.invert = jest.fn(function (n) {
91
+ return n * distance;
92
+ });
93
+ return fn;
94
+ };
95
+
96
+ describe.only('Axes', function () {
97
+ var w;
98
+ var onChange = jest.fn();
99
+
100
+ var customGraphProps = _objectSpread(_objectSpread({}, (0, _utils.graphProps)()), {}, {
101
+ domain: {
102
+ min: -2,
103
+ max: 2,
104
+ labelStep: 1,
105
+ step: 1
106
+ },
107
+ range: {
108
+ min: -2,
109
+ max: 2,
110
+ step: 1,
111
+ labelStep: 1
112
+ },
113
+ scale: {
114
+ x: customScaleMock(200),
115
+ y: customScaleMock(150)
116
+ }
117
+ });
118
+
119
+ var wrapper = function wrapper(extras) {
120
+ var defaults = {
121
+ classes: {},
122
+ className: 'className',
123
+ onChange: onChange,
124
+ graphProps: customGraphProps
125
+ };
126
+
127
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
128
+
129
+ return (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_axes["default"], props));
130
+ };
131
+
132
+ describe('xValues', function () {
133
+ it('renders', function () {
134
+ w = wrapper();
135
+ var result = w.instance().xValues();
136
+ expect(result).toEqual({
137
+ columnTicksValues: expect.arrayContaining([-2, -1, 0, 1, 2]),
138
+ distanceFromOriginToFirstNegativeX: 150,
139
+ firstNegativeX: -1
140
+ });
141
+ });
142
+ });
143
+ describe('yValues', function () {
144
+ it('renders', function () {
145
+ w = wrapper();
146
+ var result = w.instance().yValues();
147
+ expect(result).toEqual({
148
+ rowTickValues: expect.arrayContaining([-2, -1, 0, 1, 2]),
149
+ distanceFromOriginToFirstNegativeY: 200,
150
+ firstNegativeY: -1
151
+ });
152
+ });
153
+ });
154
+ });
155
+ describe('firstNegativeValue should return undefiend for undefined interval', function () {
156
+ var interval = undefined;
157
+ var result = (0, _axes.firstNegativeValue)(interval);
158
+ expect(result).toEqual(undefined);
159
+ });
160
+ describe('firstNegativeValue should return undefiend for empty interval', function () {
161
+ var interval = [];
162
+ var result = (0, _axes.firstNegativeValue)(interval);
163
+ expect(result).toEqual(undefined);
164
+ });
165
+ describe('firstNegativeValue should return undefined if there is no negative in interval array', function () {
166
+ var interval = [1, 5, 7, 4, 5];
167
+ var result = (0, _axes.firstNegativeValue)(interval);
168
+ expect(result).toEqual(undefined);
169
+ });
170
+ describe('firstNegativeValue should return first negative number from interval', function () {
171
+ var interval = [1, 5, 7, -2, 4, 5, -1];
172
+ var result = (0, _axes.firstNegativeValue)(interval);
173
+ expect(result).toEqual(-2);
174
+ });
175
+ describe('skipValue should be empty array if firstNegativeValue for one of the axes is undefined', function () {
176
+ // x
177
+ var intervalX = [1, 2, 3, 4, 5, 6];
178
+ var firstNegativeX = (0, _axes.firstNegativeValue)(intervalX);
179
+ var distanceFromOriginToFirstNegativeX = -22; // y
180
+
181
+ var intervalY = [-1, -2, 1, 2, 3, 4, 5, 6];
182
+ var firstNegativeY = (0, _axes.firstNegativeValue)(intervalY);
183
+ var distanceFromOriginToFirstNegativeY = -22;
184
+ var deltaAllowance = 5;
185
+ var result = (0, _axes.sharedValues)(firstNegativeX, firstNegativeY, distanceFromOriginToFirstNegativeX, distanceFromOriginToFirstNegativeY, deltaAllowance);
186
+ expect(result).toEqual([]);
187
+ });
188
+ describe('skipValue should be empty array if firstNegativeX and firstNegativeY are equal but they do not overlap', function () {
189
+ // x
190
+ var intervalX = [-1, -2, 1, 2, 3, 4, 5, 6];
191
+ var firstNegativeX = (0, _axes.firstNegativeValue)(intervalX);
192
+ var distanceFromOriginToFirstNegativeX = -7; // y
193
+
194
+ var intervalY = [-1, -2, 1, 2, 3, 4, 5, 6];
195
+ var firstNegativeY = (0, _axes.firstNegativeValue)(intervalY);
196
+ var distanceFromOriginToFirstNegativeY = -22;
197
+ var deltaAllowance = 5;
198
+ var result = (0, _axes.sharedValues)(firstNegativeX, firstNegativeY, distanceFromOriginToFirstNegativeX, distanceFromOriginToFirstNegativeY, deltaAllowance);
199
+ expect(result).toEqual([]);
200
+ });
201
+ describe('skipValue should be -1 if firstNegativeX and firstNegativeY are equal and they overlap', function () {
202
+ // x
203
+ var intervalX = [-1, -2, 1, 2, 3, 4, 5, 6];
204
+ var firstNegativeX = (0, _axes.firstNegativeValue)(intervalX);
205
+ var distanceFromOriginToFirstNegativeX = -20; // y
206
+
207
+ var intervalY = [-1, -2, 1, 2, 3, 4, 5, 6];
208
+ var firstNegativeY = (0, _axes.firstNegativeValue)(intervalY);
209
+ var distanceFromOriginToFirstNegativeY = -22;
210
+ var deltaAllowance = 5;
211
+ var result = (0, _axes.sharedValues)(firstNegativeX, firstNegativeY, distanceFromOriginToFirstNegativeX, distanceFromOriginToFirstNegativeY, deltaAllowance);
212
+ expect(result).toEqual([-1]);
213
+ });
214
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9heGlzL19fdGVzdHNfXy9heGVzLnRlc3QuanN4Il0sIm5hbWVzIjpbImRlc2NyaWJlIiwidyIsIm9uQ2hhbmdlIiwiamVzdCIsImZuIiwid3JhcHBlciIsImV4dHJhcyIsImRlZmF1bHRzIiwiY2xhc3NlcyIsImNsYXNzTmFtZSIsImdyYXBoUHJvcHMiLCJpbmNsdWRlQXJyb3dzIiwibGVmdCIsInJpZ2h0IiwidXAiLCJkb3duIiwicHJvcHMiLCJpdCIsImV4cGVjdCIsInRvTWF0Y2hTbmFwc2hvdCIsImN1c3RvbVNjYWxlTW9jayIsImRpc3RhbmNlIiwibiIsImludmVydCIsIm9ubHkiLCJjdXN0b21HcmFwaFByb3BzIiwiZG9tYWluIiwibWluIiwibWF4IiwibGFiZWxTdGVwIiwic3RlcCIsInJhbmdlIiwic2NhbGUiLCJ4IiwieSIsInJlc3VsdCIsImluc3RhbmNlIiwieFZhbHVlcyIsInRvRXF1YWwiLCJjb2x1bW5UaWNrc1ZhbHVlcyIsImFycmF5Q29udGFpbmluZyIsImRpc3RhbmNlRnJvbU9yaWdpblRvRmlyc3ROZWdhdGl2ZVgiLCJmaXJzdE5lZ2F0aXZlWCIsInlWYWx1ZXMiLCJyb3dUaWNrVmFsdWVzIiwiZGlzdGFuY2VGcm9tT3JpZ2luVG9GaXJzdE5lZ2F0aXZlWSIsImZpcnN0TmVnYXRpdmVZIiwiaW50ZXJ2YWwiLCJ1bmRlZmluZWQiLCJpbnRlcnZhbFgiLCJpbnRlcnZhbFkiLCJkZWx0YUFsbG93YW5jZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFFQTs7Ozs7Ozs7OztBQUVBQSxRQUFRLENBQUMsVUFBRCxFQUFhLFlBQU07QUFDekIsTUFBSUMsQ0FBSjtBQUNBLE1BQUlDLFFBQVEsR0FBR0MsSUFBSSxDQUFDQyxFQUFMLEVBQWY7O0FBQ0EsTUFBTUMsT0FBTyxHQUFHLFNBQVZBLE9BQVUsQ0FBQ0MsTUFBRCxFQUFZO0FBQzFCLFFBQU1DLFFBQVEsR0FBRztBQUNmQyxNQUFBQSxP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LHdGQUFELEVBQTJGLFlBQU07QUFDdkc7QUFDQSxNQUFNaUQsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFGLEVBQUssQ0FBQyxDQUFOLEVBQVMsQ0FBVCxFQUFZLENBQVosRUFBZSxDQUFmLEVBQWtCLENBQWxCLEVBQXFCLENBQXJCLEVBQXdCLENBQXhCLENBQWxCO0FBQ0EsTUFBTVAsY0FBYyxHQUFHLDhCQUFtQk8sU0FBbkIsQ0FBdkI7QUFDQSxNQUFNUixrQ0FBa0MsR0FBRyxDQUFDLEVBQTVDLENBSnVHLENBTXZHOztBQUNBLE1BQU1TLFNBQVMsR0FBRyxDQUFDLENBQUMsQ0FBRixFQUFLLENBQUMsQ0FBTixFQUFTLENBQVQsRUFBWSxDQUFaLEVBQWUsQ0FBZixFQUFrQixDQUFsQixFQUFxQixDQUFyQixFQUF3QixDQUF4QixDQUFsQjtBQUNBLE1BQU1KLGNBQWMsR0FBRyw4QkFBbUJJLFNBQW5CLENBQXZCO0FBQ0EsTUFBTUwsa0NBQWtDLEdBQUcsQ0FBQyxFQUE1QztBQUVBLE1BQU1NLGNBQWMsR0FBRyxDQUF2QjtBQUVBLE1BQU1oQixNQUFNLEdBQUcsd0JBQ2JPLGNBRGEsRUFFYkksY0FGYSxFQUdiTCxrQ0FIYSxFQUliSSxrQ0FKYSxFQUtiTSxjQUxhLENBQWY7QUFRQWpDLEVBQUFBLE1BQU0sQ0FBQ2lCLE1BQUQsQ0FBTixDQUFlRyxPQUFmLENBQXVCLENBQUMsQ0FBQyxDQUFGLENBQXZCO0FBQ0QsQ0F0Qk8sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHNoYWxsb3cgfSBmcm9tICdlbnp5bWUnO1xuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IGdyYXBoUHJvcHMgfSBmcm9tICcuLi8uLi9fX3Rlc3RzX18vdXRpbHMnO1xuXG5pbXBvcnQgQXhlcywgeyBSYXdYQXhpcywgUmF3WUF4aXMsIGZpcnN0TmVnYXRpdmVWYWx1ZSwgc2hhcmVkVmFsdWVzIH0gZnJvbSAnLi4vYXhlcyc7XG5cbmRlc2NyaWJlKCdSYXdYQXhpcycsICgpID0+IHtcbiAgbGV0IHc7XG4gIGxldCBvbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgY29uc3Qgd3JhcHBlciA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIGNsYXNzZXM6IHt9LFxuICAgICAgY2xhc3NOYW1lOiAnY2xhc3NOYW1lJyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgZ3JhcGhQcm9wczogZ3JhcGhQcm9wcygpLFxuICAgICAgaW5jbHVkZUFycm93czoge1xuICAgICAgICBsZWZ0OiB0cnVlLFxuICAgICAgICByaWdodDogdHJ1ZSxcbiAgICAgICAgdXA6IHRydWUsXG4gICAgICAgIGRvd246IHRydWUsXG4gICAgICB9LFxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gc2hhbGxvdyg8UmF3WEF4aXMgey4uLnByb3BzfSAvPik7XG4gIH07XG4gIGRlc2NyaWJlKCdzbmFwc2hvdCcsICgpID0+IHtcbiAgICBpdCgncmVuZGVycycsICgpID0+IHtcbiAgICAgIHcgPSB3cmFwcGVyKCk7XG4gICAgICBleHBlY3QodykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG5cbmRlc2NyaWJlKCdSYXdZQXhpcycsICgpID0+IHtcbiAgbGV0IHc7XG4gIGxldCBvbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgY29uc3Qgd3JhcHBlciA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIGNsYXNzZXM6IHt9LFxuICAgICAgY2xhc3NOYW1lOiAnY2xhc3NOYW1lJyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgZ3JhcGhQcm9wczogZ3JhcGhQcm9wcygpLFxuICAgICAgaW5jbHVkZUFycm93czoge1xuICAgICAgICBsZWZ0OiB0cnVlLFxuICAgICAgICByaWdodDogdHJ1ZSxcbiAgICAgICAgdXA6IHRydWUsXG4gICAgICAgIGRvd246IHRydWUsXG4gICAgICB9LFxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gc2hhbGxvdyg8UmF3WUF4aXMgey4uLnByb3BzfSAvPik7XG4gIH07XG4gIGRlc2NyaWJlKCdzbmFwc2hvdCcsICgpID0+IHtcbiAgICBpdCgncmVuZGVycycsICgpID0+IHtcbiAgICAgIHcgPSB3cmFwcGVyKCk7XG4gICAgICBleHBlY3QodykudG9NYXRjaFNuYXBzaG90KCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG5cbmNvbnN0IGN1c3RvbVNjYWxlTW9jayA9IChkaXN0YW5jZSkgPT4ge1xuICBjb25zdCBmbiA9IGplc3QuZm4oKG4pID0+IG4gKiBkaXN0YW5jZSk7XG4gIGZuLmludmVydCA9IGplc3QuZm4oKG4pID0+IG4gKiBkaXN0YW5jZSk7XG4gIHJldHVybiBmbjtcbn07XG5cbmRlc2NyaWJlLm9ubHkoJ0F4ZXMnLCAoKSA9PiB7XG4gIGxldCB3O1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG5cbiAgY29uc3QgY3VzdG9tR3JhcGhQcm9wcyA9IHtcbiAgICAuLi5ncmFwaFByb3BzKCksXG4gICAgZG9tYWluOiB7XG4gICAgICBtaW46IC0yLFxuICAgICAgbWF4OiAyLFxuICAgICAgbGFiZWxTdGVwOiAxLFxuICAgICAgc3RlcDogMSxcbiAgICB9LFxuICAgIHJhbmdlOiB7XG4gICAgICBtaW46IC0yLFxuICAgICAgbWF4OiAyLFxuICAgICAgc3RlcDogMSxcbiAgICAgIGxhYmVsU3RlcDogMSxcbiAgICB9LFxuICAgIHNjYWxlOiB7XG4gICAgICB4OiBjdXN0b21TY2FsZU1vY2soMjAwKSxcbiAgICAgIHk6IGN1c3RvbVNjYWxlTW9jaygxNTApLFxuICAgIH0sXG4gIH07XG5cbiAgY29uc3Qgd3JhcHBlciA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIGNsYXNzZXM6IHt9LFxuICAgICAgY2xhc3NOYW1lOiAnY2xhc3NOYW1lJyxcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgZ3JhcGhQcm9wczogY3VzdG9tR3JhcGhQcm9wcyxcbiAgICB9O1xuXG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gc2hhbGxvdyg8QXhlcyB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcbiAgZGVzY3JpYmUoJ3hWYWx1ZXMnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMnLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcigpO1xuICAgICAgY29uc3QgcmVzdWx0ID0gdy5pbnN0YW5jZSgpLnhWYWx1ZXMoKTtcbiAgICAgIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoe1xuICAgICAgICBjb2x1bW5UaWNrc1ZhbHVlczogZXhwZWN0LmFycmF5Q29udGFpbmluZyhbLTIsIC0xLCAwLCAxLCAyXSksXG4gICAgICAgIGRpc3RhbmNlRnJvbU9yaWdpblRvRmlyc3ROZWdhdGl2ZVg6IDE1MCxcbiAgICAgICAgZmlyc3ROZWdhdGl2ZVg6IC0xLFxuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xuICBkZXNjcmliZSgneVZhbHVlcycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycycsICgpID0+IHtcbiAgICAgIHcgPSB3cmFwcGVyKCk7XG4gICAgICBjb25zdCByZXN1bHQgPSB3Lmluc3RhbmNlKCkueVZhbHVlcygpO1xuICAgICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbCh7XG4gICAgICAgIHJvd1RpY2tWYWx1ZXM6IGV4cGVjdC5hcnJheUNvbnRhaW5pbmcoWy0yLCAtMSwgMCwgMSwgMl0pLFxuICAgICAgICBkaXN0YW5jZUZyb21PcmlnaW5Ub0ZpcnN0TmVnYXRpdmVZOiAyMDAsXG4gICAgICAgIGZpcnN0TmVnYXRpdmVZOiAtMSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuXG5kZXNjcmliZSgnZmlyc3ROZWdhdGl2ZVZhbHVlIHNob3VsZCByZXR1cm4gdW5kZWZpZW5kIGZvciB1bmRlZmluZWQgaW50ZXJ2YWwnLCAoKSA9PiB7XG4gIGNvbnN0IGludGVydmFsID0gdW5kZWZpbmVkO1xuICBjb25zdCByZXN1bHQgPSBmaXJzdE5lZ2F0aXZlVmFsdWUoaW50ZXJ2YWwpO1xuICBleHBlY3QocmVzdWx0KS50b0VxdWFsKHVuZGVmaW5lZCk7XG59KTtcblxuZGVzY3JpYmUoJ2ZpcnN0TmVnYXRpdmVWYWx1ZSBzaG91bGQgcmV0dXJuIHVuZGVmaWVuZCBmb3IgZW1wdHkgaW50ZXJ2YWwnLCAoKSA9PiB7XG4gIGNvbnN0IGludGVydmFsID0gW107XG4gIGNvbnN0IHJlc3VsdCA9IGZpcnN0TmVnYXRpdmVWYWx1ZShpbnRlcnZhbCk7XG4gIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwodW5kZWZpbmVkKTtcbn0pO1xuXG5kZXNjcmliZSgnZmlyc3ROZWdhdGl2ZVZhbHVlIHNob3VsZCByZXR1cm4gdW5kZWZpbmVkIGlmIHRoZXJlIGlzIG5vIG5lZ2F0aXZlIGluIGludGVydmFsIGFycmF5JywgKCkgPT4ge1xuICBjb25zdCBpbnRlcnZhbCA9IFsxLCA1LCA3LCA0LCA1XTtcbiAgY29uc3QgcmVzdWx0ID0gZmlyc3ROZWdhdGl2ZVZhbHVlKGludGVydmFsKTtcbiAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbCh1bmRlZmluZWQpO1xufSk7XG5cbmRlc2NyaWJlKCdmaXJzdE5lZ2F0aXZlVmFsdWUgc2hvdWxkIHJldHVybiBmaXJzdCBuZWdhdGl2ZSBudW1iZXIgZnJvbSBpbnRlcnZhbCcsICgpID0+IHtcbiAgY29uc3QgaW50ZXJ2YWwgPSBbMSwgNSwgNywgLTIsIDQsIDUsIC0xXTtcbiAgY29uc3QgcmVzdWx0ID0gZmlyc3ROZWdhdGl2ZVZhbHVlKGludGVydmFsKTtcbiAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbCgtMik7XG59KTtcblxuZGVzY3JpYmUoJ3NraXBWYWx1ZSBzaG91bGQgYmUgZW1wdHkgYXJyYXkgaWYgZmlyc3ROZWdhdGl2ZVZhbHVlIGZvciBvbmUgb2YgdGhlIGF4ZXMgaXMgdW5kZWZpbmVkJywgKCkgPT4ge1xuICAvLyB4XG4gIGNvbnN0IGludGVydmFsWCA9IFsxLCAyLCAzLCA0LCA1LCA2XTtcbiAgY29uc3QgZmlyc3ROZWdhdGl2ZVggPSBmaXJzdE5lZ2F0aXZlVmFsdWUoaW50ZXJ2YWxYKTtcbiAgY29uc3QgZGlzdGFuY2VGcm9tT3JpZ2luVG9GaXJzdE5lZ2F0aXZlWCA9IC0yMjtcblxuICAvLyB5XG4gIGNvbnN0IGludGVydmFsWSA9IFstMSwgLTIsIDEsIDIsIDMsIDQsIDUsIDZdO1xuICBjb25zdCBmaXJzdE5lZ2F0aXZlWSA9IGZpcnN0TmVnYXRpdmVWYWx1ZShpbnRlcnZhbFkpO1xuICBjb25zdCBkaXN0YW5jZUZyb21PcmlnaW5Ub0ZpcnN0TmVnYXRpdmVZID0gLTIyO1xuXG4gIGNvbnN0IGRlbHRhQWxsb3dhbmNlID0gNTtcblxuICBjb25zdCByZXN1bHQgPSBzaGFyZWRWYWx1ZXMoXG4gICAgZmlyc3ROZWdhdGl2ZVgsXG4gICAgZmlyc3ROZWdhdGl2ZVksXG4gICAgZGlzdGFuY2VGcm9tT3JpZ2luVG9GaXJzdE5lZ2F0aXZlWCxcbiAgICBkaXN0YW5jZUZyb21PcmlnaW5Ub0ZpcnN0TmVnYXRpdmVZLFxuICAgIGRlbHRhQWxsb3dhbmNlLFxuICApO1xuXG4gIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoW10pO1xufSk7XG5cbmRlc2NyaWJlKCdza2lwVmFsdWUgc2hvdWxkIGJlIGVtcHR5IGFycmF5IGlmIGZpcnN0TmVnYXRpdmVYIGFuZCBmaXJzdE5lZ2F0aXZlWSBhcmUgZXF1YWwgYnV0IHRoZXkgZG8gbm90IG92ZXJsYXAnLCAoKSA9PiB7XG4gIC8vIHhcbiAgY29uc3QgaW50ZXJ2YWxYID0gWy0xLCAtMiwgMSwgMiwgMywgNCwgNSwgNl07XG4gIGNvbnN0IGZpcnN0TmVnYXRpdmVYID0gZmlyc3ROZWdhdGl2ZVZhbHVlKGludGVydmFsWCk7XG4gIGNvbnN0IGRpc3RhbmNlRnJvbU9yaWdpblRvRmlyc3ROZWdhdGl2ZVggPSAtNztcblxuICAvLyB5XG4gIGNvbnN0IGludGVydmFsWSA9IFstMSwgLTIsIDEsIDIsIDMsIDQsIDUsIDZdO1xuICBjb25zdCBmaXJzdE5lZ2F0aXZlWSA9IGZpcnN0TmVnYXRpdmVWYWx1ZShpbnRlcnZhbFkpO1xuICBjb25zdCBkaXN0YW5jZUZyb21PcmlnaW5Ub0ZpcnN0TmVnYXRpdmVZID0gLTIyO1xuXG4gIGNvbnN0IGRlbHRhQWxsb3dhbmNlID0gNTtcblxuICBjb25zdCByZXN1bHQgPSBzaGFyZWRWYWx1ZXMoXG4gICAgZmlyc3ROZWdhdGl2ZVgsXG4gICAgZmlyc3ROZWdhdGl2ZVksXG4gICAgZGlzdGFuY2VGcm9tT3JpZ2luVG9GaXJzdE5lZ2F0aXZlWCxcbiAgICBkaXN0YW5jZUZyb21PcmlnaW5Ub0ZpcnN0TmVnYXRpdmVZLFxuICAgIGRlbHRhQWxsb3dhbmNlLFxuICApO1xuXG4gIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoW10pO1xufSk7XG5cbmRlc2NyaWJlKCdza2lwVmFsdWUgc2hvdWxkIGJlIC0xIGlmIGZpcnN0TmVnYXRpdmVYIGFuZCBmaXJzdE5lZ2F0aXZlWSBhcmUgZXF1YWwgYW5kIHRoZXkgb3ZlcmxhcCcsICgpID0+IHtcbiAgLy8geFxuICBjb25zdCBpbnRlcnZhbFggPSBbLTEsIC0yLCAxLCAyLCAzLCA0LCA1LCA2XTtcbiAgY29uc3QgZmlyc3ROZWdhdGl2ZVggPSBmaXJzdE5lZ2F0aXZlVmFsdWUoaW50ZXJ2YWxYKTtcbiAgY29uc3QgZGlzdGFuY2VGcm9tT3JpZ2luVG9GaXJzdE5lZ2F0aXZlWCA9IC0yMDtcblxuICAvLyB5XG4gIGNvbnN0IGludGVydmFsWSA9IFstMSwgLTIsIDEsIDIsIDMsIDQsIDUsIDZdO1xuICBjb25zdCBmaXJzdE5lZ2F0aXZlWSA9IGZpcnN0TmVnYXRpdmVWYWx1ZShpbnRlcnZhbFkpO1xuICBjb25zdCBkaXN0YW5jZUZyb21PcmlnaW5Ub0ZpcnN0TmVnYXRpdmVZID0gLTIyO1xuXG4gIGNvbnN0IGRlbHRhQWxsb3dhbmNlID0gNTtcblxuICBjb25zdCByZXN1bHQgPSBzaGFyZWRWYWx1ZXMoXG4gICAgZmlyc3ROZWdhdGl2ZVgsXG4gICAgZmlyc3ROZWdhdGl2ZVksXG4gICAgZGlzdGFuY2VGcm9tT3JpZ2luVG9GaXJzdE5lZ2F0aXZlWCxcbiAgICBkaXN0YW5jZUZyb21PcmlnaW5Ub0ZpcnN0TmVnYXRpdmVZLFxuICAgIGRlbHRhQWxsb3dhbmNlLFxuICApO1xuXG4gIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoWy0xXSk7XG59KTtcbiJdfQ==
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ var _withRootEdge = require("../../shared/line/with-root-edge");
8
+
9
+ var _graphingUtils = require("@pie-lib/graphing-utils");
10
+
11
+ var _plot = require("@pie-lib/plot");
12
+
13
+ var _utils = require("../../../__tests__/utils");
14
+
15
+ var xy = _plot.utils.xy;
16
+ jest.mock('@pie-lib/graphing-utils', function () {
17
+ return {
18
+ buildDataPoints: jest.fn().mockReturnValue([]),
19
+ absoluteFromTwoPoints: jest.fn(function () {
20
+ return jest.fn();
21
+ }),
22
+ getAmplitudeAndFreq: jest.fn().mockReturnValue({
23
+ freq: 4,
24
+ amplitude: 1
25
+ })
26
+ };
27
+ });
28
+ jest.mock("../../shared/line/with-root-edge", function () {
29
+ return {
30
+ withRootEdge: jest.fn(),
31
+ rootEdgeComponent: jest.fn()
32
+ };
33
+ });
34
+ describe('Absolute', function () {
35
+ var fnBody;
36
+ var graphProps;
37
+ var root;
38
+ var edge;
39
+ var result;
40
+ beforeEach(function () {
41
+ require("../component");
42
+
43
+ fnBody = _withRootEdge.withRootEdge.mock.calls[0][0];
44
+ graphProps = (0, _utils.graphProps)();
45
+ root = xy(0, 0);
46
+ edge = xy(1, 1);
47
+ result = fnBody({
48
+ graphProps: graphProps,
49
+ root: root,
50
+ edge: edge
51
+ });
52
+ });
53
+ it('fnBody is not null', function () {
54
+ expect(fnBody).toBeDefined();
55
+ });
56
+ it('calls buildDataPoints', function () {
57
+ var _graphProps = graphProps,
58
+ domain = _graphProps.domain,
59
+ range = _graphProps.range;
60
+ expect(_graphingUtils.buildDataPoints).toHaveBeenCalledWith(domain, range, root, edge, expect.anything(), true);
61
+ });
62
+ it('calls absoluteFromTwoPoints', function () {
63
+ expect(_graphingUtils.absoluteFromTwoPoints).toHaveBeenCalledWith(root, edge);
64
+ });
65
+ it('returns dataPoints', function () {
66
+ expect(result).toEqual({
67
+ enableCurve: false,
68
+ root: root,
69
+ edge: edge,
70
+ dataPoints: []
71
+ });
72
+ });
73
+ });
74
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9hYnNvbHV0ZS9fX3Rlc3RzX18vY29tcG9uZW50LnRlc3QuanN4Il0sIm5hbWVzIjpbInh5IiwidXRpbHMiLCJqZXN0IiwibW9jayIsImJ1aWxkRGF0YVBvaW50cyIsImZuIiwibW9ja1JldHVyblZhbHVlIiwiYWJzb2x1dGVGcm9tVHdvUG9pbnRzIiwiZ2V0QW1wbGl0dWRlQW5kRnJlcSIsImZyZXEiLCJhbXBsaXR1ZGUiLCJ3aXRoUm9vdEVkZ2UiLCJyb290RWRnZUNvbXBvbmVudCIsImRlc2NyaWJlIiwiZm5Cb2R5IiwiZ3JhcGhQcm9wcyIsInJvb3QiLCJlZGdlIiwicmVzdWx0IiwiYmVmb3JlRWFjaCIsInJlcXVpcmUiLCJjYWxscyIsIml0IiwiZXhwZWN0IiwidG9CZURlZmluZWQiLCJkb21haW4iLCJyYW5nZSIsInRvSGF2ZUJlZW5DYWxsZWRXaXRoIiwiYW55dGhpbmciLCJ0b0VxdWFsIiwiZW5hYmxlQ3VydmUiLCJkYXRhUG9pbnRzIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBRUEsSUFBUUEsRUFBUixHQUFlQyxXQUFmLENBQVFELEVBQVI7QUFFQUUsSUFBSSxDQUFDQyxJQUFMLENBQVUseUJBQVYsRUFBcUM7QUFBQSxTQUFPO0FBQzFDQyxJQUFBQSxlQUFlLEVBQUVGLElBQUksQ0FBQ0csRUFBTCxHQUFVQyxlQUFWLENBQTBCLEVBQTFCLENBRHlCO0FBRTFDQyxJQUFBQSxxQkFBcUIsRUFBRUwsSUFBSSxDQUFDRyxFQUFMLENBQVE7QUFBQSxhQUFNSCxJQUFJLENBQUNHLEVBQUwsRUFBTjtBQUFBLEtBQVIsQ0FGbUI7QUFHMUNHLElBQUFBLG1CQUFtQixFQUFFTixJQUFJLENBQUNHLEVBQUwsR0FBVUMsZUFBVixDQUEwQjtBQUFFRyxNQUFBQSxJQUFJLEVBQUUsQ0FBUjtBQUFXQyxNQUFBQSxTQUFTLEVBQUU7QUFBdEIsS0FBMUI7QUFIcUIsR0FBUDtBQUFBLENBQXJDO0FBTUFSLElBQUksQ0FBQ0MsSUFBTCxxQ0FBOEM7QUFBQSxTQUFPO0FBQ25EUSxJQUFBQSxZQUFZLEVBQUVULElBQUksQ0FBQ0csRUFBTCxFQURxQztBQUVuRE8sSUFBQUEsaUJBQWlCLEVBQUVWLElBQUksQ0FBQ0csRUFBTDtBQUZnQyxHQUFQO0FBQUEsQ0FBOUM7QUFLQVEsUUFBUSxDQUFDLFVBQUQsRUFBYSxZQUFNO0FBQ3pCLE1BQUlDLE1BQUo7QUFDQSxNQUFJQyxVQUFKO0FBQ0EsTUFBSUMsSUFBSjtBQUNBLE1BQUlDLElBQUo7QUFDQSxNQUFJQyxNQUFKO0FBRUFDLEVBQUFBLFVBQVUsQ0FBQyxZQUFNO0FBQ2ZDLElBQUFBLE9BQU8sZ0JBQVA7O0FBQ0FOLElBQUFBLE1BQU0sR0FBR0gsMkJBQWFSLElBQWIsQ0FBa0JrQixLQUFsQixDQUF3QixDQUF4QixFQUEyQixDQUEzQixDQUFUO0FBQ0FOLElBQUFBLFVBQVUsR0FBRyx3QkFBYjtBQUNBQyxJQUFBQSxJQUFJLEdBQUdoQixFQUFFLENBQUMsQ0FBRCxFQUFJLENBQUosQ0FBVDtBQUNBaUIsSUFBQUEsSUFBSSxHQUFHakIsRUFBRSxDQUFDLENBQUQsRUFBSSxDQUFKLENBQVQ7QUFFQWtCLElBQUFBLE1BQU0sR0FBR0osTUFBTSxDQUFDO0FBQUVDLE1BQUFBLFVBQVUsRUFBVkEsVUFBRjtBQUFjQyxNQUFBQSxJQUFJLEVBQUpBLElBQWQ7QUFBb0JDLE1BQUFBLElBQUksRUFBSkE7QUFBcEIsS0FBRCxDQUFmO0FBQ0QsR0FSUyxDQUFWO0FBVUFLLEVBQUFBLEVBQUUsQ0FBQyxvQkFBRCxFQUF1QixZQUFNO0FBQzdCQyxJQUFBQSxNQUFNLENBQUNULE1BQUQsQ0FBTixDQUFlVSxXQUFmO0FBQ0QsR0FGQyxDQUFGO0FBSUFGLEVBQUFBLEVBQUUsQ0FBQyx1QkFBRCxFQUEwQixZQUFNO0FBQ2hDLHNCQUEwQlAsVUFBMUI7QUFBQSxRQUFRVSxNQUFSLGVBQVFBLE1BQVI7QUFBQSxRQUFnQkMsS0FBaEIsZUFBZ0JBLEtBQWhCO0FBQ0FILElBQUFBLE1BQU0sQ0FBQ25CLDhCQUFELENBQU4sQ0FBd0J1QixvQkFBeEIsQ0FBNkNGLE1BQTdDLEVBQXFEQyxLQUFyRCxFQUE0RFYsSUFBNUQsRUFBa0VDLElBQWxFLEVBQXdFTSxNQUFNLENBQUNLLFFBQVAsRUFBeEUsRUFBMkYsSUFBM0Y7QUFDRCxHQUhDLENBQUY7QUFLQU4sRUFBQUEsRUFBRSxDQUFDLDZCQUFELEVBQWdDLFlBQU07QUFDdENDLElBQUFBLE1BQU0sQ0FBQ2hCLG9DQUFELENBQU4sQ0FBOEJvQixvQkFBOUIsQ0FBbURYLElBQW5ELEVBQXlEQyxJQUF6RDtBQUNELEdBRkMsQ0FBRjtBQUlBSyxFQUFBQSxFQUFFLENBQUMsb0JBQUQsRUFBdUIsWUFBTTtBQUM3QkMsSUFBQUEsTUFBTSxDQUFDTCxNQUFELENBQU4sQ0FBZVcsT0FBZixDQUF1QjtBQUFFQyxNQUFBQSxXQUFXLEVBQUUsS0FBZjtBQUFzQmQsTUFBQUEsSUFBSSxFQUFKQSxJQUF0QjtBQUE0QkMsTUFBQUEsSUFBSSxFQUFKQSxJQUE1QjtBQUFrQ2MsTUFBQUEsVUFBVSxFQUFFO0FBQTlDLEtBQXZCO0FBQ0QsR0FGQyxDQUFGO0FBR0QsQ0FqQ08sQ0FBUiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyB3aXRoUm9vdEVkZ2UgfSBmcm9tICcuLi8uLi9zaGFyZWQvbGluZS93aXRoLXJvb3QtZWRnZSc7XG5pbXBvcnQgeyBidWlsZERhdGFQb2ludHMsIGFic29sdXRlRnJvbVR3b1BvaW50cyB9IGZyb20gJ0BwaWUtbGliL2dyYXBoaW5nLXV0aWxzJztcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5cbmltcG9ydCB7IGdyYXBoUHJvcHMgYXMgZ2V0R3JhcGhQcm9wcyB9IGZyb20gJy4uLy4uLy4uL19fdGVzdHNfXy91dGlscyc7XG5cbmNvbnN0IHsgeHkgfSA9IHV0aWxzO1xuXG5qZXN0Lm1vY2soJ0BwaWUtbGliL2dyYXBoaW5nLXV0aWxzJywgKCkgPT4gKHtcbiAgYnVpbGREYXRhUG9pbnRzOiBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKFtdKSxcbiAgYWJzb2x1dGVGcm9tVHdvUG9pbnRzOiBqZXN0LmZuKCgpID0+IGplc3QuZm4oKSksXG4gIGdldEFtcGxpdHVkZUFuZEZyZXE6IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoeyBmcmVxOiA0LCBhbXBsaXR1ZGU6IDEgfSksXG59KSk7XG5cbmplc3QubW9jaygnLi4vLi4vc2hhcmVkL2xpbmUvd2l0aC1yb290LWVkZ2UnLCAoKSA9PiAoe1xuICB3aXRoUm9vdEVkZ2U6IGplc3QuZm4oKSxcbiAgcm9vdEVkZ2VDb21wb25lbnQ6IGplc3QuZm4oKSxcbn0pKTtcblxuZGVzY3JpYmUoJ0Fic29sdXRlJywgKCkgPT4ge1xuICBsZXQgZm5Cb2R5O1xuICBsZXQgZ3JhcGhQcm9wcztcbiAgbGV0IHJvb3Q7XG4gIGxldCBlZGdlO1xuICBsZXQgcmVzdWx0O1xuXG4gIGJlZm9yZUVhY2goKCkgPT4ge1xuICAgIHJlcXVpcmUoJy4uL2NvbXBvbmVudCcpO1xuICAgIGZuQm9keSA9IHdpdGhSb290RWRnZS5tb2NrLmNhbGxzWzBdWzBdO1xuICAgIGdyYXBoUHJvcHMgPSBnZXRHcmFwaFByb3BzKCk7XG4gICAgcm9vdCA9IHh5KDAsIDApO1xuICAgIGVkZ2UgPSB4eSgxLCAxKTtcblxuICAgIHJlc3VsdCA9IGZuQm9keSh7IGdyYXBoUHJvcHMsIHJvb3QsIGVkZ2UgfSk7XG4gIH0pO1xuXG4gIGl0KCdmbkJvZHkgaXMgbm90IG51bGwnLCAoKSA9PiB7XG4gICAgZXhwZWN0KGZuQm9keSkudG9CZURlZmluZWQoKTtcbiAgfSk7XG5cbiAgaXQoJ2NhbGxzIGJ1aWxkRGF0YVBvaW50cycsICgpID0+IHtcbiAgICBjb25zdCB7IGRvbWFpbiwgcmFuZ2UgfSA9IGdyYXBoUHJvcHM7XG4gICAgZXhwZWN0KGJ1aWxkRGF0YVBvaW50cykudG9IYXZlQmVlbkNhbGxlZFdpdGgoZG9tYWluLCByYW5nZSwgcm9vdCwgZWRnZSwgZXhwZWN0LmFueXRoaW5nKCksIHRydWUpO1xuICB9KTtcblxuICBpdCgnY2FsbHMgYWJzb2x1dGVGcm9tVHdvUG9pbnRzJywgKCkgPT4ge1xuICAgIGV4cGVjdChhYnNvbHV0ZUZyb21Ud29Qb2ludHMpLnRvSGF2ZUJlZW5DYWxsZWRXaXRoKHJvb3QsIGVkZ2UpO1xuICB9KTtcblxuICBpdCgncmV0dXJucyBkYXRhUG9pbnRzJywgKCkgPT4ge1xuICAgIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoeyBlbmFibGVDdXJ2ZTogZmFsc2UsIHJvb3QsIGVkZ2UsIGRhdGFQb2ludHM6IFtdIH0pO1xuICB9KTtcbn0pO1xuIl19
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
6
+
7
+ var _enzyme = require("enzyme");
8
+
9
+ var _react = _interopRequireDefault(require("react"));
10
+
11
+ var _bgCircle = require("../bg-circle");
12
+
13
+ var _utils = require("../../../__tests__/utils");
14
+
15
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
16
+
17
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
18
+
19
+ describe('BgCircle', function () {
20
+ var w;
21
+ var onChange = jest.fn();
22
+
23
+ var wrapper = function wrapper(extras) {
24
+ var defaults = {
25
+ classes: {},
26
+ className: 'className',
27
+ onChange: onChange,
28
+ x: 0,
29
+ y: 0,
30
+ graphProps: (0, _utils.graphProps)()
31
+ };
32
+
33
+ var props = _objectSpread(_objectSpread({}, defaults), extras);
34
+
35
+ return (0, _enzyme.shallow)( /*#__PURE__*/_react["default"].createElement(_bgCircle.BgCircle, props));
36
+ };
37
+
38
+ describe('snapshot', function () {
39
+ it('renders', function () {
40
+ w = wrapper();
41
+ expect(w).toMatchSnapshot();
42
+ });
43
+ });
44
+ describe('logic', function () {});
45
+ });
46
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9jaXJjbGUvX190ZXN0c19fL2JnLWNpcmNsZS50ZXN0LmpzeCJdLCJuYW1lcyI6WyJkZXNjcmliZSIsInciLCJvbkNoYW5nZSIsImplc3QiLCJmbiIsIndyYXBwZXIiLCJleHRyYXMiLCJkZWZhdWx0cyIsImNsYXNzZXMiLCJjbGFzc05hbWUiLCJ4IiwieSIsImdyYXBoUHJvcHMiLCJwcm9wcyIsIml0IiwiZXhwZWN0IiwidG9NYXRjaFNuYXBzaG90Il0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRUFBLFFBQVEsQ0FBQyxVQUFELEVBQWEsWUFBTTtBQUN6QixNQUFJQyxDQUFKO0FBQ0EsTUFBSUMsUUFBUSxHQUFHQyxJQUFJLENBQUNDLEVBQUwsRUFBZjs7QUFDQSxNQUFNQyxPQUFPLEdBQUcsU0FBVkEsT0FBVSxDQUFDQyxNQUFELEVBQVk7QUFDMUIsUUFBTUMsUUFBUSxHQUFHO0FBQ2ZDLE1BQUFBLE9BQU8sRUFBRSxFQURNO0FBRWZDLE1BQUFBLFNBQVMsRUFBRSxXQUZJO0FBR2ZQLE1BQUFBLFFBQVEsRUFBUkEsUUFIZTtBQUlmUSxNQUFBQSxDQUFDLEVBQUUsQ0FKWTtBQUtmQyxNQUFBQSxDQUFDLEVBQUUsQ0FMWTtBQU1mQyxNQUFBQSxVQUFVLEVBQUU7QUFORyxLQUFqQjs7QUFRQSxRQUFNQyxLQUFLLG1DQUFRTixRQUFSLEdBQXFCRCxNQUFyQixDQUFYOztBQUNBLFdBQU8sbUNBQVEsZ0NBQUMsa0JBQUQsRUFBY08sS0FBZCxDQUFSLENBQVA7QUFDRCxHQVhEOztBQVlBYixFQUFBQSxRQUFRLENBQUMsVUFBRCxFQUFhLFlBQU07QUFDekJjLElBQUFBLEVBQUUsQ0FBQyxTQUFELEVBQVksWUFBTTtBQUNsQmIsTUFBQUEsQ0FBQyxHQUFHSSxPQUFPLEVBQVg7QUFDQVUsTUFBQUEsTUFBTSxDQUFDZCxDQUFELENBQU4sQ0FBVWUsZUFBVjtBQUNELEtBSEMsQ0FBRjtBQUlELEdBTE8sQ0FBUjtBQU1BaEIsRUFBQUEsUUFBUSxDQUFDLE9BQUQsRUFBVSxZQUFNLENBQUUsQ0FBbEIsQ0FBUjtBQUNELENBdEJPLENBQVIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBzaGFsbG93IH0gZnJvbSAnZW56eW1lJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBCZ0NpcmNsZSB9IGZyb20gJy4uL2JnLWNpcmNsZSc7XG5pbXBvcnQgeyBncmFwaFByb3BzIH0gZnJvbSAnLi4vLi4vLi4vX190ZXN0c19fL3V0aWxzJztcblxuZGVzY3JpYmUoJ0JnQ2lyY2xlJywgKCkgPT4ge1xuICBsZXQgdztcbiAgbGV0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICBjb25zdCB3cmFwcGVyID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgY2xhc3Nlczoge30sXG4gICAgICBjbGFzc05hbWU6ICdjbGFzc05hbWUnLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICB4OiAwLFxuICAgICAgeTogMCxcbiAgICAgIGdyYXBoUHJvcHM6IGdyYXBoUHJvcHMoKSxcbiAgICB9O1xuICAgIGNvbnN0IHByb3BzID0geyAuLi5kZWZhdWx0cywgLi4uZXh0cmFzIH07XG4gICAgcmV0dXJuIHNoYWxsb3coPEJnQ2lyY2xlIHsuLi5wcm9wc30gLz4pO1xuICB9O1xuICBkZXNjcmliZSgnc25hcHNob3QnLCAoKSA9PiB7XG4gICAgaXQoJ3JlbmRlcnMnLCAoKSA9PiB7XG4gICAgICB3ID0gd3JhcHBlcigpO1xuICAgICAgZXhwZWN0KHcpLnRvTWF0Y2hTbmFwc2hvdCgpO1xuICAgIH0pO1xuICB9KTtcbiAgZGVzY3JpYmUoJ2xvZ2ljJywgKCkgPT4ge30pO1xufSk7XG4iXX0=