summaryrefslogtreecommitdiff
path: root/history/modules/__tests__/TestSequences/DenyGoBack.js
diff options
context:
space:
mode:
Diffstat (limited to 'history/modules/__tests__/TestSequences/DenyGoBack.js')
-rw-r--r--history/modules/__tests__/TestSequences/DenyGoBack.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/history/modules/__tests__/TestSequences/DenyGoBack.js b/history/modules/__tests__/TestSequences/DenyGoBack.js
new file mode 100644
index 0000000..122d336
--- /dev/null
+++ b/history/modules/__tests__/TestSequences/DenyGoBack.js
@@ -0,0 +1,42 @@
+import expect from 'expect';
+
+import execSteps from './execSteps.js';
+
+export default function(history, done) {
+ let unblock;
+ const steps = [
+ location => {
+ expect(location).toMatchObject({
+ pathname: '/'
+ });
+
+ history.push('/home');
+ },
+ (location, action) => {
+ expect(action).toBe('PUSH');
+ expect(location).toMatchObject({
+ pathname: '/home'
+ });
+
+ unblock = history.block(nextLocation => {
+ expect(nextLocation).toMatchObject({
+ pathname: '/'
+ });
+
+ return 'Are you sure?';
+ });
+
+ history.goBack();
+ },
+ (location, action) => {
+ expect(action).toBe('PUSH');
+ expect(location).toMatchObject({
+ pathname: '/home'
+ });
+
+ unblock();
+ }
+ ];
+
+ execSteps(steps, history, done);
+}