aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/test
AgeCommit message (Collapse)Author
2013-09-17Make spec-scoped resources override top-level resourcesJack Nagel
2013-09-17SoftwareSpec tests are now Resource testsJack Nagel
2013-09-14Copies of BuildOptions should not share underlying collectionsJack Nagel
2013-09-14Tear down the cache after installation testsJack Nagel
2013-09-14Move SoftwareSpec to a separate fileJack Nagel
2013-09-13Stop exposing the download strategy from FormulaJack Nagel
2013-09-13Stop mutating dependency specificationsJack Nagel
2013-09-10Fix CompilerSelector test for llvmMisty De Meo
Update test to reflect that llvm-gcc should take precedence over non-Apple GCC.
2013-09-07Optionally use git to keep brew etc versioned.Mike McQuaid
Still in alpha state. Handles defaults and merging changes with new versions. Enable by setting the HOMEBREW_GIT_ETC environment variable. Closes Homebrew/homebrew#15751. Closes Homebrew/homebrew#17713.
2013-09-05Fix breakage in option recognitionJack Nagel
Fixes Homebrew/homebrew#22347.
2013-09-05Improve python tests for brew botsSamuel John
Allow `build.with?` and similar methods to be used during the test phase. The BuildOptions (`build`) are initialized with the `Tab.used_options` unless explicitly overwritten on the command line. So basically `build.with?` works in `def install` and in `test do` as one would naively expect. (For the test, gramatically it should be `built.with?` but who cares) If a formula was installed `--with-python`, now the tests are also run `--with-python`. This enables us to use the `python do ... end` in a meaningful manner. Using `python do ... end` blocks for the tests, because the bot.brew.sh has system python per default and we need to set the PYTHONPATH for the test. Potentially to different values for Python 2.x and 3.x.
2013-09-01Tab: track C++ stdlib in useMisty De Meo
There are subtle incompatibilities between Apple's libstdc++ and the libstdc++ used by the various GNU GCC formulae. In addition, we'll likely also be supporting libc++ in the future, and that's also incompatible with the other stdlibs. Tracking it in the tab lets us make sure that dependencies are all built against the same stdlib to avoid subtle breakage.
2013-09-01Implement fails_with for non-Apple compilersMisty De Meo
This adds support for non-Apple GCC compilers in the fails_with code. A fails_with block for a non-Apple compiler looks like: fails_with :gcc => '4.8.1' do cause 'Foo' end Non-Apple compilers don't have build numbers, so compiler failures are based on version strings instead. Internally non-Apple compilers can be distinguished because they are passed around as strings instead of symbols. In addition, this alters the priority list for compilers, with the following changes: * Apple GCC 4.2 and LLVM-GCC swap positions, with GCC now taking priority. (Maybe LLVM-GCC should just go away.) * Non-Apple GCC compilers are ranked below GCC 4.2 but above LLVM-GCC and Apple GCC 4.0.
2013-08-31Add test for option description rulesJack Nagel
2013-08-31Add test for dependency optionsJack Nagel
2013-08-26Add some tests for ENV.{append,prepend} behaviorJack Nagel
2013-08-22Options: ensure copies do not share the underlying collectionJack Nagel
2013-08-22Demonstrate the Set-like nature of Options collectionsJack Nagel
Options collections are backed by Sets, and thus trying to push a new option with a name that duplicates an existing option cannot succeed. Later, we can exploit this behavior and remove some conditionals.
2013-08-19Add tests for ENV.{append,prepend}_pathJack Nagel
2013-08-19Use ENV.append_pathJack Nagel
2013-08-19Use File::PATH_SEPARATOR globally instead of ':'Amos Wenger
On Unix, the path separator is ':', whereas on Windows, it is ';'. This is the first of a series of patch to bring macbrew's and winbrew's codebases closer together. The main places the magic constant ':' was being used were: - the $PATH environment variable - CMAKE-related environment variables - pkg-config related environment variables Closes Homebrew/homebrew#21921. Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2013-08-19Initial tests for superenv sanityJack Nagel
2013-08-19No longer call ENV.userpaths! in requirementsJack Nagel
Instead we use which with a custom PATH.
2013-08-19More robust implementation of ENV.with_build_environmentJack Nagel
2013-08-19Rename HomebrewEnvExtension to StdenvJack Nagel
2013-08-15Mach: improve testsMisty De Meo
2013-08-13pathname: remove unused return valuesAdam Vandenberg
Return value was used only by one test, rewrote test to know expected value.
2013-08-09Always prune empty toplevel directories when unlinkingJack Nagel
Closes Homebrew/homebrew#21750.
2013-08-09Keep track of pruned parent directoriesJack Nagel
2013-08-09Add tests to demonstrate failure to prune empty directoriesJack Nagel
2013-08-09Remove hardcoded paths in keg testsJack Nagel
2013-08-09Remove keg test dependency on formulaJack Nagel
2013-08-03bottle_versions: add ssh_copy_id bottle detection.Mike McQuaid
2013-08-03bottle_versions: add perforce bottle detection.Mike McQuaid
2013-08-03bottles: use dedicated version class.Mike McQuaid
2013-08-03versions: remove perforce bottle detection.Mike McQuaid
2013-07-28RbConfig::CONFIG['bindir'] is already a stringJack Nagel
2013-07-24Adjust logic to properly sort erlang versionsJack Nagel
Fixes Homebrew/homebrew#21417.
2013-07-22Check deps of satisfied depsJack Nagel
2013-07-22Silence warningsJack Nagel
2013-07-09Remove duplication in updater testsJack Nagel
2013-07-09Properly define tapped formulae in updatephinze
A tapped formula is a ruby file present: - in the root of the tap - in directory of the tap called Formula - in a directory of the tap called HomebrewFormula And nowhere else. This corrects an overzealous definition of tapped formula in the updater. (the correct definition has been in Pathname since e613cbe5783cea2abb8100b56c22126a1ab6b9f2) Refs Homebrew/homebrew#19743. Closes Homebrew/homebrew#21087. Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2013-07-01Add Haswell to CPU testsMisty De Meo
These tests need a lot of work...
2013-06-30Fixed several broken sourceforge.net download locationsVictor Martinez
Closes Homebrew/homebrew#20645. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2013-06-28Reject versions that aren't stringsJack Nagel
2013-06-28Detect versions in tag specsJack Nagel
Closes Homebrew/homebrew#18300. Closes Homebrew/homebrew#20891.
2013-06-27Fix some #eql? correctness issuesJack Nagel
The implementation of #eql? and #hash should ensure that if a.eql?(b), then a.hash == b.hash, but #eql? itself should not *depend* on #hash. For example, given class Thingy def eql? instance_of?(other.class) && hash == other.hash end def hash [name, *tags].hash end end if #hash produces a collision for different values of [name, *tags], two Thingy objects will appear to be eql?, even though this is not the case. Instead, #eql? should depend on the equality of name and tags directly.
2013-06-26Add syntax sugar for MPIDependencyJack Nagel
Closes Homebrew/homebrew#20797.
2013-06-26Skip test on Xcode only systemsAdam Vandenberg
2013-06-25Uniqify tags when merging dependenciesJack Nagel