Sha256: cc43e85fca8b6cc9c76cb60b4b4ae544d38ca5d2cc085d0aaf9bf63479e38c75

Contents?: true

Size: 819 Bytes

Versions: 7

Compression:

Stored size: 819 Bytes

Contents

require "spec_helper"

describe Split::Algorithms::WeightedSample do
  it "should return an alternative" do
    experiment = Split::Experiment.find_or_create('link_color', {'blue' => 100}, {'red' => 0 })
    Split::Algorithms::WeightedSample.choose_alternative(experiment).class.should == Split::Alternative
  end

  it "should always return a heavily weighted option" do
    experiment = Split::Experiment.find_or_create('link_color', {'blue' => 100}, {'red' => 0 })
    Split::Algorithms::WeightedSample.choose_alternative(experiment).name.should == 'blue'
  end
  
  it "should return one of the results" do
    experiment = Split::Experiment.find_or_create('link_color', {'blue' => 1}, {'red' => 1 })
    ['red', 'blue'].should include Split::Algorithms::WeightedSample.choose_alternative(experiment).name
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
split-0.6.5 spec/algorithms/weighted_sample_spec.rb
split-0.6.4 spec/algorithms/weighted_sample_spec.rb
split-0.6.3 spec/algorithms/weighted_sample_spec.rb
split-0.6.2 spec/algorithms/weighted_sample_spec.rb
split-0.6.1 spec/algorithms/weighted_sample_spec.rb
split-0.6.0 spec/algorithms/weighted_sample_spec.rb
split-0.5.0 spec/algorithms/weighted_sample_spec.rb