Sha256: e8ca0cd8865a472299681744c5e50e95554ac83372a7df1fd87ede8ca95af39c
Contents?: true
Size: 1.36 KB
Versions: 1
Compression:
Stored size: 1.36 KB
Contents
# frozen_string_literal: true require 'spec_helper' describe Split::ExperimentCatalog do subject { Split::ExperimentCatalog } describe ".find_or_create" do it "should not raise an error when passed strings for alternatives" do expect { subject.find_or_create('xyz', '1', '2', '3') }.not_to raise_error end it "should not raise an error when passed an array for alternatives" do expect { subject.find_or_create('xyz', ['1', '2', '3']) }.not_to raise_error end it "should raise the appropriate error when passed integers for alternatives" do expect { subject.find_or_create('xyz', 1, 2, 3) }.to raise_error(ArgumentError) end it "should raise the appropriate error when passed symbols for alternatives" do expect { subject.find_or_create('xyz', :a, :b, :c) }.to raise_error(ArgumentError) end it "should not raise error when passed an array for goals" do expect { subject.find_or_create({'link_color' => ["purchase", "refund"]}, 'blue', 'red') } .not_to raise_error end it "should not raise error when passed just one goal" do expect { subject.find_or_create({'link_color' => "purchase"}, 'blue', 'red') } .not_to raise_error end it "constructs a new experiment" do expect(subject.find_or_create('my_exp', 'control me').control.to_s).to eq('control me') end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
split-1.4.0 | spec/experiment_catalog_spec.rb |