From c8b61bafee6e165ae6787119bd56333bffeb2d12 Mon Sep 17 00:00:00 2001 From: Soreine Date: Wed, 9 Nov 2016 14:54:23 +0100 Subject: [PATCH] Test undo for insertNode, moveNode, removeNode --- .../on-history/undo/insert-node/index.js | 19 +++++++++++++++++++ .../on-history/undo/insert-node/input.yaml | 14 ++++++++++++++ .../on-history/undo/insert-node/output.yaml | 14 ++++++++++++++ .../on-history/undo/move-node/index.js | 18 ++++++++++++++++++ .../on-history/undo/move-node/input.yaml | 14 ++++++++++++++ .../on-history/undo/move-node/output.yaml | 14 ++++++++++++++ .../on-history/undo/remove-node/index.js | 17 +++++++++++++++++ .../on-history/undo/remove-node/input.yaml | 14 ++++++++++++++ .../on-history/undo/remove-node/output.yaml | 14 ++++++++++++++ 9 files changed, 138 insertions(+) create mode 100644 test/transforms/fixtures/on-history/undo/insert-node/index.js create mode 100644 test/transforms/fixtures/on-history/undo/insert-node/input.yaml create mode 100644 test/transforms/fixtures/on-history/undo/insert-node/output.yaml create mode 100644 test/transforms/fixtures/on-history/undo/move-node/index.js create mode 100644 test/transforms/fixtures/on-history/undo/move-node/input.yaml create mode 100644 test/transforms/fixtures/on-history/undo/move-node/output.yaml create mode 100644 test/transforms/fixtures/on-history/undo/remove-node/index.js create mode 100644 test/transforms/fixtures/on-history/undo/remove-node/input.yaml create mode 100644 test/transforms/fixtures/on-history/undo/remove-node/output.yaml diff --git a/test/transforms/fixtures/on-history/undo/insert-node/index.js b/test/transforms/fixtures/on-history/undo/insert-node/index.js new file mode 100644 index 000000000..27fae4a6a --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/insert-node/index.js @@ -0,0 +1,19 @@ + +import assert from 'assert' +import { Block } from '../../../../../..' + +export default function (state) { + const { selection } = state + + let next = state + .transform() + .insertNodeByKey('key1', 0, Block.create({ type: 'default' })) + .apply() + + .transform() + .undo() + .apply() + + assert.deepEqual(next.selection.toJS(), selection.toJS()) + return next +} diff --git a/test/transforms/fixtures/on-history/undo/insert-node/input.yaml b/test/transforms/fixtures/on-history/undo/insert-node/input.yaml new file mode 100644 index 000000000..b33e60815 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/insert-node/input.yaml @@ -0,0 +1,14 @@ + +nodes: + - kind: block + key: 'key1' + type: paragraph + nodes: + - kind: text + text: The + - kind: block + key: 'key2' + type: paragraph + nodes: + - kind: text + text: text diff --git a/test/transforms/fixtures/on-history/undo/insert-node/output.yaml b/test/transforms/fixtures/on-history/undo/insert-node/output.yaml new file mode 100644 index 000000000..b33e60815 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/insert-node/output.yaml @@ -0,0 +1,14 @@ + +nodes: + - kind: block + key: 'key1' + type: paragraph + nodes: + - kind: text + text: The + - kind: block + key: 'key2' + type: paragraph + nodes: + - kind: text + text: text diff --git a/test/transforms/fixtures/on-history/undo/move-node/index.js b/test/transforms/fixtures/on-history/undo/move-node/index.js new file mode 100644 index 000000000..983a3e144 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/move-node/index.js @@ -0,0 +1,18 @@ + +import assert from 'assert' + +export default function (state) { + const { selection } = state + + let next = state + .transform() + .moveNodeByKey('key2', 'key1', 0) + .apply() + + .transform() + .undo() + .apply() + + assert.deepEqual(next.selection.toJS(), selection.toJS()) + return next +} diff --git a/test/transforms/fixtures/on-history/undo/move-node/input.yaml b/test/transforms/fixtures/on-history/undo/move-node/input.yaml new file mode 100644 index 000000000..b33e60815 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/move-node/input.yaml @@ -0,0 +1,14 @@ + +nodes: + - kind: block + key: 'key1' + type: paragraph + nodes: + - kind: text + text: The + - kind: block + key: 'key2' + type: paragraph + nodes: + - kind: text + text: text diff --git a/test/transforms/fixtures/on-history/undo/move-node/output.yaml b/test/transforms/fixtures/on-history/undo/move-node/output.yaml new file mode 100644 index 000000000..b33e60815 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/move-node/output.yaml @@ -0,0 +1,14 @@ + +nodes: + - kind: block + key: 'key1' + type: paragraph + nodes: + - kind: text + text: The + - kind: block + key: 'key2' + type: paragraph + nodes: + - kind: text + text: text diff --git a/test/transforms/fixtures/on-history/undo/remove-node/index.js b/test/transforms/fixtures/on-history/undo/remove-node/index.js new file mode 100644 index 000000000..eaa9abdc5 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/remove-node/index.js @@ -0,0 +1,17 @@ + +import assert from 'assert' + +export default function (state) { + const { selection } = state + + let next = state + .transform() + .removeNodeByKey('key1') + .apply() + + .transform() + .undo() + .apply() + + return next +} diff --git a/test/transforms/fixtures/on-history/undo/remove-node/input.yaml b/test/transforms/fixtures/on-history/undo/remove-node/input.yaml new file mode 100644 index 000000000..b33e60815 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/remove-node/input.yaml @@ -0,0 +1,14 @@ + +nodes: + - kind: block + key: 'key1' + type: paragraph + nodes: + - kind: text + text: The + - kind: block + key: 'key2' + type: paragraph + nodes: + - kind: text + text: text diff --git a/test/transforms/fixtures/on-history/undo/remove-node/output.yaml b/test/transforms/fixtures/on-history/undo/remove-node/output.yaml new file mode 100644 index 000000000..b33e60815 --- /dev/null +++ b/test/transforms/fixtures/on-history/undo/remove-node/output.yaml @@ -0,0 +1,14 @@ + +nodes: + - kind: block + key: 'key1' + type: paragraph + nodes: + - kind: text + text: The + - kind: block + key: 'key2' + type: paragraph + nodes: + - kind: text + text: text