46 Commits

Author SHA1 Message Date
Tsukasa OMOTO
d1f15e967b Taps: cleanup regexps around Taps
Closes Homebrew/homebrew#29139.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-05-14 11:12:51 -05:00
Jack Nagel
d8c15c8fbf The \w character class already includes underscore
Newer versions of Ruby issue a warning for repeated character classes.
2014-05-03 15:03:22 -05:00
Tsukasa OMOTO
54004a4759 Make the on-disk representation of taps unambiguous
This commit supports "-" and "_" in names of user and repository.

Closes Homebrew/homebrew#28203.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-04-24 17:10:41 -05:00
Jack Nagel
c6bc01ab58 Add TapDependency 2014-02-28 11:16:55 -06:00
Jack Nagel
0f5a80a97b Fix tokenizing openssl style versions
Fixes Homebrew/homebrew#25736.
2014-01-11 20:00:34 -06:00
Jack Nagel
3656f59508 Add HOMEBREW_TEMP to testing environment 2013-12-14 09:47:32 -06:00
Jack Nagel
291cdea687 Extract constants for checkums in tests 2013-12-09 15:57:50 -06:00
Jack Nagel
e67286369e Stop coercing MACOS_VERSION to a float 2013-10-25 17:29:36 -05:00
Jack Nagel
c511d7d2f4 Add OS.mac? and OS.linux? 2013-10-18 12:56:51 -05:00
Mike McQuaid
a6e2245732 git_etc: update based on bottle etc/var changes. 2013-10-10 16:46:47 +01:00
Mike McQuaid
ab20ed0bc2 Optionally use git to keep brew etc versioned.
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-07 13:39:43 +01:00
Amos Wenger
52ace99f14 Use File::PATH_SEPARATOR globally instead of ':'
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-19 13:35:44 -05:00
Jack Nagel
dd9c269c69 Rename HomebrewEnvExtension to Stdenv 2013-08-19 12:32:59 -05:00
Jack Nagel
325db99a3c RbConfig::CONFIG['bindir'] is already a string 2013-07-28 16:43:22 -05:00
Jack Nagel
c4272a25cc Homebrew has an actual license, remove stale comment 2013-06-22 15:01:59 -05:00
Jack Nagel
2e2d922190 Run tests under actual OS version 2013-06-14 19:19:26 -05:00
Jack Nagel
fdaea3189d Check method existence rather than Ruby version 2013-06-11 17:05:44 -05:00
Jack Nagel
80745a97e2 Add Enumerable#group_by 2013-06-08 12:23:14 -05:00
Jack Nagel
b97b013fce Extract attr_rw from Formula for reuse
Closes Homebrew/homebrew#20239.
2013-06-04 11:06:18 -05:00
Jack Nagel
4adecd73b6 tests: extract common formula helper 2013-05-25 17:19:18 -05:00
Jack Nagel
3be67f7252 Reorganize compat 2013-05-10 23:27:28 -05:00
Jack Nagel
9013b3a0c9 Define RUBY_PATH for tests 2013-04-07 20:59:52 -05:00
Jack Nagel
6a58650611 Make testing_env somewhat readable 2013-04-01 15:53:42 -05:00
Jack Nagel
8e530d861b tests: allow setting MACOS_VERSION from the environment
This makes it easy to test things that vary depending on this constant
without editing testing_env.rb.
2013-03-09 17:38:49 -06:00
Jack Nagel
452e79cf68 Allow satisfied? to be specified in a block
Instead of overriding #satisfied?, Requirement subclasses can specify
the condition in a block:

  satisfy do
    some_condition?
  end

The contents of the block are evaluated in the context of the instance,
and so have access to instance variables and instance methods as before.
Additionally, it is wrapped in an ENV.with_build_environment block. This
can be disabled by passing :build_env => false to satisfy:

  satisfy :build_env => false do
    some_condition?
  end
2013-01-21 17:24:12 -06:00
Jack Nagel
1f505af566 tests: add mocha mocking library 2013-01-21 17:14:16 -06:00
Jack Nagel
09b77a7785 Define HOMEBREW_LIBRARY for tests 2013-01-12 17:51:29 -06:00
Jack Nagel
267ffddbd3 tests: define assert_empty for Ruby <= 1.8
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-10-25 22:09:23 -05:00
Jack Nagel
1027093eae tests: set newly-visible global constants
The changes to error ouput and logging require a few more things to be
visible during installation tests.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-29 12:14:57 -05:00
Jack Nagel
6ebcccdcc5 Make FileUtils extension available globally
Now that we are monkeypatching copy_metadata, we should load our
extension up front for consistency.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-27 16:22:01 -05:00
Jack Nagel
be8827d8a4 tests: avoid unnecessary chdir
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-30 00:10:02 -05:00
Jack Nagel
b7bdd2f578 tests: support "rake rcov" if rcov is installed
If the rcov gem is installed, `rake rcov` will generate a test coverage
report in the coverage directory.

I picked rcov because it is 1.8 compatible. But it could easily be
swapped out for another coverage tool.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-29 15:56:36 -05:00
Jack Nagel
23cc14f9a1 Simplify version comparison tests
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-18 16:03:43 -05:00
Jack Nagel
329f0a8490 Replace version strings with Version objects 2012-08-18 11:12:08 -05:00
Jack Nagel
8818e008e3 tests: require string extension before exceptions
exceptions.rb now needs String#undent when it is loaded.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-12 01:02:37 -05:00
Jack Nagel
f5eaef0aee Deprecate ancient formula syntax
Closes Homebrew/homebrew#13444.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-09 23:56:54 -05:00
Jack Nagel
90dbb8a141 Prune some requires from test files
testing_env already requires utils; set up the ARGV and ENV extensions
there as well.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-07-04 22:47:34 -05:00
Jack Nagel
98a11b8e57 Introduce new formula specs 2012-07-04 22:47:32 -05:00
Jack Nagel
af7bf47e31 tests: add utility method to quell output
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-18 15:16:00 -05:00
Jack Nagel
de444ead0b New fails_with infrastructure
- Formulae can now declare failures on any compiler.
 - FailsWithLLVM and associated formula elements have been moved to
   compat.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-04-01 12:39:59 -05:00
Max Howell
42cc28597c HOMEBREW_CURL_ARGS so that tests can be more silent 2011-08-24 22:30:43 +01:00
Max Howell
768910283a Refactor the brew command into one file per command
The code was sucking. To the extent that maintenance was hard. It's a lot
easier to work with code that is sensibly split at sensible boundaries. So
now it is more like that.

But the refactor is minimal. Because we don't want you to have more merge
hell than absolutely necessary.

If you merge you will need to pay attention to brew.h.rb (as it is deleted)
and bin/brew (as command logic is gone). It will be painful, but you will just
have to help git out by moving any changes around manually.

Note compatibility.rb. It ensures that any function renames or removals don't
break anything. We're pretty serious about backwards compatibility. And that's
because we encourage you to hack around with the innards. And we couldn't do
that if we would then just make stuff disappear behind your back.
2011-03-12 11:55:02 -08:00
Adam Vandenberg
696e49e87a Move exceptions from global to utils; remove duplicate defintions 2010-07-08 22:41:51 -07:00
Adam Vandenberg
eb058c0958 Fix: attr doesn't take a list. 2010-06-10 19:39:15 -07:00
Adam Vandenberg
1761ba66bf Failures during ./configure should mention config.log. 2010-06-10 12:57:51 -07:00
Adam Vandenberg
298c74d147 Add new "testing environment" include. 2010-04-06 08:27:10 -07:00