Sha256: 97ca9666b9d9e0aa0536afb748a45974b050c751835d5cc6ebc09cd1103cd38a
Contents?: true
Size: 1.95 KB
Versions: 1
Compression:
Stored size: 1.95 KB
Contents
require_relative "test_helper" class GuineaPigTest < MiniTest::Unit::TestCase def setup GuineaPig::ABTest.destroy_all User.destroy_all GuineaPig::Experiments.stubs(:experiments_path).returns("#{FIXTURES}/ab_experiments.yml") @user = User.create! end def test_get ab_test = GuineaPig.get(:experiment_monkey, @user) ab_test.reload assert_equal("experiment_monkey", ab_test.experiment) assert_includes(["alternative_monkey_1", "alternative_monkey_2"], ab_test.alternative) assert_equal(@user, ab_test.guinea_pig) assert_equal(0, ab_test.seen_count) assert_equal(0, ab_test.conversion_count) end def test_get_multiple_times_for_the_same_guinea_pig_should_return_the_same_alternative first_ab_test = assert_difference "GuineaPig::ABTest.count", 1 do GuineaPig.get(:experiment_monkey, @user) end second_ab_test = assert_difference "GuineaPig::ABTest.count", 0 do GuineaPig.get(:experiment_monkey, @user) end assert_equal(first_ab_test, second_ab_test) end def test_alternative alternatives = 10.times.map { GuineaPig.alternative(:experiment_monkey, User.create!) }.uniq.sort assert_equal(["alternative_monkey_1", "alternative_monkey_2"], alternatives) end def test_update_seen_counter_in_alternative GuineaPig.alternative(:experiment_monkey, @user) assert_equal(1, GuineaPig.get(:experiment_monkey, @user).seen_count) GuineaPig.alternative(:experiment_monkey, @user) assert_equal(2, GuineaPig.get(:experiment_monkey, @user).seen_count) end def test_conversion ab_test = GuineaPig::ABTest.create!(:experiment => :experiment_monkey, :guinea_pig => @user) assert_equal(0, ab_test.conversion_count) GuineaPig.conversion(:experiment_monkey, @user) ab_test.reload assert_equal(1, ab_test.conversion_count) GuineaPig.conversion(:experiment_monkey, @user) ab_test.reload assert_equal(2, ab_test.conversion_count) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
guinea_pig-0.1.3 | test/guinea_pig_test.rb |