diff --git a/metamorpov-test.js b/metamorpov-test.js index e4e2d93..cd5ac4b 100755 --- a/metamorpov-test.js +++ b/metamorpov-test.js @@ -57,9 +57,6 @@ const options = { } } -/* Invalid input */ -metamorpov.translate({}, options.firstPerson); - /* vrb, vrn */ assert.equal(metamorpov.translate("vrb/be/", options.firstPerson), "was"); // I was assert.equal(metamorpov.translate("vrb/be/", options.secondPerson), "were"); // You were @@ -188,6 +185,7 @@ assert.equal(metamorpov.translate("cut/only last 1/word/", options.firstPerson), assert.equal(metamorpov.translate("cut/only last 2/word/", options.firstPerson), "rd"); assert.equal(metamorpov.translate("cut/only last 3/word/", options.firstPerson), "ord"); assert.equal(metamorpov.translate("cut/only last 4/word/", options.firstPerson), "ord"); // Cut at least one letter +assert.equal(metamorpov.translate("cut/off first 1/cut/off last 1/word//", options.firstPerson), "or"); // Cut twice assert.equal(metamorpov.translate("cut/only first 1/word/oah", options.firstPerson), "woah"); // Should continue after replacing assert.equal(metamorpov.translate("cut/off last 1/ab/ cut/only last 2/abc/", options.firstPerson), "a bc"); // Should replace both diff --git a/metamorpov.js b/metamorpov.js index 953c0da..04dbe5a 100644 --- a/metamorpov.js +++ b/metamorpov.js @@ -434,7 +434,7 @@ function cut(request) { /cut\/(?off|only) /, /(?first|last) /, /(?[1-9][0-9]*)\//, - /(?[^\/]+)\// + /(?(?!cut\/)[^\/]+)\// ].map(r => r.source).join(''), 'i'); request.loop(request, { regexp: regexp diff --git a/package-lock.json b/package-lock.json index 6437e75..757cd58 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,7 +8,7 @@ "name": "metamorpov", "version": "1.0.0", "license": "GPL-3.0-or-later", - "devDependencies": { + "dependencies": { "english-verbs-gerunds": "^3.4.0", "english-verbs-helper": "^3.4.0", "english-verbs-irregular": "^3.4.0", @@ -19,14 +19,12 @@ "version": "3.4.0", "resolved": "https://registry.npmjs.org/english-verbs-gerunds/-/english-verbs-gerunds-3.4.0.tgz", "integrity": "sha512-sc6Zgm7Du+KKIloln0GzcT/fZxIqJBXlfU9B8DLi1bPmKK/hVK3HsRWywNaAGwHU4+SpZ7ADvLvoXlMI2PkwUw==", - "dev": true, "license": "Apache-2.0" }, "node_modules/english-verbs-helper": { "version": "3.4.0", "resolved": "https://registry.npmjs.org/english-verbs-helper/-/english-verbs-helper-3.4.0.tgz", "integrity": "sha512-yP1msoIysGuUolx1s3K7dHj5ASqitjHN3PAe3rrF7/mbcHqg1VaLyGVII7Onkv3AHnrPqMT6ITiPtd2rccE7eg==", - "dev": true, "license": "Apache-2.0", "funding": { "type": "patreon", @@ -37,14 +35,12 @@ "version": "3.4.0", "resolved": "https://registry.npmjs.org/english-verbs-irregular/-/english-verbs-irregular-3.4.0.tgz", "integrity": "sha512-Rk0fgdzJ0oqpERPHr6QV2Dp8nnNKO3Si92RWYCe7fgxks8+yEOtUDu0ZBm3AJ6Ccqaa5ZtVh/pndUYdbKkr7xg==", - "dev": true, "license": "Apache-2.0" }, "node_modules/indefinite": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/indefinite/-/indefinite-2.5.1.tgz", "integrity": "sha512-Ul0hCdnSjuFDEloYWeozTaEfljbz+0q+u4HsHns2dOk2DlhGlbRMGFtNcIL+Ve7sZYeIOTOAKA0usAXBGHpNDg==", - "dev": true, "license": "MIT", "engines": { "node": ">=6.0.0"