docs: fixed typos
parent
65dec5bd2c
commit
ea202e41f6
16
CHANGELOG.md
16
CHANGELOG.md
|
@ -122,7 +122,7 @@
|
||||||
* MINOR: Fix ?showChat URL param issue
|
* MINOR: Fix ?showChat URL param issue
|
||||||
* MINOR: Issue where timeslider URI fails to be correct if padID is numeric
|
* MINOR: Issue where timeslider URI fails to be correct if padID is numeric
|
||||||
* MINOR: Include prompt for clear authorship when entire document is selected
|
* MINOR: Include prompt for clear authorship when entire document is selected
|
||||||
* MINOR: Include full document aText every 100 revisions to make pad restoration on database curruption achievable
|
* MINOR: Include full document aText every 100 revisions to make pad restoration on database corruption achievable
|
||||||
* MINOR: Several Colibris CSS fixes
|
* MINOR: Several Colibris CSS fixes
|
||||||
* MINOR: Use mime library for mime types instead of hard-coded.
|
* MINOR: Use mime library for mime types instead of hard-coded.
|
||||||
* MINOR: Don't show "new pad button" if instance is read only
|
* MINOR: Don't show "new pad button" if instance is read only
|
||||||
|
@ -372,7 +372,7 @@ finally put them back in their new location, uder `src/static/skins/no-skin`.
|
||||||
# 1.5.3
|
# 1.5.3
|
||||||
* NEW: Accessibility support for Screen readers, includes new fonts and keyboard shortcuts
|
* NEW: Accessibility support for Screen readers, includes new fonts and keyboard shortcuts
|
||||||
* NEW: API endpoint for Append Chat Message and Chat Backend Tests
|
* NEW: API endpoint for Append Chat Message and Chat Backend Tests
|
||||||
* NEW: Error messages displayed on load are included in Default Pad Text (can be supressed)
|
* NEW: Error messages displayed on load are included in Default Pad Text (can be suppressed)
|
||||||
* NEW: Content Collector can handle key values
|
* NEW: Content Collector can handle key values
|
||||||
* NEW: getAttributesOnPosition Method
|
* NEW: getAttributesOnPosition Method
|
||||||
* FIX: Firefox keeps attributes (bold etc) on cut/copy -> paste
|
* FIX: Firefox keeps attributes (bold etc) on cut/copy -> paste
|
||||||
|
@ -441,7 +441,7 @@ finally put them back in their new location, uder `src/static/skins/no-skin`.
|
||||||
* Fix: Timeslider UI Fix
|
* Fix: Timeslider UI Fix
|
||||||
* Fix: Remove Dokuwiki
|
* Fix: Remove Dokuwiki
|
||||||
* Fix: Remove long paths from windows build (stops error during extract)
|
* Fix: Remove long paths from windows build (stops error during extract)
|
||||||
* Fix: Various globals remvoed
|
* Fix: Various globals removed
|
||||||
* Fix: Move all scripts into bin/
|
* Fix: Move all scripts into bin/
|
||||||
* Fix: Various CSS bugfixes for Mobile devices
|
* Fix: Various CSS bugfixes for Mobile devices
|
||||||
* Fix: Overflow Toolbar
|
* Fix: Overflow Toolbar
|
||||||
|
@ -517,7 +517,7 @@ finally put them back in their new location, uder `src/static/skins/no-skin`.
|
||||||
* FIX: HTML import (don't crash on malformed or blank HTML input; strip title out of html during import)
|
* FIX: HTML import (don't crash on malformed or blank HTML input; strip title out of html during import)
|
||||||
* FIX: check if uploaded file only contains ascii chars when abiword disabled
|
* FIX: check if uploaded file only contains ascii chars when abiword disabled
|
||||||
* FIX: Plugin search in /admin/plugins
|
* FIX: Plugin search in /admin/plugins
|
||||||
* FIX: Don't create new pad if a non-existant read-only pad is accessed
|
* FIX: Don't create new pad if a non-existent read-only pad is accessed
|
||||||
* FIX: Drop messages from unknown connections (would lead to a crash after a restart)
|
* FIX: Drop messages from unknown connections (would lead to a crash after a restart)
|
||||||
* FIX: API: fix createGroupFor endpoint, if mapped group is deleted
|
* FIX: API: fix createGroupFor endpoint, if mapped group is deleted
|
||||||
* FIX: Import form for other locales
|
* FIX: Import form for other locales
|
||||||
|
@ -534,7 +534,7 @@ finally put them back in their new location, uder `src/static/skins/no-skin`.
|
||||||
* NEW: Bump log4js for improved logging
|
* NEW: Bump log4js for improved logging
|
||||||
* Fix: Remove URL schemes which don't have RFC standard
|
* Fix: Remove URL schemes which don't have RFC standard
|
||||||
* Fix: Fix safeRun subsequent restarts issue
|
* Fix: Fix safeRun subsequent restarts issue
|
||||||
* Fix: Allow safeRun to pass arguements to run.sh
|
* Fix: Allow safeRun to pass arguments to run.sh
|
||||||
* Fix: Include script for more efficient import
|
* Fix: Include script for more efficient import
|
||||||
* Fix: Fix sysv comptibile script
|
* Fix: Fix sysv comptibile script
|
||||||
* Fix: Fix client side changeset spamming
|
* Fix: Fix client side changeset spamming
|
||||||
|
@ -573,7 +573,7 @@ finally put them back in their new location, uder `src/static/skins/no-skin`.
|
||||||
* Fix: Support Node 0.10
|
* Fix: Support Node 0.10
|
||||||
* Fix: Log HTTP on DEBUG log level
|
* Fix: Log HTTP on DEBUG log level
|
||||||
* Fix: Server wont crash on import fails on 0 file import.
|
* Fix: Server wont crash on import fails on 0 file import.
|
||||||
* Fix: Import no longer fails consistantly
|
* Fix: Import no longer fails consistently
|
||||||
* Fix: Language support for non existing languages
|
* Fix: Language support for non existing languages
|
||||||
* Fix: Mobile support for chat notifications are now usable
|
* Fix: Mobile support for chat notifications are now usable
|
||||||
* Fix: Re-Enable Editbar buttons on reconnect
|
* Fix: Re-Enable Editbar buttons on reconnect
|
||||||
|
@ -605,7 +605,7 @@ finally put them back in their new location, uder `src/static/skins/no-skin`.
|
||||||
* NEW: Admin dashboard mobile device support and new hooks for Admin dashboard
|
* NEW: Admin dashboard mobile device support and new hooks for Admin dashboard
|
||||||
* NEW: Get current API version from API
|
* NEW: Get current API version from API
|
||||||
* NEW: CLI script to delete pads
|
* NEW: CLI script to delete pads
|
||||||
* Fix: Automatic client reconnection on disonnect
|
* Fix: Automatic client reconnection on disconnect
|
||||||
* Fix: Text Export indentation now supports multiple indentations
|
* Fix: Text Export indentation now supports multiple indentations
|
||||||
* Fix: Bugfix getChatHistory API method
|
* Fix: Bugfix getChatHistory API method
|
||||||
* Fix: Stop Chrome losing caret after paste is texted
|
* Fix: Stop Chrome losing caret after paste is texted
|
||||||
|
@ -625,7 +625,7 @@ finally put them back in their new location, uder `src/static/skins/no-skin`.
|
||||||
* Fix: Stop Opera browser inserting two new lines on enter keypress
|
* Fix: Stop Opera browser inserting two new lines on enter keypress
|
||||||
* Fix: Stop timeslider from showing NaN on pads with only one revision
|
* Fix: Stop timeslider from showing NaN on pads with only one revision
|
||||||
* Other: Allow timeslider tests to run and provide & fix various other frontend-tests
|
* Other: Allow timeslider tests to run and provide & fix various other frontend-tests
|
||||||
* Other: Begin dropping referene to Lite. Etherpad Lite is now named "Etherpad"
|
* Other: Begin dropping reference to Lite. Etherpad Lite is now named "Etherpad"
|
||||||
* Other: Update to latest jQuery
|
* Other: Update to latest jQuery
|
||||||
* Other: Change loading message asking user to please wait on first build
|
* Other: Change loading message asking user to please wait on first build
|
||||||
* Other: Allow etherpad to use global npm installation (Safe since node 6.3)
|
* Other: Allow etherpad to use global npm installation (Safe since node 6.3)
|
||||||
|
|
|
@ -51,7 +51,7 @@ const util = require('util');
|
||||||
|
|
||||||
let atext = Changeset.makeAText('\n');
|
let atext = Changeset.makeAText('\n');
|
||||||
|
|
||||||
// run trough all revisions
|
// run through all revisions
|
||||||
for (const revNum of revisions) {
|
for (const revNum of revisions) {
|
||||||
// console.log('Fetching', revNum)
|
// console.log('Fetching', revNum)
|
||||||
const revision = await db.get(`pad:${padId}:revs:${revNum}`);
|
const revision = await db.get(`pad:${padId}:revs:${revNum}`);
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# Move to the folder where ep-lite is installed
|
# Move to the folder where ep-lite is installed
|
||||||
cd "$(dirname "$0")"/..
|
cd "$(dirname "$0")"/..
|
||||||
|
|
||||||
# Source constants and usefull functions
|
# Source constants and useful functions
|
||||||
. bin/functions.sh
|
. bin/functions.sh
|
||||||
|
|
||||||
#Was this script started in the bin folder? if yes move out
|
#Was this script started in the bin folder? if yes move out
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# Move to the folder where ep-lite is installed
|
# Move to the folder where ep-lite is installed
|
||||||
cd "$(dirname "$0")"/..
|
cd "$(dirname "$0")"/..
|
||||||
|
|
||||||
# Source constants and usefull functions
|
# Source constants and useful functions
|
||||||
. bin/functions.sh
|
. bin/functions.sh
|
||||||
|
|
||||||
# Prepare the environment
|
# Prepare the environment
|
||||||
|
|
|
@ -12,7 +12,7 @@ set -eu
|
||||||
# source: https://stackoverflow.com/questions/59895/how-to-get-the-source-directory-of-a-bash-script-from-within-the-script-itself#246128
|
# source: https://stackoverflow.com/questions/59895/how-to-get-the-source-directory-of-a-bash-script-from-within-the-script-itself#246128
|
||||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
|
||||||
|
|
||||||
# Source constants and usefull functions
|
# Source constants and useful functions
|
||||||
. ${DIR}/../bin/functions.sh
|
. ${DIR}/../bin/functions.sh
|
||||||
|
|
||||||
echo "Running directly, without checking/installing dependencies"
|
echo "Running directly, without checking/installing dependencies"
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# Move to the folder where ep-lite is installed
|
# Move to the folder where ep-lite is installed
|
||||||
cd "$(dirname "$0")"/..
|
cd "$(dirname "$0")"/..
|
||||||
|
|
||||||
# Source constants and usefull functions
|
# Source constants and useful functions
|
||||||
. bin/functions.sh
|
. bin/functions.sh
|
||||||
|
|
||||||
# Is node installed?
|
# Is node installed?
|
||||||
|
|
|
@ -23,7 +23,7 @@ const util = require('util');
|
||||||
(async () => {
|
(async () => {
|
||||||
await util.promisify(npm.load)({});
|
await util.promisify(npm.load)({});
|
||||||
|
|
||||||
// intialize database
|
// initialize database
|
||||||
require('ep_etherpad-lite/node/utils/Settings');
|
require('ep_etherpad-lite/node/utils/Settings');
|
||||||
const db = require('ep_etherpad-lite/node/db/DB');
|
const db = require('ep_etherpad-lite/node/db/DB');
|
||||||
await db.init();
|
await db.init();
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
# Move to the folder where ep-lite is installed
|
# Move to the folder where ep-lite is installed
|
||||||
cd "$(dirname "$0")"/..
|
cd "$(dirname "$0")"/..
|
||||||
|
|
||||||
# Source constants and usefull functions
|
# Source constants and useful functions
|
||||||
. bin/functions.sh
|
. bin/functions.sh
|
||||||
|
|
||||||
ignoreRoot=0
|
ignoreRoot=0
|
||||||
|
|
|
@ -263,7 +263,7 @@ deletes a session
|
||||||
#### getSessionInfo(sessionID)
|
#### getSessionInfo(sessionID)
|
||||||
* API >= 1
|
* API >= 1
|
||||||
|
|
||||||
returns informations about a session
|
returns information about a session
|
||||||
|
|
||||||
*Example returns:*
|
*Example returns:*
|
||||||
* `{code: 0, message:"ok", data: {authorID: "a.s8oes9dhwrvt0zif", groupID: g.s8oes9dhwrvt0zif, validUntil: 1312201246}}`
|
* `{code: 0, message:"ok", data: {authorID: "a.s8oes9dhwrvt0zif", groupID: g.s8oes9dhwrvt0zif, validUntil: 1312201246}}`
|
||||||
|
|
|
@ -95,7 +95,7 @@ For example, if you want to replace `Chat` with `Notes`, simply add...
|
||||||
|
|
||||||
## Customization for Administrators
|
## Customization for Administrators
|
||||||
|
|
||||||
As an Etherpad administrator, it is possible to overwrite core mesages as well as messages in plugins. These include error messages, labels, and user instructions. Whereas the localization in the source code is in separate files separated by locale, an administrator's custom localizations are in `settings.json` under the `customLocaleStrings` key, with each locale separated by a sub-key underneath.
|
As an Etherpad administrator, it is possible to overwrite core messages as well as messages in plugins. These include error messages, labels, and user instructions. Whereas the localization in the source code is in separate files separated by locale, an administrator's custom localizations are in `settings.json` under the `customLocaleStrings` key, with each locale separated by a sub-key underneath.
|
||||||
|
|
||||||
For example, let's say you want to change the text on the "New Pad" button on Etherpad's home page. If you look in `locales/en.json` (or `locales/en-gb.json`) you'll see the key for this text is `"index.newPad"`. You could add the following to `settings.json`:
|
For example, let's say you want to change the text on the "New Pad" button on Etherpad's home page. If you look in `locales/en.json` (or `locales/en-gb.json`) you'll see the key for this text is `"index.newPad"`. You could add the following to `settings.json`:
|
||||||
|
|
||||||
|
|
|
@ -171,7 +171,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Database specific settings are dependent on dbType, and go in dbSettings.
|
* Database specific settings are dependent on dbType, and go in dbSettings.
|
||||||
* Remember that since Etherpad 1.6.0 you can also store these informations in
|
* Remember that since Etherpad 1.6.0 you can also store this information in
|
||||||
* credentials.json.
|
* credentials.json.
|
||||||
*
|
*
|
||||||
* For a complete list of the supported drivers, please refer to:
|
* For a complete list of the supported drivers, please refer to:
|
||||||
|
|
|
@ -162,7 +162,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Database specific settings are dependent on dbType, and go in dbSettings.
|
* Database specific settings are dependent on dbType, and go in dbSettings.
|
||||||
* Remember that since Etherpad 1.6.0 you can also store these informations in
|
* Remember that since Etherpad 1.6.0 you can also store this information in
|
||||||
* credentials.json.
|
* credentials.json.
|
||||||
*
|
*
|
||||||
* For a complete list of the supported drivers, please refer to:
|
* For a complete list of the supported drivers, please refer to:
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The DB Module provides a database initalized with the settings
|
* The DB Module provides a database initialized with the settings
|
||||||
* provided by the settings module
|
* provided by the settings module
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ const db =
|
||||||
exports.db = null;
|
exports.db = null;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initalizes the database with the settings provided by the settings module
|
* Initializes the database with the settings provided by the settings module
|
||||||
* @param {Function} callback
|
* @param {Function} callback
|
||||||
*/
|
*/
|
||||||
exports.init = async () => await new Promise((resolve, reject) => {
|
exports.init = async () => await new Promise((resolve, reject) => {
|
||||||
|
|
|
@ -139,7 +139,7 @@ exports.getPad = async (id, text) => {
|
||||||
// try to load pad
|
// try to load pad
|
||||||
pad = new Pad(id);
|
pad = new Pad(id);
|
||||||
|
|
||||||
// initalize the pad
|
// initialize the pad
|
||||||
await pad.init(text);
|
await pad.init(text);
|
||||||
globalPads.set(id, pad);
|
globalPads.set(id, pad);
|
||||||
padList.addPad(id);
|
padList.addPad(id);
|
||||||
|
|
|
@ -46,7 +46,7 @@ const rateLimiter = new RateLimiterMemory({
|
||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A associative array that saves informations about a session
|
* A associative array that saves information about a session
|
||||||
* key = sessionId
|
* key = sessionId
|
||||||
* values = padId, readonlyPadId, readonly, author, rev
|
* values = padId, readonlyPadId, readonly, author, rev
|
||||||
* padId = the real padId of the pad
|
* padId = the real padId of the pad
|
||||||
|
@ -88,7 +88,7 @@ exports.setSocketIO = (socket_io) => {
|
||||||
exports.handleConnect = (socket) => {
|
exports.handleConnect = (socket) => {
|
||||||
stats.meter('connects').mark();
|
stats.meter('connects').mark();
|
||||||
|
|
||||||
// Initalize sessioninfos for this new session
|
// Initialize sessioninfos for this new session
|
||||||
sessioninfos[socket.id] = {};
|
sessioninfos[socket.id] = {};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -141,7 +141,7 @@ const resources = {
|
||||||
// We need an operation that returns a SessionInfo so it can be picked up by the codegen :(
|
// We need an operation that returns a SessionInfo so it can be picked up by the codegen :(
|
||||||
info: {
|
info: {
|
||||||
operationId: 'getSessionInfo',
|
operationId: 'getSessionInfo',
|
||||||
summary: 'returns informations about a session',
|
summary: 'returns information about a session',
|
||||||
responseSchema: {info: {$ref: '#/components/schemas/SessionInfo'}},
|
responseSchema: {info: {$ref: '#/components/schemas/SessionInfo'}},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -88,7 +88,7 @@ exports.expressCreateServer = (hookName, args, cb) => {
|
||||||
// http://stackoverflow.com/questions/23981741/minify-socket-io-socket-io-js-with-1-0
|
// http://stackoverflow.com/questions/23981741/minify-socket-io-socket-io-js-with-1-0
|
||||||
// if(settings.minify) io.enable('browser client minification');
|
// if(settings.minify) io.enable('browser client minification');
|
||||||
|
|
||||||
// Initalize the Socket.IO Router
|
// Initialize the Socket.IO Router
|
||||||
socketIORouter.setSocketIO(io);
|
socketIORouter.setSocketIO(io);
|
||||||
socketIORouter.addComponent('pad', padMessageHandler);
|
socketIORouter.addComponent('pad', padMessageHandler);
|
||||||
|
|
||||||
|
|
|
@ -311,7 +311,7 @@ const statFile = (filename, callback, dirStatLimit) => {
|
||||||
const lastModifiedDateOfEverything = (callback) => {
|
const lastModifiedDateOfEverything = (callback) => {
|
||||||
const folders2check = [`${ROOT_DIR}js/`, `${ROOT_DIR}css/`];
|
const folders2check = [`${ROOT_DIR}js/`, `${ROOT_DIR}css/`];
|
||||||
let latestModification = 0;
|
let latestModification = 0;
|
||||||
// go trough this two folders
|
// go through this two folders
|
||||||
async.forEach(folders2check, (path, callback) => {
|
async.forEach(folders2check, (path, callback) => {
|
||||||
// read the files in the folder
|
// read the files in the folder
|
||||||
fs.readdir(path, (err, files) => {
|
fs.readdir(path, (err, files) => {
|
||||||
|
@ -320,7 +320,7 @@ const lastModifiedDateOfEverything = (callback) => {
|
||||||
// we wanna check the directory itself for changes too
|
// we wanna check the directory itself for changes too
|
||||||
files.push('.');
|
files.push('.');
|
||||||
|
|
||||||
// go trough all files in this folder
|
// go through all files in this folder
|
||||||
async.forEach(files, (filename, callback) => {
|
async.forEach(files, (filename, callback) => {
|
||||||
// get the stat data of this file
|
// get the stat data of this file
|
||||||
fs.stat(`${path}/${filename}`, (err, stats) => {
|
fs.stat(`${path}/${filename}`, (err, stats) => {
|
||||||
|
|
|
@ -294,7 +294,7 @@ const handshake = () => {
|
||||||
// set some client vars
|
// set some client vars
|
||||||
window.clientVars = obj.data;
|
window.clientVars = obj.data;
|
||||||
|
|
||||||
// initalize the pad
|
// initialize the pad
|
||||||
pad._afterHandshake();
|
pad._afterHandshake();
|
||||||
|
|
||||||
if (clientVars.readonly) {
|
if (clientVars.readonly) {
|
||||||
|
|
|
@ -42,7 +42,7 @@ function runTest(number) {
|
||||||
let fN = '/test.txt';
|
let fN = '/test.txt';
|
||||||
let cT = 'text/plain';
|
let cT = 'text/plain';
|
||||||
|
|
||||||
// To be more agressive every other test we mess with Etherpad
|
// To be more aggressive every other test we mess with Etherpad
|
||||||
// We provide a weird file name and also set a weird contentType
|
// We provide a weird file name and also set a weird contentType
|
||||||
if (number % 2 == 0) {
|
if (number % 2 == 0) {
|
||||||
fN = froth().toString();
|
fN = froth().toString();
|
||||||
|
|
|
@ -94,7 +94,7 @@ const testImports = {
|
||||||
wantText: ' word1 word2 word3\n\n',
|
wantText: ' word1 word2 word3\n\n',
|
||||||
},
|
},
|
||||||
'nonBreakingSpacePreceededBySpaceBetweenWords': {
|
'nonBreakingSpacePreceededBySpaceBetweenWords': {
|
||||||
description: 'A non-breaking space preceeded by a normal space',
|
description: 'A non-breaking space preceded by a normal space',
|
||||||
input: '<html><body> word1 word2 word3<br></body></html>',
|
input: '<html><body> word1 word2 word3<br></body></html>',
|
||||||
wantHTML: '<!DOCTYPE HTML><html><body> word1 word2 word3<br><br></body></html>',
|
wantHTML: '<!DOCTYPE HTML><html><body> word1 word2 word3<br><br></body></html>',
|
||||||
wantText: ' word1 word2 word3\n\n',
|
wantText: ' word1 word2 word3\n\n',
|
||||||
|
@ -191,7 +191,7 @@ const testImports = {
|
||||||
wantText: 'а б в г ґ д е є ж з и і ї й к л м н о\nmultiple\n lines\n in\n pre\n\nп р с т у ф х ц ч ш щ ю я ь\n\n',
|
wantText: 'а б в г ґ д е є ж з и і ї й к л м н о\nmultiple\n lines\n in\n pre\n\nп р с т у ф х ц ч ш щ ю я ь\n\n',
|
||||||
},
|
},
|
||||||
'preIntroducesASpace': {
|
'preIntroducesASpace': {
|
||||||
description: 'pre should be on a new line not preceeded by a space',
|
description: 'pre should be on a new line not preceded by a space',
|
||||||
input: `<html><body><p>
|
input: `<html><body><p>
|
||||||
1
|
1
|
||||||
<pre>preline
|
<pre>preline
|
||||||
|
|
|
@ -102,9 +102,9 @@ describe(__filename, function () {
|
||||||
-> setText(padId, "hello world")
|
-> setText(padId, "hello world")
|
||||||
-> getLastEdited(padID) -- Should be when pad was made
|
-> getLastEdited(padID) -- Should be when pad was made
|
||||||
-> getText(padId) -- Should be "hello world"
|
-> getText(padId) -- Should be "hello world"
|
||||||
-> movePad(padID, newPadId) -- Should provide consistant pad data
|
-> movePad(padID, newPadId) -- Should provide consistent pad data
|
||||||
-> getText(newPadId) -- Should be "hello world"
|
-> getText(newPadId) -- Should be "hello world"
|
||||||
-> movePad(newPadID, originalPadId) -- Should provide consistant pad data
|
-> movePad(newPadID, originalPadId) -- Should provide consistent pad data
|
||||||
-> getText(originalPadId) -- Should be "hello world"
|
-> getText(originalPadId) -- Should be "hello world"
|
||||||
-> getLastEdited(padID) -- Should not be 0
|
-> getLastEdited(padID) -- Should not be 0
|
||||||
-> appendText(padID, "hello")
|
-> appendText(padID, "hello")
|
||||||
|
|
|
@ -140,7 +140,7 @@ const tests = {
|
||||||
wantText: [' word1 word2 word3'],
|
wantText: [' word1 word2 word3'],
|
||||||
},
|
},
|
||||||
nonBreakingSpacePreceededBySpaceBetweenWords: {
|
nonBreakingSpacePreceededBySpaceBetweenWords: {
|
||||||
description: 'A non-breaking space preceeded by a normal space',
|
description: 'A non-breaking space preceded by a normal space',
|
||||||
html: '<html><body> word1 word2 word3<br></body></html>',
|
html: '<html><body> word1 word2 word3<br></body></html>',
|
||||||
wantLineAttribs: ['+l'],
|
wantLineAttribs: ['+l'],
|
||||||
wantText: [' word1 word2 word3'],
|
wantText: [' word1 word2 word3'],
|
||||||
|
@ -240,7 +240,7 @@ pre
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
preIntroducesASpace: {
|
preIntroducesASpace: {
|
||||||
description: 'pre should be on a new line not preceeded by a space',
|
description: 'pre should be on a new line not preceded by a space',
|
||||||
html: `<html><body><p>
|
html: `<html><body><p>
|
||||||
1
|
1
|
||||||
</p><pre>preline
|
</p><pre>preline
|
||||||
|
|
|
@ -170,7 +170,7 @@ $(() => {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// initalize the test helper
|
// initialize the test helper
|
||||||
helper.init(() => {
|
helper.init(() => {
|
||||||
// configure and start the test framework
|
// configure and start the test framework
|
||||||
const grep = getURLParameter('grep');
|
const grep = getURLParameter('grep');
|
||||||
|
|
Loading…
Reference in New Issue