@internetarchive/bookreader 5.0.0-55 → 5.0.0-56
Sign up to get free protection for your applications and to get access to all the features.
- package/BookReader/BookReader.js +1 -1
- package/BookReader/plugins/plugin.url.js +1 -1
- package/BookReader/plugins/plugin.url.js.map +1 -1
- package/CHANGELOG.md +3 -0
- package/package.json +1 -1
- package/src/plugins/url/UrlPlugin.js +12 -3
- package/src/plugins/url/plugin.url.js +17 -10
- package/tests/jest/plugins/url/plugin.url.test.js +20 -0
@@ -114,6 +114,26 @@ describe('Plugin: URL controller', () => {
|
|
114
114
|
expect(window.history.replaceState).toHaveBeenCalled();
|
115
115
|
});
|
116
116
|
|
117
|
+
test('switches to hashMode if replaceState errors', () => {
|
118
|
+
window.history.replaceState = jest.fn(() => {
|
119
|
+
throw new Error('foo');
|
120
|
+
});
|
121
|
+
BookReader.prototype.currentIndex = jest.fn(() => 1);
|
122
|
+
BookReader.prototype.urlReadFragment = jest.fn(() => '');
|
123
|
+
BookReader.prototype.paramsFromCurrent = jest.fn(() => ({
|
124
|
+
index: 1,
|
125
|
+
mode: 2,
|
126
|
+
view: 'theater'
|
127
|
+
}));
|
128
|
+
BookReader.prototype.search = jest.fn();
|
129
|
+
br.options.urlMode = 'history';
|
130
|
+
br.init();
|
131
|
+
br.urlUpdateFragment();
|
132
|
+
|
133
|
+
expect(window.history.replaceState).toHaveBeenCalled();
|
134
|
+
expect(br.options.urlMode).toEqual('hash');
|
135
|
+
});
|
136
|
+
|
117
137
|
test('does not update URL when search in query string', () => {
|
118
138
|
window.history.replaceState = jest.fn();
|
119
139
|
BookReader.prototype.currentIndex = jest.fn(() => 1);
|