You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ra...@apache.org on 2021/09/26 12:37:36 UTC
[cordova-lib] branch master updated: fix: Platforms restored from
both dev and normal dependencies. (#874)
This is an automated email from the ASF dual-hosted git repository.
raphinesse pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cordova-lib.git
The following commit(s) were added to refs/heads/master by this push:
new 33ce4fe fix: Platforms restored from both dev and normal dependencies. (#874)
33ce4fe is described below
commit 33ce4fe787f4ea1508f83787b2d50083c2ea0154
Author: Aidanas Tamasauskas <ai...@gmail.com>
AuthorDate: Sun Sep 26 13:37:29 2021 +0100
fix: Platforms restored from both dev and normal dependencies. (#874)
* fix: Check for platform version in both normal and dev dependencies within package.json file.
* fix: added unit test for package.json devDependencies (#866)
Co-authored-by: Aidanas Tamasauskas <ai...@nutshellapps.co.uk>
Co-authored-by: Richard Li <li...@gmail.com>
---
spec/cordova/platform/addHelper.spec.js | 15 +++++++++++++++
src/cordova/platform/addHelper.js | 4 +++-
2 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/spec/cordova/platform/addHelper.spec.js b/spec/cordova/platform/addHelper.spec.js
index 81cbe6f..1194bc0 100644
--- a/spec/cordova/platform/addHelper.spec.js
+++ b/spec/cordova/platform/addHelper.spec.js
@@ -247,6 +247,21 @@ describe('cordova/platform/addHelper', function () {
});
});
+ it('should use pkgJson version devDependencies, if dependencies are nonempty but do not include the platform', function () {
+ package_json_mock.dependencies.lorem = {}; // Add some item to dependencies so it's defined but nonempty
+ package_json_mock.cordova = { platforms: ['ios'] };
+ package_json_mock.devDependencies.ios = {};
+ cordova_util.requireNoCache.and.returnValue(package_json_mock);
+ fs.existsSync.and.callFake(function (filePath) {
+ return path.basename(filePath) === 'package.json';
+ });
+ fs.readFileSync.and.returnValue('{}');
+ return platform_addHelper('add', hooks_mock, projectRoot, ['ios'], { save: true, restoring: true }).then(function () {
+ expect(platform_addHelper.getVersionFromConfigFile).not.toHaveBeenCalled();
+ expect(fs.writeFileSync).toHaveBeenCalled();
+ });
+ });
+
it('should only write the package.json file if it was modified', function () {
package_json_mock.cordova = { platforms: ['ios'] };
cordova_util.requireNoCache.and.returnValue(package_json_mock);
diff --git a/src/cordova/platform/addHelper.js b/src/cordova/platform/addHelper.js
index dfda0e2..5c5d4c2 100644
--- a/src/cordova/platform/addHelper.js
+++ b/src/cordova/platform/addHelper.js
@@ -99,7 +99,9 @@ function addHelper (cmd, hooksRunner, projectRoot, targets, opts) {
} else if (pkgJson.dependencies[platform]) {
spec = pkgJson.dependencies[platform];
}
- } else if (spec === undefined && pkgJson && pkgJson.devDependencies && cmd === 'add') {
+ }
+
+ if (spec === undefined && pkgJson && pkgJson.devDependencies && cmd === 'add') {
if (pkgJson.devDependencies['cordova-' + platform]) {
spec = pkgJson.devDependencies['cordova-' + platform];
} else if (pkgJson.devDependencies[platform]) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org