spec/routes_spec.rb in sequenceserver-1.0.14 vs spec/routes_spec.rb in sequenceserver-1.1.0.beta

- old
+ new

@@ -4,34 +4,19 @@ module SequenceServer describe 'Routes' do ENV['RACK_ENV'] = 'test' include Rack::Test::Methods - let 'root' do - SequenceServer.root + before do + SequenceServer.init end - let 'empty_config' do - File.join(root, 'spec', 'empty_config.yml') - end - - let 'database_dir' do - File.join(root, 'spec', 'database') - end - before :each do - SequenceServer.init(:config_file => empty_config, - :database_dir => database_dir) - - algorithm = Database.first.type == 'protein' ? 'blastp' : 'blastn' - sequence = 'AGCTAGCTAGCT' - databases = [Database.first.id] - - @params = { - 'method' => algorithm, - 'sequence' => sequence, - 'databases' => databases + @params = { + 'sequence' => 'AGCTAGCTAGCT', + 'databases' => [Database.first.id], + 'method' => (Database.first.type == 'protein' ? 'blastp' : 'blastn') } end let 'app' do SequenceServer @@ -81,23 +66,26 @@ @params['advanced'] = '-word_size 5; rm -rf /' post '/', @params last_response.status.should == 400 end - it 'returns OK (200) when correct method, sequence, and database ids are'\ + it 'redirects to /:jobid (302) when correct method, sequence, and database ids are'\ 'provided but no advanced params' do post '/', @params - last_response.status.should eq 200 + last_response.should be_redirect + last_response.status.should eq 302 @params['advanced'] = ' ' post '/', @params - last_response.status.should == 200 + last_response.should be_redirect + last_response.status.should == 302 end - it 'returns OK (200) when correct method, sequence, and database ids and'\ + it 'redirects to /jobid (302) when correct method, sequence, and database ids and'\ 'advanced params are provided' do @params['advanced'] = '-evalue 1' post '/', @params - last_response.status.should == 200 + last_response.should be_redirect + last_response.status.should == 302 end end end