VRFS-2795 iterating on tests
This commit is contained in:
parent
2ea1259060
commit
2d8748d4ee
|
|
@ -10,6 +10,7 @@ module JamRuby
|
|||
KEY_GIGS = 'gig_count'
|
||||
KEY_STUDIOS = 'studio_session_count'
|
||||
KEY_AGES = 'ages'
|
||||
KEY_SKILL = 'skill_level'
|
||||
|
||||
SORT_VALS = %W{ latency distance }
|
||||
SORT_ORDERS = {
|
||||
|
|
@ -17,11 +18,11 @@ module JamRuby
|
|||
SORT_VALS[1] => 'Distance to Me'
|
||||
}
|
||||
|
||||
SKILL_VALS = [ANY_VAL_STR, 'pro', 'amateur']
|
||||
SKILL_VALS = [ANY_VAL_INT, 1, 2]
|
||||
SKILL_LEVELS = {
|
||||
SKILL_VALS[0] => 'Any',
|
||||
SKILL_VALS[1] => 'Pro',
|
||||
SKILL_VALS[2] => 'Amateur'
|
||||
SKILL_VALS[1] => 'Amateur',
|
||||
SKILL_VALS[2] => 'Pro',
|
||||
}
|
||||
|
||||
GIG_COUNTS = [ANY_VAL_INT, 1, 11, 51, 101]
|
||||
|
|
@ -80,10 +81,10 @@ module JamRuby
|
|||
:sort_order => '',
|
||||
:instruments => [],
|
||||
:interests => '',
|
||||
:genres => [],
|
||||
KEY_GIGS => 0,
|
||||
KEY_STUDIOS => '',
|
||||
:genres => [],
|
||||
:skills => '',
|
||||
KEY_SKILL => '',
|
||||
KEY_AGES => []
|
||||
}
|
||||
|
||||
|
|
@ -185,21 +186,8 @@ module JamRuby
|
|||
end
|
||||
|
||||
def _skills(rel)
|
||||
if 0 < (count = json['skill_level'].to_i)
|
||||
rel = rel.where('skill_level IS NOT NULL')
|
||||
case count
|
||||
when SKILL_VALS[1]
|
||||
rel = rel.where('skill_level >= ? AND skill_level < ',
|
||||
count, SKILL_VALS[2])
|
||||
when SKILL_VALS[2]
|
||||
rel = rel.where('skill_level >= ? AND skill_level < ',
|
||||
count, SKILL_VALS[3])
|
||||
when SKILL_VALS[3]
|
||||
rel = rel.where('skill_level >= ? AND skill_level < ',
|
||||
count, SKILL_VALS[4])
|
||||
when SKILL_VALS[4]
|
||||
rel = rel.where('skill_level >= ?', count)
|
||||
end
|
||||
if 0 < (val = json['skill_level'].to_i)
|
||||
rel = rel.where(['skill_level = ?', val])
|
||||
end
|
||||
rel
|
||||
end
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
require 'spec_helper'
|
||||
require 'time_difference'
|
||||
require 'byebug'
|
||||
|
||||
describe 'Musician Search Model' do
|
||||
let!(:searcher) { FactoryGirl.create(:austin_user) }
|
||||
let!(:search) { MusicianSearch.create_search(searcher) }
|
||||
let!(:user_types) { [:austin_user, :dallas_user, :miami_user, :seattle_user] }
|
||||
|
||||
describe "creates search obj" do
|
||||
it "associates to user" do
|
||||
|
|
@ -72,9 +72,8 @@ describe 'Musician Search Model' do
|
|||
describe "filtering by gig" do
|
||||
before(:all) do
|
||||
User.delete_all
|
||||
@user_types = [:austin_user, :dallas_user, :miami_user, :seattle_user]
|
||||
MusicianSearch::GIG_RANGES.each do |range|
|
||||
@user_types.each do |utype|
|
||||
user_types.each do |utype|
|
||||
FactoryGirl.create(utype, :concert_count => rand(range))
|
||||
end
|
||||
end
|
||||
|
|
@ -88,7 +87,7 @@ describe 'Musician Search Model' do
|
|||
it "filters by gig count" do
|
||||
MusicianSearch::GIG_COUNTS[1..-1].each do |count|
|
||||
search.update_json_value(MusicianSearch::KEY_GIGS, count)
|
||||
expect(search.do_search.count).to eq(@user_types.count)
|
||||
expect(search.do_search.count).to eq(user_types.count)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -96,9 +95,8 @@ describe 'Musician Search Model' do
|
|||
describe "filtering by studio" do
|
||||
before(:all) do
|
||||
User.delete_all
|
||||
@user_types = [:austin_user, :dallas_user, :miami_user, :seattle_user]
|
||||
MusicianSearch::STUDIO_RANGES.each do |range|
|
||||
@user_types.each do |utype|
|
||||
user_types.each do |utype|
|
||||
FactoryGirl.create(utype, :studio_session_count => rand(range))
|
||||
end
|
||||
end
|
||||
|
|
@ -112,13 +110,27 @@ describe 'Musician Search Model' do
|
|||
it "filters by studio count" do
|
||||
MusicianSearch::STUDIO_COUNTS[1..-1].each do |count|
|
||||
search.update_json_value(MusicianSearch::KEY_STUDIOS, count)
|
||||
expect(search.do_search.count).to eq(@user_types.count)
|
||||
expect(search.do_search.count).to eq(user_types.count)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
it "filters skills" do
|
||||
describe "filters skills" do
|
||||
before(:all) do
|
||||
User.delete_all
|
||||
MusicianSearch::SKILL_VALS.each do |val|
|
||||
user_types.each { |utype| FactoryGirl.create(utype, :skill_level => val) }
|
||||
end
|
||||
end
|
||||
|
||||
it "get expected number per skill" do
|
||||
MusicianSearch::SKILL_VALS[1..-1].each do |val|
|
||||
search.update_json_value(MusicianSearch::KEY_SKILL, val)
|
||||
expect(search.do_search.count).to eq(user_types.count)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
it "filters interests" do
|
||||
end
|
||||
it "filters genres" do
|
||||
|
|
|
|||
Loading…
Reference in New Issue