Commit Graph

345 Commits (e7b42198b4e5c1b710350198271aae1492077694)

Author SHA1 Message Date
Jordan Harband 677c69dda0
`nvm alias`: explicitly forbid user aliases in subdirs. 2016-04-26 23:07:10 -07:00
Jordan Harband 4df2a7fca9
`nvm alias`: factor out alias printing logic to functions 2016-04-26 22:29:55 -07:00
Jordan Harband 96afff7af2
[Tests] Set up “mocks” directory, and updater script. 2016-04-19 22:49:49 -07:00
Jordan Harband ac18d01854
[Tests] update index.tab data mocks. 2016-04-18 20:43:08 -07:00
Luke Childs 5970a06b19 Add slow test to check nvm uninstall with file permission error 2016-04-18 22:08:40 +01:00
Luke Childs dff4f80f32 Add fast test to check nvm uninstall with file permission error 2016-04-18 21:17:44 +01:00
Luke Childs 6fb528f4e4 Add slow test to check nvm uninstall 2016-04-18 21:17:44 +01:00
Robson Peixoto 8fb4ee0789 Unset unnecessary environment variables 2016-03-11 14:53:36 -03:00
Jonas Dohse 7135873f80 Do not modify parameters of sourcing script in zsh
When sourcing a script without parameters in zsh the sourced scripts
gets the same parameters as the sourcing file and is able to modify
these parameters. Prevent nvm from removing all parameters of sourcing
script by processing a copy of the parameters in a function.
2016-02-15 17:49:46 +01:00
Thomas Levine 06b81f0f36 use env bash rather than /bin/bash
My bash is not installed in /bin/bash.
2016-02-14 19:34:19 +00:00
Jordan Harband 44541b416f [New] After installing, ensure that the default is set. 2016-02-04 00:26:33 -08:00
Jordan Harband 731c2f3f70 Add `nvm_get_minor_version` 2016-02-04 11:16:09 -08:00
Jordan Harband de64a2d95f [Fix] `nvm_format_version` should only return 3 version groups 2016-02-06 22:34:49 -08:00
Jordan Harband 4fcf37fa29 [New] support `--no-use` on sourcing, in supported shells.
Fixes #972.
2016-01-20 12:50:45 -08:00
Matthew Campbell 4f4ff208eb Improve error messages 2016-01-02 11:16:50 -05:00
Matthew Campbell 78fee866f5 Remove usage of declare 2016-01-01 22:33:45 -05:00
Matthew Campbell 8dc53d4dd5 Refactor and fix nvm_detect_profile tests
close #833
close #957
2016-01-01 20:45:36 -05:00
Matthew Campbell 645bda4987 Addresses comments to close #833 2016-01-01 14:09:35 -05:00
David Mankin 918fcb4bd2 PROFILE env var should override detected profile
Add tests for PROFILE overriding detected files
2016-01-01 14:00:36 -05:00
David Mankin cb138a1815 Fix error messages in tests 2016-01-01 13:34:34 -05:00
Jordan Harband f279837d5c [Refactor] fix some bugs in `nvm_is_natural_num`, add unit tests. 2015-12-27 13:15:53 -08:00
Jordan Harband 32d184099c [Tests] fix cleanup in nvm_supports_xz unit test 2015-12-27 13:18:28 -08:00
Jordan Harband 31457fec3f [Refactor] `nvm install`: make `-j` and `-s` order-independent. 2015-12-27 12:52:01 -08:00
Peter Dave Hello cfccf03b3d add test for install from source 2015-12-28 01:37:57 +08:00
Keiichiro Ui b76d43e9f8 Fix `nvm-exec` for the commands includes white-spaces 2015-12-24 19:48:35 +09:00
Peter Dave Hello ec9232bb06 update nodejs.org-dist-index.tab and related test
Src: https://iojs.org/dist/index.tab
2015-12-21 20:50:54 +08:00
Jordan Harband 149e5d483d Use real snapshot of iojs.org data for `nvm_ls_remote_iojs` tests. 2015-10-17 12:05:44 -07:00
Jordan Harband 114f27a075 Use `nvm_ls_remote_index_tab` for listing nodejs.org versions.
Enabled by https://github.com/nodejs/build/issues/218, unblocks #870.
2015-10-17 10:34:42 -07:00
Johan Bergström b8e4917646 Use `xz` tarballs if available
Saves us ~25% bandwidth while downloading the payload. This only applies
to hosts that has the `xz` binary and attempts to use iojs 2.3.2 or newer
(this includes nodejs 4.0+ as well). Older targets are unaffected.
2015-10-08 16:45:26 +11:00
Jordan Harband cb033adc6f nvm run: use common code path for "ensure version installed" 2015-10-07 18:08:48 -07:00
Julien Gilli 2d692d9d78 Fix support for installing node on SmartOS
uname on SmartOS cannot be used to guess if 32 and/or 64 bits binaries
are supported, and its output is different than other uname commands on
other operating systems.

This change uses pkg_info to determine what types of binaries pkgsrc
would install. If pkg_info fails to run or is not present, this change
falls back to using isainfo -n, which determines what the kernel
supports.

It allows users to install node binaries on Solaris derivatives. io.js
can also be installed on Solaris derivatives starting with version
v3.3.1.
2015-09-30 22:10:29 -07:00
Jordan Harband 8ee6f30352 Add support for `$NPM_CONFIG_PREFIX` to `nvm_die_on_prefix`.
Fixes #606.
2015-09-23 06:25:55 -07:00
Jordan Harband 1458de7293 Ensure that if `npm config get prefix` is set to something outside `nvm`, that `nvm use` refuses to work.
Fixes #606.
2015-09-21 04:47:37 -07:00
Jordan Harband a1def71062 Add `nvm_die_on_prefix` 2015-09-21 04:47:30 -07:00
Jordan Harband 643365a948 Allow `--silent` option to `nvm use` to be in any position. 2015-09-23 04:51:55 -07:00
Jordan Harband e3528b0d9e Fix `nvm_ensure_version_installed iojs` to not print an empty string for the version. 2015-09-11 10:42:47 +09:00
Jordan Harband f34fef96d8 Add `nvm_is_merged_node_version` 2015-08-28 00:51:18 -07:00
Jordan Harband 8746d63041 Ensure after node v4.0 is released, `stable` will simply refer to the latest node. 2015-08-22 09:45:49 -07:00
Cristian Consonni c37dbbecb4 Detect shell type from $SHELL variable instead of .$SHELLrc files 2015-07-19 02:03:15 +02:00
Alan Quach 657192dd27 Adding unit tests for --silent 2015-07-10 10:27:35 +10:00
Jordan Harband 7bce6c6c68 `nvm reinstall-packages` should install the same version it had before. 2015-06-29 00:04:59 -07:00
lukechilds c1ef31df53 Remove unnecessary nvm use 2015-06-13 19:38:28 +01:00
lukechilds 3b67b3b9bb Use node instead of nvm run and check v8_use_snapshot in node rather than shell 2015-06-13 18:52:54 +01:00
lukechilds 83466446ce Added newline to end of ARM test 2015-06-13 16:10:49 +01:00
lukechilds 3214caa4ec Adding installation test for disabling V8 snapshot on ARM 2015-06-13 15:58:27 +01:00
Jordan Harband fe044c5e3b `spawn-sync` now dedupes to the top level with this group of packages. 2015-06-07 01:10:55 -07:00
Jordan Harband 472ba5fc46 Make sure sourcing `nvm.sh` on shells that don't support source options doesn't exit nonzero.
Fixes #721
2015-05-22 00:15:43 -07:00
Jordan Harband a4f89c6223 Make sure to ignore `~/.curlrc` if it exists. 2015-05-01 02:00:49 -07:00
Jordan Harband bb2fe618cb The install script only runs in bash. 2015-04-27 16:55:21 -07:00
Jordan Harband cbf0f12aac Create `nvm_print_npm_version` and use that when printing the `npm` version. 2015-04-12 10:59:17 -07:00
Andrew Crites caa69bc500 npm version: shell compatibility, test update
* Update test string that checks printed node version to pass with additional npm version display
* Remove echo -n for compatibility with shells that do not support it
2015-04-09 02:12:35 -04:00
Jordan Harband c34502ebc2 `nvm_num_version_groups` should report 0 when given just a v or a . 2015-04-06 11:10:43 -07:00
Jordan Harband 3d764e6833 Add `nvm_ensure_default_set` 2015-04-05 16:49:29 -07:00
Jordan Harband 82393f5b36 Making sure this test passes whether a system node is installed or not. 2015-04-04 23:49:43 -07:00
HE Shi-Jun 3d69cf7437 update testcase 2015-03-17 15:54:50 +08:00
HE Shi-Jun 14b23bfa95 fix reinstall-packages test 2015-03-15 06:21:35 +08:00
Jordan Harband 2b63f37f8d Make `nvm_resolve_local_alias` not return `N/A` - that should be done as shallowly as possible. 2015-03-14 10:55:31 -07:00
Jordan Harband 0d9329435c Create `nvm_ensure_version_installed` 2015-02-22 02:26:27 -08:00
Jordan Harband a0d04d0b6b Preventing an unalias error in tests. 2015-02-22 02:21:00 -08:00
Jordan Harband 7d22e0c458 Separate `nvm_resolve_alias`'s `nvm_version` behavior into `nvm_resolve_local_alias`. 2015-02-21 16:10:42 -08:00
Jordan Harband 12ca8f2607 Add `nvm_is_alias` unit tests.
Fixes 670.
2015-02-20 13:59:08 -08:00
Jordan Harband 3190effedd Add support for `node` and `iojs` implicit aliases. 2015-02-10 23:43:47 -08:00
Jordan Harband f0d81e2d33 Revert "install: adding some debugging output"
This reverts commit c8efe3d28a.

Conflicts:
	install.sh
2015-02-09 17:16:56 -08:00
elliottcable a216f56443 tests: fail install_script test if npm can't install package 2015-02-07 20:53:53 -06:00
elliottcable c8efe3d28a install: adding some debugging output 2015-02-07 20:50:10 -06:00
elliottcable 0717d5f995 install: some tweaks and clean-up 2015-02-07 17:17:43 -06:00
elliottcable 6cfc309336 install: Pass global-module check in the absence of npm 2015-02-07 17:17:43 -06:00
elliottcable 4ba7ee5797 install: Show a warning when global packages exist 2015-02-07 17:17:43 -06:00
Jordan Harband be56ff3b2e Make sure multiple `nvm run` arguments get passed through to node/iojs properly.
Fixes #641.
2015-02-07 10:09:37 -08:00
Jordan Harband 2116d2ff91 Filter out the io.js version dir from nvm_ls output.
Fixes #642.
2015-02-02 17:41:04 -08:00
Jordan Harband 0b4c1e14cf Ensure that `nvm run 0.12 --version` errors out sensibly when 0.12 isn't installed. 2015-02-01 13:02:46 -08:00
Jordan Harband e1b7496cf0 Add nvm_is_valid_version 2015-02-01 13:01:40 -08:00
Jordan Harband a6819b3018 Fix `nvm ls v1.0.3` so that it locates `iojs-v1.0.3`.
Also fix `nvm uninstall v1.0.3` so it won't uninstall it if it's the current version.

node versions will still take priority if there's ever a version overlap.
2015-01-25 12:31:19 -08:00
Jordan Harband 24c60e4e51 Fix a bug in nvm_remote_version that was breaking `nvm install stable`/`nvm install unstable`.
Fixes #630.
2015-01-23 12:09:13 -08:00
Tobias Witt cba5094652
Provide test case for testing the `noclobber` option from zsh
This tests the absence of the bug from #615
2015-01-23 09:29:13 +01:00
Jordan Harband 7243bd77d3 Refactor and create `nvm_remote_versions` and `nvm_remote_version`.
Fixes #620 - an oh-my-zsh issue where `nvm install v1` didn't work.
2015-01-21 20:48:25 -08:00
Jordan Harband 6cac732141 Including this omitted test. 2015-01-20 23:46:29 -08:00
Jordan Harband f1f11e3b7a Ensure `nvm_version node` and `nvm_version node-` report the latest stable node version. 2015-01-19 10:05:36 -08:00
Jordan Harband dbeeb683da Fix `nvm_strip_path` for >= v0.12.0 node, and all io.js versions. 2015-01-18 23:55:26 -08:00
Jordan Harband 39a75e616d Add support for `nvm use node`, `nvm use iojs`, `nvm ls node`, and `nvm ls iojs`
Also add `nvm_version node` and `nvm_version iojs` support.
2015-01-18 20:45:02 -06:00
Jordan Harband 3cf68dc18d Add `nvm_has_system_iojs` 2015-01-18 20:55:48 -06:00
Jordan Harband 952096d034 Add iojs support to "install" 2015-01-13 17:52:18 -08:00
Jordan Harband 58ab2c3128 Add iojs support to `nvm_remote_version` 2015-01-13 02:22:22 -08:00
Jordan Harband d70f0357f5 Add `nvm_ls_remote_iojs` and `nvm ls-remote` support for iojs. 2015-01-13 02:14:29 -08:00
Jordan Harband 5c336a7ccb Make `nvm_print_versions` support iojs via `nvm_version_path`. 2015-01-13 00:49:31 -08:00
Jordan Harband f661617f1c Make `nvm_ls foo` work with `iojs`-prefixed version strings. 2015-01-12 18:16:11 -08:00
Jordan Harband d28703f9e0 Update `nvm_ensure_version_prefix` to support `iojs`-prefixed version strings. 2015-01-12 18:15:51 -08:00
Jordan Harband b7983842aa Add `nvm_add_iojs_prefix` 2015-01-13 00:57:32 -08:00
Jordan Harband c12104cecd Add `nvm_strip_iojs_prefix` 2015-01-12 18:15:25 -08:00
Jordan Harband 98e0655198 Add `nvm_is_iojs_version` 2015-01-12 18:15:15 -08:00
Jordan Harband c46748a379 Add `nvm_node_prefix` 2015-01-13 14:16:35 -08:00
Jordan Harband 8be97c8abb Add `nvm_iojs_prefix` 2015-01-12 18:15:04 -08:00
Jordan Harband 3fa11c35cb Add io.js support to `nvm_version_dir` 2015-01-12 00:33:13 -08:00
Jordan Harband 654c37bc29 Make sure to add a test for implicit source installation. 2015-01-18 12:11:21 -06:00
Jordan Harband 8ae7b33632 Improving failure messages on this test 2015-01-17 11:52:06 -06:00
Jordan Harband eb8c3414dd Move `nvm_get_latest` tests from "installation" to "slow" 2015-01-17 11:52:06 -06:00
Jordan Harband 9615672243 Move node-specific installation tests to their own directory. 2015-01-17 11:52:06 -06:00
Jordan Harband 78c1f2cf9d Split up this `nvm current` and `node 0.6.21-pre` test into separate tests. 2015-01-16 15:36:32 -06:00
Jordan Harband 0ad5a450fe Put node versions >= 0.12 in `versions/node` instead of just `versions` 2015-01-14 12:23:06 -08:00
Jordan Harband d5e21be164 Add `nvm_ensure_version_prefix` unit tests. 2015-01-13 23:51:54 -08:00
Jordan Harband 7807a9f09e Consolidate "alias" directory to a method. 2015-01-12 01:27:53 -08:00
Jordan Harband c6489440dc Add nvm_ls_current test for #605 and `zsh`. 2015-01-01 23:31:55 -08:00
niris a26007ec0d fix test suit 2015-01-02 12:51:59 +08:00
Jordan Harband 9a4e9060d8 Don't bother testing --install option on source, or supporting it, unless the shell supports passing options upon sourcing. 2014-12-26 13:33:33 -08:00
Jordan Harband 3df0caefa5 Support `--install` option upon sourcing. 2014-12-26 12:19:35 -08:00
Jordan Harband 274369dc40 Remove trailing whitespace 2014-12-22 23:08:03 -08:00
Jordan Harband 25c61594fe Tests for `nvm_get_latest` 2014-12-21 18:13:59 -08:00
Jordan Harband 2d78d69d4c Properly outputting the version when nvm_version_path outputs the new "versions" subdirectory. 2014-12-19 17:12:38 -08:00
Daniel Bretoi 99ca0de18f revert echoing path. make tests even better 2014-12-19 11:31:46 -08:00
Jordan Harband 74b36b09ff Merge pull request #583 from danielb2/which
Adds `nvm which`
2014-12-17 01:26:50 -08:00
Jordan Harband 3bd148056e Fixing deactivate tests.
Fixes #357.
2014-12-03 00:04:43 -08:00
Daniel Bretoi 7805492bda merge with master 2014-12-02 13:01:37 -08:00
Daniel Bretoi a1c0c34088 fix to proper echo of nvm which. Checkin test which had been left out 2014-12-02 12:58:07 -08:00
Jordan Harband 383f39ab61 Global modules should not be requireable, and `npm root -g` should not be in `$NODE_PATH`.
Fixes #586.
2014-11-29 11:22:10 -08:00
Jordan Harband e728577627 Rename `nvm copy-packages` to `nvm reinstall-packages`, and `--copy-packages-from` install option to `--reinstall-packages-from`
For #341. `nvm copy-packages` and install option `--copy-packages-from` will continue to be supported for for at least a full minor release version.
2014-11-22 13:22:24 -08:00
Jordan Harband 689c52c90d Install nvm-exec as well when installing via script.
Fixes #553.
2014-11-22 10:34:20 -08:00
Daniel Bretoi 8b25457b74 remove redundant lines from test file 2014-11-21 17:53:08 -08:00
Daniel Bretoi ee520abf78 adding some tests for nvm which 2014-11-21 17:51:49 -08:00
Xavier Cambar 516e553093 Refactors NVM_SOURCE 2014-11-06 22:35:24 +01:00
Xavier Cambar b9f15b0ab0 Tests for PROFILE detection 2014-10-29 18:50:04 +01:00
Jordan Harband d30c0fe146 Cleaning up install_script tests. 2014-10-28 13:47:21 -07:00
Xavier Cambar 3cdec8e875 Testable install script
* wraps main code into a function
* EnvVar-based install start
* Clean environment after install
2014-10-28 11:44:01 +01:00
Jordan Harband cec1c38a84 Move sourcing tests to a separate test suite. 2014-10-26 23:40:32 -07:00
Jordan Harband 2d529cc8b7 Prevent attempts to `nvm use` a circular reference. 2014-10-22 18:15:21 -07:00
Jordan Harband 9b91734f0b Show "∞" when there's a circular alias reference. 2014-10-22 18:15:21 -07:00
Jordan Harband 0f5997f754 Clean up from some more tests 2014-10-22 18:15:21 -07:00
Jordan Harband 7a339bdd3c Adding nvm_resolve_alias 2014-10-22 01:30:40 -07:00
Jordan Harband 08aa09e664 Prevent test pollution. 2014-10-22 01:26:39 -07:00
Jordan Harband 8284cd0f81 Ensuring that there's a stable and unstable version "available" for this test. 2014-10-21 01:02:59 -07:00
Jordan Harband ca89cceb99 Default $NVM_SYMLINK_CURRENT to off (create a "current" symlink on `use`).
Fixes #499.
2014-10-14 18:14:12 -07:00
Jordan Harband 7b6e06e556 Add tests for "`nvm use default` on source" behavior. 2014-10-13 23:55:58 -07:00
Jordan Harband d49443e1fb Properly handle nvm_print_implicit_alias splitting in zsh.
Hopefully fixes #546.
2014-10-11 00:41:16 -04:00
Jordan Harband 8f76b35370 Fix `nvm alias` tests to have both stable and unstable mocks. 2014-10-10 23:46:25 -04:00
Jordan Harband 6c89e96f67 Ensure that we don't try to uninstall the current version of node in test teardowns. 2014-10-09 00:19:14 -07:00
Jordan Harband 1931f7f3f8 Remove '-e' option from installation tests, in favor of explicit failures. 2014-10-03 03:03:48 -07:00
Jordan Harband 66b214651f Add `nvm_alias` and unit tests. 2014-09-30 00:23:37 -07:00
Jordan Harband 4cdf356cdc Support `nvm ls-remote stable` and `nvm ls-remote unstable` 2014-09-29 00:10:06 -07:00
Jordan Harband c918e570b6 Add support for `nvm ls stable` and `nvm ls unstable` 2014-09-29 00:09:48 -07:00
Jordan Harband 5dc7af6285 Make `nvm alias` list implicit "stable" and "unstable" aliases when they're not already aliases. 2014-09-29 00:09:17 -07:00
Jordan Harband f9565ff675 Adding nvm_print_implicit_alias success tests 2014-09-29 00:08:55 -07:00
Jordan Harband cea0e88489 Adding nvm_print_implicit_alias error tests. 2014-09-28 22:43:46 -07:00
Jordan Harband fcdd1ef431 Add nvm_validate_implicit_alias 2014-09-28 22:36:02 -07:00
Jordan Harband fda05fb64b Remove trailing whitespace. 2014-09-29 14:26:19 -07:00
Jordan Harband 5706aef3d0 nvm_format_version: add unit tests. 2014-09-29 01:34:50 -07:00
Jordan Harband cd4fc8fb2c Adding unit tests for `nvm_ls_remote`
`nvm_download` is stubbed, to avoid making network calls.
2014-09-28 22:00:20 -07:00
Jordan Harband 050a2ee9d3 nvm_remote_version: add unit tests
`nvm_ls_remote` is stubbed out to avoid making network calls here.
2014-09-28 18:12:25 -07:00
Jordan Harband be605cb12b Adding a failing test: `nvm ls 0.0.x` includes `v0.0.xy` 2014-09-28 10:18:00 -07:00
Jordan Harband 3c66c20570 Improving "nvm alias" tests to test for all cases. 2014-09-28 10:07:50 -07:00
Jordan Harband 59bfdb9863 Making sure fast alias tests do their own teardown. 2014-09-28 09:54:35 -07:00
Jordan Harband 486d14f5f8 Copy packages when applicable, whenever `nvm install` would normally `nvm use` and exit. 2014-09-21 18:25:15 -07:00