Giter Club home page Giter Club logo

teaspoon's People

Contributors

baburdick avatar bouk avatar chrisnicola avatar garysweaver avatar iainbeeston avatar inlineblock avatar jabr avatar jejacks0n avatar kaanozkan avatar kowal avatar leppert avatar liseki avatar mathieujobin avatar mikepack avatar mortonfox avatar nilbus avatar pboling avatar rafaelfranca avatar rafalbromirski avatar rwjblue avatar sblackstone avatar sebastianzillessen avatar sguha00 avatar smellsblue avatar trbrink avatar trevmex avatar ukdave avatar virginia-rodriguez avatar ysbaddaden avatar zackmattor avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

teaspoon's Issues

Using externally hosted javascript

I'm trying to test some code that relies on the google maps api. Unfortunately there doesn't seem to be any way of mocking that or hosting it locally, and other projects (eg. hpneo/gmaps) test it by including a script tag for gmaps in their tests. But I can't find a way of doing this using teabag.

I've tried including script tags in my fixture, but they don't seem to be evaluated. Sprockets doesn't allow for remotely hosted dependencies. And so far as I can see from the source teabag only supports inclusion of dependencies via sprockets, and I can't access it's view templates.

I'm not entirely sure if this is a bug, because it's for a fairly questionable practice, but I suspect there is a subset of libraries that require this feature.

Project Name Change?

Quite a great looking project you have here. Just wondering if you have considered the potentially offensive name of the project however? Might end up with a repeat of the Testacular changed to Karma fiasco down the road as your project gains more attention.

Support using already running server

It doesn't seem to be possible to use an already running server (like localhost:3000). If it is, I don't see it documented. Is this possible now? If not, it would be great for command line use so I didn't have to start a rails server every time. Thanks!

Making backtrace urls clickable?

Are you guys using anything to make backtrace url's clickable? In other words when using the browser runner my failing specs provide me backtraces that look like: http://localhost:3000/path/to/my/sepc.js?body=1:9:25. These seems ripe for clicking and focusing.

Any browser extensions in your workflow?

Add fixtures.$el

I find myself throwing fixtures.el into $(fixtures.el) a lot....Would it make sense to add fixtures.$el, kinda like backbone?

Provide better error messaging when test runner fails to run.

There are all sorts of reasons that can cause the test runner to fail.. if you require a file that doesn't exist, or you have a coffeescript parse error etc.

We should handle these cases better and display an error message in the console about what happened.

Object #<Assertion> has no method 'throw'

Hi,

Using teaspoon and

#= require support/chai
#= require support/expect

I end up having weird errors such as Object #<Assertion> has no method 'throw' coming from an expect(fn).to.throw Error (which passes under Konacha, for instance). Some other chai helpers are "missing" as well, such as instanceof. The majority of them are present, though… so it's kind of weird.

I'm feeling this could be more a chai-related issue, but you may have encountered the issue already.

Teabag and requirejs...how to set it up?

I know from the wiki page that there is support for AMD, but how do you set it up to make it work

when I run teabag spec/javascripts/models/location_spec.js I get: 0 examples, 0 failures

//=require require
//=require config
define(['models/Location'], function(Location) {

  return describe('Model :: Location', function() {

    describe('Model properties', function() {

      it('should have a name', function() {
        var name_value = "San Fransisco";
        var locationModel = new Location({
          name: name_value
        });
        expect(locationModel.get("name")).toEqual(name_value);
      });
    });
  });
});

in this specific example, where do I need to put the defer option?

Teabag.defer = true
setTimeout(Teabag.execute, 1000) // defers execution for 1 second

No CoffeeScript support for QUnit?

I'd rather use Jasmine, but I'm stuck with QUnit.

I've got teabag up and running (I can run example tests), but for some reason I can't run coffeescript specs. I've put the exact same test in as .js and it passes.

All of my setup is direct from the generator:

rails generate teabag:install --framework=qunit --coffee

I can paste in any other files you need!! I appreciate your time!

"passes: 0 failures: 0 skipped: 0 duration: ∞" with redundant require?

Hi,

Loving Teabag.

In the course of trying to get an existing test to run, I put

#= require jasmine

at the top of my test file. This causes the test to report

passes: 0 failures: 0 skipped: 0 duration: ∞

There were no errors reported on the FireFox console, nor from the rails server.

(My actual problem was that I was missing '#= require jasmine-jquery' -- I just hadn't figured that out.)

Anyway, this will cause your calculator_spec to get the same non-result.

Sharing for the benefit of those who might make the same stupid mistake as me, and to help you tune up your excellent project to withstand stupid errors! :)

undefined cattr_accessor when attempting to run using cli.

This is just after doing a clean install of teabag.

/home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/configuration.rb:7:in `<class:Configuration>': undefined method `cattr_accessor' for Teabag::Configuration:Class (NoMethodError)
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/configuration.rb:4:in `<module:Teabag>'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/configuration.rb:3:in `<top (required)>'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag.rb:3:in `require'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag.rb:3:in `<top (required)>'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/environment.rb:12:in `require'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/environment.rb:12:in `load' 
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/console.rb:12:in `initialize'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/command_line.rb:13:in `new'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/lib/teabag/command_line.rb:13:in `initialize'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/bin/teabag:6:in `new'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/gems/teabag-0.7.1/bin/teabag:6:in `<top (required)>'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/bin/teabag:19:in `load' 
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/bin/teabag:19:in `<main>'
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/bin/ruby_noexec_wrapper:14:in `eval' 
  from /home/paul/.rvm/gems/ruby-1.9.3-p374@blah/bin/ruby_noexec_wrapper:14:in `<main>'

On Windows, coverage runs from the TEMP directory, obfuscating results

This results in file paths such as /d20130515-37084-102j7jj/my_javascript.js
What is the problem? Well each file is in a separate obfuscated directory.

I have tried searching for a solution, but google isn't very helpful since teabag and istanbul are so common. StackOverflow yielded no answers either.

Selenium and PhantomJS give the exact same result.

Add better fixture support that will work across test frameworks.

We're using jasmine-jquery now, but feel we can provide a more standard interface for using fixtures.

Keeping the ability to use jasmine-jquery or sinon as they work currently.

The public interface for fixtures should be something like:

describe "Feature"

   # loading a fixture -- either pass format, or response headers can be used to determine if it should be JSON, HTML, etc.
   # HTML will be auto loaded into the fixture element.
   # JSON will just be parsed and available as an object?
   fixture("path/to/filename", "html")

   it "can find the fixture" ->
      # without arguments the fixture function should return the last fixture -- either the element, or json object?
      expect(fixture()).toBeDefined()

Those are my initial thoughts.

NoMethodError with "suite.use_require = true" for require.js

Steps to reproduce:

rvm gemset create test1
rvm gemset use test1

gem list

  • bundler (1.3.5)
  • rake (10.0.4)
  • rubygems-bundler (1.1.1)
  • rvm (1.11.3.7)

gem install rails

  • Ruby: 1.9.3p429
  • Rails: 3.2.13

rails new test1

Added to Gemfile:

gem "requirejs-rails", "~> 0.9.1"
gem "jasmine", "~> 1.3.2"
gem "teabag", "~> 0.7.2"

bundle install

rails generate jasmine:install
rails generate teabag:install --coffee
rails generate controller home index

Added to config/routes.rb

  root to: 'home#index'

Removed public/index.html

I followed these instructions to set up an initial test.

Added spec/javascripts/calculator_spec.coffee

#= require calculator
describe "Calculator", ->
  it "should add two digits", ->
    expect( new Calculator().add(2,2) ).toBe(4)

Added app/assets/javascripts/calculator.coffee

class @Calculator
  add: (a, b) ->
    a + b

Running teabag results in 1 example passing, 0 failures.

So far success. Want to try a require.js workflow.

Changed app/views/layouts/application.html.erb (and removed javascript_include_tag)

  <%= requirejs_include_tag 'application' %>

Added to spec/javascripts/spec_helper.coffee (and removed #= require application)

#= require require

Changed app/assets/javascripts/calculator.coffee

define ->
  add: (a, b) ->
    a + b

Changed app/assets/javascripts/application.coffee

define ['jquery', 'calculator'], ($, calc) ->
  $ ->
    alert calc.add(4,5)

Running rails server and loading it in a web browser I see the alert with the results from the script loaded by Require.js. According to Webkit Inspector, require.js, jquery.js, and calculator.js are all loaded.

How do I switch the calculator_spec.coffee file to use require.js?

If I change it to:

define ['calculator'], (calc) ->
  describe 'Calculator', ->
    it 'should add two digits', ->
      expect(new calc.add(2,3)).toBe(5)

…when I run teabag it now says 0 examples, 0 failures. According to the README, I should put suite.use_require = true in config/initializers/teabag.rb in the appropriate block, but it results in a NoMethodError:

Error: NoMethodError: undefined method `use_require=' for #Teabag::Configuration::Suite:0x007…

On RequireJS with Teabag it mentions a require.config block, but adding it to spec_helper.coffee still results with 0 examples. I've tried various incarnations of config/requirejs.yml as per requirejs-rails but still 0 examples.

Any help?

Ensure that the HTML reporter is working in IE6+

To allow the broadest testing ability we should ensure that the HTML reporter is in fact working (and looks tolerable) in IE6.

We're doing everything pretty old school style, but nobody has checked this yet.

If anyone is willing to fire up a VM and check that would be awesome too.

Suite OK in browser, NOK in shell

Hi,

I have a suite of specs ran using teaspoon-mocha and chai which is running fine in the browser, but fails when ran in the console:

$ bundle exec rake teaspoon suite=default
Starting the Teaspoon server...
I, [2013-06-24T10:29:52.267705 #30128]  INFO -- : listening on addr=0.0.0.0:48599 fd=9
I, [2013-06-24T10:29:52.267838 #30128]  INFO -- : worker=0 spawning...
I, [2013-06-24T10:29:52.269526 #30168]  INFO -- : worker=0 spawned pid=30168
I, [2013-06-24T10:29:52.269694 #30128]  INFO -- : master process ready
I, [2013-06-24T10:29:52.272254 #30168]  INFO -- : worker=0 ready
Teaspoon running default suite at http://127.0.0.1:48599/specs/default
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 8: reading configurations from ~/.fonts.conf.d is deprecated.
TypeError: 'undefined' is not an object (evaluating 'this.suite.parent.root')
  # teaspoon-mocha.js:6624 -- Suite
  # teaspoon-mocha.js:6591
  # teaspoon-mocha.js:6348
  # teaspoon-mocha.js:6373
  # teaspoon-mocha.js:6471
  # teaspoon-mocha.js:6448
  # teaspoon-mocha.js:521
  # teaspoon-mocha.js:4481
  # teaspoon-mocha.js:4432
  # teaspoon-mocha.js:4489
  # teaspoon-mocha.js:4356 -- next
  # teaspoon-mocha.js:4365
  # teaspoon-mocha.js:4313 -- next
  # teaspoon-mocha.js:4333
  # teaspoon-mocha.js:5315 -- timeslice

The error occurs in the prototype definition of Teaspoon.Suite.

This specs suite was once ran under Konacha, so all the specs are part of a "Default" suite, but there are no explicit declaration concerning the notion of a suite whatsoever. Should we organize our tests in explicit suites?

Thank you.

Catchall routes make teabag inaccessible

Just as an fyi, if you have a catchall route at the bottom of your routes file in Rails, it makes Teabag inaccessible.

match '*path' => 'errors#missing'

You can get around this by manually mounting the Teabag::Engine in your routes.

application.js.coffee not loading

Hiya,

When running rake teabag or going to localhost:3000/teabag, it doesn't seem to be picking up any files that I have listed in my application.js (or application.js.coffee) file, strangely. My application works fine, so I know the Rails asset pipeline is working, but teabag doesn't seem to be using it?

Any insights would be helpful. Thanks!

Is my SpecController running slow?

The browser runner feels kinda slow. Visiting /teabag completes in < 100ms - which is fine, but, visiting /teabag/default/?file=... it takes > 2 seconds.

Is this typical? Is something wrong with my setup?

The spec I'm running is a single expect(true).to.be(true) assertion. The development log says all the time is spent on the view rendering of Teabag::SpecController#runner.

No such file or directory on running teabag

RAILS_ENV=test bundle exec rake teabag
Starting server...
Teabag running default suite at http://127.0.0.1:39270/teabag/default...
rake aborted!
No such file or directory - /home/paul/.rvm/gems/ruby-1.9.3-p194/gems/phantomjs-linux-0.0.2/lib/../vendor/phantomjs/linux/bin/phantomjs /home/paul/.rvm/gems/ruby-1.9.3-p194/gems/teabag-0.4.0/lib/teabag/drivers/phantomjs/runner.coffee http://127.0.0.1:39270/teabag/default

Both of those paths exist, so I'm unsure what the problem is. Using gem from github (v 0.0.5), also happens in development.

Consider renaming the project?

Have you considered renaming the project? When my intern googled for this project he was lead to the urban dictionary definition. He's very young and innocent...

Weird error was my fault

I had a problem loading my coffeescripts from my specs, and I was using a sublime plugin that was generating coffeescripts to javascripts - and it was replacing my spec_helper.js file and it was basically erasing my require imports in rails - which coffeescript generators delete.

If anybody else runs into that problem be careful with this coffescript sublime generator.

Gem includes unnecessary generated files

I noticed that this gem was unusually large, so I investigated and it looks like some generated test data is being included in the packaged version that is not checked into git.

Freshly checked out from git:

$ du -sh teabag/
5.3M    teabag/

Unpacked gem version:

$ du -sh teabag-0.7.2/
51M teabag-0.7.2/
$ du -sh teabag-0.7.2/spec/dummy/*
44K teabag-0.7.2/spec/dummy/app
40K teabag-0.7.2/spec/dummy/config
4.0K    teabag-0.7.2/spec/dummy/config.ru
34M teabag-0.7.2/spec/dummy/log
4.0K    teabag-0.7.2/spec/dummy/public
4.0K    teabag-0.7.2/spec/dummy/Rakefile
8.0K    teabag-0.7.2/spec/dummy/script
14M teabag-0.7.2/spec/dummy/tmp

I'm not too familiar with building gems, but I think this could be fixed by simply removing this line from the gemspec: https://github.com/modeset/teabag/blob/master/teabag.gemspec#L17
The packaged gem does not include a Gemfile or Rakefile, so the tests don't really seem to serve a purpose anyways.

Is Railtie really a dependency

I really appreciate this gem, but lately I've been working with Sinatra more than Rails.

Keeping this is mind my sugestion is remove the Railtie dependency and rely only on Rack to mount the application. This will continue to support rails apps and will allow any other rack based apps to work with the gem.

If you are interested in this approach I could clone the repo and do the basics, but I will need support to understand the complete flow. What you guys think?

Not enough error details

My spec pass when they are run in a browser but they fail on console with rake teabag and phantomjs.

I'm trying to debug the issue...but the trace isn't very helpful...

  1) Foo submits form when uploading
     Failure/Error: ReferenceError: Can't find variable: page

That's basically all I get...no file and line number.
Any tips on getting better traces? Or is this a limitation of teabag/phantomjs?

PhantomJS Error Message

Teabag is running specs from the command line - yea! But I get a funky error message "No such file or directory..."

Starting the Teabag server... 
Teabag running default suite at http://127.0.0.1:42806/teabag/default
./bin/rake: No such file or directory - phantomjs --version
./bin/rake: No such file or directory - phantomjs --version
.
Finished in 0.00500 seconds
1 example, 0 failures

Any ideas re: how to suppress/eliminate this message?

I'm running: Ubuntu 12.04 32-bit, teabag 0.7.1, ruby 1.9.3p327perf, rails 3.2.13.

I tried:

  • gem 'phantomjs-linux' #=> made no difference
  • apt-get install phantomjs #=> broke teabag, even when setting PHANTOMJS_BIN

Rake task does not abort when PhantomJS fails

Hi,
I've a build server when running the teabag rake task it logs:

Starting the Teabag server...
Teabag running default suite at http://127.0.0.1:36846/teabag/default
[myprojectpath]/vendor/bundle/ruby/1.9.1/gems/phantomjs-linux-0.0.2/lib/../vendor/phantomjs/linux/bin/phantomjs: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory

and continues with its other tasks. I expected teabag to abort rake like when a test fails.

(any clues on what went wrong are welcome as well)

I'm running this on a CentOS 6.4 64-bit machine. I did not have this issue with Ubuntu 12.04 64bit.

Add coverage threshold checking

I would like to use istanbul's check-coverage feature, but I think it requires the presence of the coverage.json file. It looks like teabag creates it in a temp directory, which is cleaned up after the coverage report is generated.

Would you accept a patch to copy this file into the coverage/ directory after the report is generated? I believe this should allow me to then run istanbul check-coverage <options> to do things like checking that thresholds were not exceeded.

angular scenario support

How hard do you think it would be to have an adapter for angular scenario, so that we could have an E2E testing suite in teabag?

Rake Teabag fails randomly

I have a fully passing test suite in the browser, but on rake teabag it gets a majority of the we through tests and stops with this message printed: "Error: Failed to load: http://127.0.0.1:50701/teabag/default/?"

I was working on tests and caused a fail then this happened. I reverted my changes to my code base and it never went away... it gets to different points in the tests when it fails too.

Any way to provide better feedback? And get tests passing? Could this be a cache thing?

Selenium: Teabag::UnknownSuite

Hi there!

I'm using teabag with selenium driver. When I run rake teabag, the test suite won't run due to a Teabag::UnknownSuite error. I noticed that when Firefox shows up, the URL on the address bar is wrong. It says: http://127.0.0.1:50529/teabag/default&reporter=Console.

So I looked at the source code and found these lines of code.

It seems that if there are no specified filters, the ? won't be added to the URL. In that case, adding &reporter=Console will result to an unknown suite.

I think it'll be better to add a ? even if there are no filters. That way, adding the reporter string to the URL won't result to an error. I'm not familiar with the code base though. There might be a reason why the ? is not being added by default?

Fix up angular test support

Since I'm not using Angular directly this will require a good amount of research, but I've been intending to check it out and learn something. This is a placeholder to communicate that I don't believe Angular support is what it should be and needs work.

Markup not escaped in browser

When running tests in the browser, "<" and ">" (at least) should be escaped.

I have some Jasmine tests like the following:

it("generates a <div> tag", function() { /* Test code */ });

and that will be rendered in the browser without escaping the tag, so I end up with a unclosed div with the word "tag" inside it.

Improve the user interface in the HTML reporter by adding a select for switching suites.

It's annoying to have to know their names and type them into the url. There can be a select or list or something that allows a user to select which suite they want to run from within the interface itself.

Another potential adjustment to keep users from having to fudge with the url string is to provide a filter input that works much like the grep query param.

Running specific files on command line

I'm trying to run bundle exec teabag for many files, 28 files to be exact...so my command looks something like this:

$ bundle exec teabag spec/javascripts/file1_spec.coffee spec/javascripts/file2_spec.coffee spec/javascripts/file3_spec.coffee ... spec/javascripts/file28_spec.coffee

However, teabag fails to load:

Error: Failed to load: http://127.0.0.1:52126/teabag/default/?file[]=spec/javascripts/file1_spec.coffee&file[]=spec/javascripts/file2_spec.coffee.....

My guess is that this is because the URL is too long. If that is the case, would you be better off POSTing to the teabag server instead of doing a GET? Or is there a better way to run a (potentially long) list of files through the command line?

howto?: testing ready events with fixtures

Hi,

I recently decided my javascript code should be tested as well and now looking into testing with jasmine using teabag.
I noticed that a lot of my javascript code (the little i have) is code like: at document.ready, decorate some html-element.

So here's what I did: I made a fixture containing the element i needed to decorate. However, my fixtures get loaded after ready was triggered, so the fixture does not get decorated.

The easy fix would be of course to refactor all that is done in the event handler into a new function and then test the new function, but that feels a bit hacky.

I would like to know whether you have some suggestions on how to do this easier/better/neater?

passes: 0 failures: 0 skipped: 0 duration: ∞

(Note: I originally submitted this under teabag-demo, but decided it may reflect a problem in teabag itself, so am submitting it here as well.)

I am very keen to use teabag -- exactly what I need for testing my rails with JavaScript, from the looks of it!

However, I can't get even the simplest test to work. Thinking I must have some incompatibility with my version of Ruby or some gem, I tried cloning the teabag demo, built it, ran the rails server, and navigated to http://localhost:3000/teabag. What it shows is "passes: 0 failures: 0 skipped: 0 duration: ∞". As best I know how, teabag-demo is using the exact versions of Ruby and all gems as specified by the .rvmrc and Gemfile/Gemfile.lock.

No errors are shown from the rails server, but using Firefox, I looked at the console and see the error

TypeError: this.findEl(...) is null
[Break On This Error]   

this.findEl("suite-select").onchange = this.changeSuite;

teabag...?body=1 (line 2815)

Ruby is 1.9.3p392:

ruby -v
ruby 1.9.3p392 (2013-02-22 revision 39386) [i686-linux]

I'll include my Gemfile and Gemfile.lock here too in case that helps:

Gemfile:

source 'https://rubygems.org'

gem 'rails', '3.2.9'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

gem 'sqlite3'


# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3'
  gem "teabag"
end

gem 'phantomjs-linux'


gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'debugger'

Gemfile.lock:

GEM
  remote: https://rubygems.org/
  specs:
    actionmailer (3.2.9)
      actionpack (= 3.2.9)
      mail (~> 2.4.4)
    actionpack (3.2.9)
      activemodel (= 3.2.9)
      activesupport (= 3.2.9)
      builder (~> 3.0.0)
      erubis (~> 2.7.0)
      journey (~> 1.0.4)
      rack (~> 1.4.0)
      rack-cache (~> 1.2)
      rack-test (~> 0.6.1)
      sprockets (~> 2.2.1)
    activemodel (3.2.9)
      activesupport (= 3.2.9)
      builder (~> 3.0.0)
    activerecord (3.2.9)
      activemodel (= 3.2.9)
      activesupport (= 3.2.9)
      arel (~> 3.0.2)
      tzinfo (~> 0.3.29)
    activeresource (3.2.9)
      activemodel (= 3.2.9)
      activesupport (= 3.2.9)
    activesupport (3.2.9)
      i18n (~> 0.6)
      multi_json (~> 1.0)
    arel (3.0.2)
    builder (3.0.4)
    coffee-rails (3.2.2)
      coffee-script (>= 2.2.0)
      railties (~> 3.2.0)
    coffee-script (2.2.0)
      coffee-script-source
      execjs
    coffee-script-source (1.4.0)
    erubis (2.7.0)
    execjs (1.4.0)
      multi_json (~> 1.0)
    hike (1.2.1)
    i18n (0.6.1)
    journey (1.0.4)
    jquery-rails (2.1.4)
      railties (>= 3.0, < 5.0)
      thor (>= 0.14, < 2.0)
    json (1.7.5)
    mail (2.4.4)
      i18n (>= 0.4.0)
      mime-types (~> 1.16)
      treetop (~> 1.4.8)
    mime-types (1.19)
    multi_json (1.5.0)
    phantomjs-linux (0.0.2)
    phantomjs-mac (0.0.3)
    phantomjs.rb (0.0.5)
      phantomjs-mac
    polyglot (0.3.3)
    rack (1.4.1)
    rack-cache (1.2)
      rack (>= 0.4)
    rack-ssl (1.3.2)
      rack
    rack-test (0.6.2)
      rack (>= 1.0)
    rails (3.2.9)
      actionmailer (= 3.2.9)
      actionpack (= 3.2.9)
      activerecord (= 3.2.9)
      activeresource (= 3.2.9)
      activesupport (= 3.2.9)
      bundler (~> 1.0)
      railties (= 3.2.9)
    railties (3.2.9)
      actionpack (= 3.2.9)
      activesupport (= 3.2.9)
      rack-ssl (~> 1.3.2)
      rake (>= 0.8.7)
      rdoc (~> 3.4)
      thor (>= 0.14.6, < 2.0)
    rake (10.0.3)
    rdoc (3.12)
      json (~> 1.4)
    sass (3.2.4)
    sass-rails (3.2.5)
      railties (~> 3.2.0)
      sass (>= 3.1.10)
      tilt (~> 1.3)
    sprockets (2.2.2)
      hike (~> 1.2)
      multi_json (~> 1.0)
      rack (~> 1.0)
      tilt (~> 1.1, != 1.3.0)
    sqlite3 (1.3.6)
    teabag (0.4.1)
      phantomjs.rb (~> 0.0.5)
      railties (~> 3.2.5)
    thor (0.16.0)
    tilt (1.3.3)
    treetop (1.4.12)
      polyglot
      polyglot (>= 0.3.1)
    tzinfo (0.3.35)
    uglifier (1.3.0)
      execjs (>= 0.3.0)
      multi_json (~> 1.0, >= 1.0.2)

PLATFORMS
  ruby

DEPENDENCIES
  coffee-rails (~> 3.2.1)
  jquery-rails
  phantomjs-linux
  rails (= 3.2.9)
  sass-rails (~> 3.2.3)
  sqlite3
  teabag
  uglifier (>= 1.0.3)

Tests restarting

We have some tests written for Backbone.js routers that check hash changes. It appears that teabag watches the hashchange event and does its own things, restarting the tests part way. We get into a loop of tests restarting. Any help?

EDIT: Ok, more looking appears not to be a hash problem, more like a problem when rendering views... I will keep this updated if I find more.

error in html runner

getting an uncaught exception
Uncaught TypeError: Cannot set property 'innerHTML' of null

BaseView.prototype.setHtml = function(id, value, add) {
  var el;
  if (add == null) {
    add = false;
  }
  el = this.findEl(id);
  if (add) {
    return el.innerHTML += value;
  } else {
    return el.innerHTML = value;
  Uncaught TypeError: Cannot set property 'innerHTML' of null
  }
};

Add QUnit support.

I think this is do-able, so I'll probably add it if there's any demand for it. The only issues I see are the complication with the path -- spec vs. test.. but breaking some of the framework specific stuff into wiki pages would make the readme easier on the eyes too.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.