Commit Graph
98 Commits
Author SHA1 Message Date
Richard Kuhnt ac3ee76672 appveyor: require BuildHelpers version 2.0.0 2018-09-18 18:47:42 +02:00
Richard Kuhnt c0295f0ae0 appveyor: Run tests for PowerShell 5 and 6 (#2603)
- Adds `!linter` commit flag to skip PSScriptAnalyzer
- Adds `!manifests` commit flag to skip manifest validation
- Skips manifest validation if no JSON has changed
- Skips tests and linting if no PowerShell script has changed
- Validates only manifests that changed
- Validates all manifests if `schema.json` changed
2018-09-18 18:37:43 +02:00
Leon Yu 9bc7d5f8b3 Fix .ps1 shim parsing logic due to prior PR (#2564)
Due to my prior PR #2562 which changed the content of .ps1 shims, the code that attempts to warn about shims being overwritten no longer detects app name correctly. This is to correct that.
2018-09-07 16:25:37 +02:00
Richard Kuhnt 4ed6265ed7 Add some tests for scoop config 2018-08-07 20:11:38 +02:00
Richard Kuhnt ff9c0c3daf parse_app(): fix for relative paths 2018-05-07 14:18:40 +02:00
Richard Kuhnt 70f64c8f4b Refactor app() to parse_app() for better "bucket/app@version" handling (#2234)
It now parses these app names:
- php-bucket/php71-amqp@1.8.0
- php-bucket/php71-amqp
- php71-amqp@1.8.0
- php71-amqp@1.9.0-rc2

Removed:
- is_app_with_specific_version()
- get_app_with_version()
2018-05-04 21:51:43 +02:00
Chawye Hsu c3df0f8398 Expose bucketdir variable in manifest test script (#2182) 2018-04-08 01:19:48 +02:00
Leon Yu 71da515b82 Fix some tests on linux (#2153)
* fix bom reading test in PowerShell 6

* Use join-path to fix test on Linux
2018-04-04 18:14:27 +02:00
Chawye Hsu 731247876d [Pending] Finally we add the code linting and its tests! (#2108)
* Lint: PSPossibleIncorrectComparisonWithNull

* Lint: PSUseLiteralInitializerForHashtable

* Lint: PSUseBOMForUnicodeEncodedFile

* Lint: PSUseApprovedVerbs

* Lint: PSAvoidGlobalVars

* Lint: PSAvoidUsingEmptyCatchBlock

* Lint: PSUseShouldProcessForStateChangingFunctions

* Lint helper: Add PSScriptAnalyzer integration for vscode

* Fix lint: PSUseBOMForUnicodeEncodedFile

* Tests: ignore previous TestResults.xml

* Tests: add PowerShell script linting into tests!

* Add PSScriptAnalyzer into appveyor ci

* Update Scoop-Linting.Tests.ps1
2018-03-13 14:26:55 +01:00
Chawye Hsu e1bb1e91d0 Lint: PSAvoidUsingCmdletAliases (#2075) 2018-03-03 18:41:19 +01:00
Richard Kuhnt f0a15886f2 Update validator.exe and shim.exe (#2024)
* Update Newtonsoft.Json and improve validator build process

* Improve shimexe build process and create deterministic builds
2018-02-20 18:48:02 +01:00
Richard Kuhnt 36dc7a880c Allow more architecture naming conventions for --arch parameters
closes #1908
2017-12-15 17:05:12 +01:00
Richard Kuhnt da7d61f3e3 Use Get-FileHash instead of System.Security.Cryptography.HashAlgorithm (#1725)
* Use Get-FileHash instead of System.Security.Cryptography.HashAlgorithm if available

This satisfies these two cases:
* PowerShell 3 doesn't support Get-FileHash
* PowerShell 6 doesn't support HashAlgorithm yet

* Add tests for compute_hash() function
2017-12-12 13:12:48 +01:00
Richard Kuhnt 872517b898 Update tests to work with pester version 4.* (#1711)
* Remove custom choco options
* Use Install-Module to install Pester
2017-11-27 15:27:38 +01:00
Richard Kuhnt 54ec3365f2 Don't set $env:TEMP on unix, instead use /tmp as workingdir for tests 2017-05-31 01:35:51 +02:00
Richard Kuhnt 8a746c8678 Ignore .DS_Store in tests 2017-05-31 01:02:48 +02:00
Richard Kuhnt 641dd70011 Fix unzip_old test 2017-05-31 00:50:15 +02:00
Richard Kuhnt f982068d4f Small path fixes to make manifest tests pass on unix 2017-05-30 22:12:50 +02:00
Richard Kuhnt f737315e73 Merge pull request #1517 from lukesampson/unix-compatible
[WIP] Add Unix compatibility (for maintenance jobs and manifest testing)
2017-05-30 21:59:15 +02:00
Luke Sampson 887f041fc7 Extract to _tmp instead of _scoop_extract to conserve 10 more characters in path. 2017-05-29 17:59:09 +10:00
Richard Kuhnt 24fd3a3c7e Move unix compatible functions to unix.ps1
- Change helper functions to snake_case
2017-05-28 13:59:42 +02:00
Richard Kuhnt 4f4e5d18d7 Skip tests heavily relying on robocopy and windows paths 2017-05-27 17:18:14 +02:00
Richard Kuhnt 5b4b2fce99 Some path fixes for unix 2017-05-27 17:12:37 +02:00
Richard Kuhnt 59139bae04 Use remove-item/copy-item instead of rm/cp to resolve unix conflicts
Powershell aliases for rm/cp will not work, because the system commands are used
2017-05-27 17:12:12 +02:00
Richard Kuhnt 139813a8f5 Tests: handle JSON.NET schema validation limit exceeded.
Copied from extras bucket
2017-05-27 16:51:02 +02:00
Richard Kuhnt a9dfea5cf0 Fix manifest tests for pester v4 2017-05-27 16:26:58 +02:00
Richard Kuhnt 404f9be2f2 Fix repo_dir not being set correctly 2017-05-07 20:52:58 +02:00
Rémy 0a21edd0d5 add tests for some version edge cases 2017-04-03 19:41:52 +02:00
Rémy bf23c300ae add tests for shim_def 2017-04-03 19:12:21 +02:00
Rémy 822239335b add tests for is_in_dir 2017-04-03 19:06:49 +02:00
Rémy 303c1e43f2 add tests for various file name functions 2017-04-03 18:53:14 +02:00
Rémy a5b6d86134 add tests for ensure_architecture 2017-04-03 18:46:13 +02:00
Rémy 0fff49f89e create test file for install / add test for env_add|rm_path 2017-04-03 18:40:06 +02:00
Rémy 807fcb0ebd fix tests 2017-03-30 00:42:19 +02:00
Rémy 357b33ddfe persist file support 2017-03-25 16:28:06 +01:00
Rémy c9f4ddf219 implement persist definition and tests 2017-03-25 16:28:05 +01:00
Rémy 9388c90232 remove travel_dir partial implementation 2017-03-25 16:28:05 +01:00
Luke Sampson 0aa2cd1532 Throw error if null file encountered while testing newlines (see #1377) 2017-03-17 08:26:31 +11:00
Richard Kuhnt 2e5bf31bde Add testing for valid hashs 2017-03-08 17:47:47 +01:00
Luke Sampson 24127669bd Handle dashed version components (fixes #1344) 2017-02-21 22:02:47 +11:00
Richard Kuhnt 1feda7a088 [WIP] Validate manifests against JSON Schema in CI Tests (#1331)
* Add suggest and psmodule to schema.json
* Fix required fields in schema.json
* Improve url validation in schema.json
* Add validator.exe as a single file validation tool
* Add Scoop.Validator Lib for use in Manifest-Tests
* Add buildscript for Scoop.Validator and validator.exe
* Exclude .dll and packages folder from Project-Tests
* Validate manifests against JSON Schema in CI Tests
* Complete JSON Schema Validation
* Dlls shouldn't be treated as text
2017-02-17 19:00:56 +01:00
Luke Sampson 1c173bc56d Use sentence case for UI messages. 2017-02-13 20:20:41 +11:00
Richard Kuhnt 11d2d07422 Improve manifest validation tests for url and extract_dir
Manifest validation should fail if there are untranslated variables left over in url or extract_dir
2017-02-03 00:36:18 +01:00
Luke Sampson 68b6e33d9e fix encoding 2016-04-19 14:42:49 +10:00
Simon Hartcher 3bcdce409b Support for scoop install <bucket>/<app>
- TODO: support install of same name apps from different buckets?
2016-01-24 22:35:43 +11:00
Roy Ivy III b8c6787272 improve project "style contraints" testing
* more minor refactoring
2015-12-19 14:38:37 -06:00
Roy Ivy III 8f9695b411 improve project "style contraints" testing
* includes code refactoring/improvements and improved test descriptions
2015-12-19 11:17:57 -06:00
Simon Hartcher b9e5238546 Merge pull request #477 from rivy/fix-tests-core-Win10
fix Scoop-Core tests for Win10 (#hack)
2015-09-01 20:46:02 +10:00
Roy Ivy III bfb94972ae Merge branch 'upstream' into dev-whitespace
Conflicts:
	test/00-Project.Tests.ps1
2015-08-31 17:29:33 -07:00
Roy Ivy III 80ddbc49cb update test comments and add attribution 2015-08-28 17:42:17 -05:00