Forum: Ruby on Rails rake test:functionals -> Task not supported by ''

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Fritz A. (Guest)
on 2009-03-06 22:37
I have a Rails project in which I've been using "rake test" tasks with
great success. At some point (there were a few changes in the interim),
rake started aborting test tasks. Here is the dialog:

===
$ rake test:functionals
(in /Users/fritza/myproject)
rake aborted!
Task not supported by ''

(See full trace by running task with --trace)
===

The separate suites (e.g., "ruby test/functional/mycontroller_test.rb")
work, reporting failures or not as usual.

rake test:units, test:functionals, and test:integration all fail the
same way. "rake test" successfully runs the functional and integration
tests, but aborts with the same message when it attempts the unit tests.

Among my changes were some shifting-around between a local SQLite
database and a MySQL server, but I'd think that wouldn't be a problem if
the individual suites (and two subtasks of test) run normally. The
problem persists no matter which DB I put in database.yml. I think the
database issue is a red herring. "rake RAILS_ENV=test db:migrate" was
run, with the expected progress output, before the rake test
invocations. Re-running the migration outputs the "(in...)" line and
nothing else, as expected.

Google turns up little, and nothing with an empty supported-by string.

Apparently I've bent something, but I don't know what. Will someone
please help me get back on track?

    — F
Fritz A. (Guest)
on 2009-03-06 22:52
Fritz A. wrote:
> I have a Rails project in which I've been using "rake test" tasks with
> great success. At some point (there were a few changes in the interim),
> rake started aborting test tasks.
...
> Among my changes were some shifting-around between a local SQLite
> database and a MySQL server
...

Okay, posting a problem publicly gets you an answer very quickly. My
database.yml file looked like this:

===
test:   test_mysql

test_mysql:
   adapter: mysql
   #etc

test_local:
   adapter: sqlite3
   database: db/test.sqlite3
   timeout: 5000
===

Rails itself knows that when it finds a String as the value of an
environment key, it should use that String as the key for another lookup
in the YAML, in search of a Hash it can use for configuration. The rake
task, however, stops at the first lookup. It can't pull an "adapter"
value from the String, and therefore reports that the task is not
supported by this empty-named adapter.

I think there may be a better way to parameterize YAML values, but the
server for the YAML in Five Minutes tutorial, where I remember seeing
it, is down.

So this question is answered, and I give thanks/apologies for your
effort.

    — F
Frederick C. (Guest)
on 2009-03-06 22:53
(Received via mailing list)
On Mar 6, 8:37 pm, Fritz A. <removed_email_address@domain.invalid>
wrote:

> Google turns up little, and nothing with an empty supported-by string.
>
> Apparently I've bent something, but I don't know what. Will someone
> please help me get back on track?
>
If the problem is a source code change rather than an environment
change, have you tried revert to previous source to see if you can
isolate the change that broke this? (if you are using git then git
bisect is designed for this sort of stuff)

Fred
This topic is locked and can not be replied to.