Sha256: 19ecd58ce5734196832e40d674f88501793a7bbf46cedcd4796ed06b19f7fe14

Contents?: true

Size: 1.17 KB

Versions: 2

Compression:

Stored size: 1.17 KB

Contents

require 'test_helper'
require 'feature'
require 'resolvers/group'

class CanaryLabsTest < ActiveSupport::TestCase
  setup do
    CanaryLabs.setup
  end

  test "truth" do
    assert_kind_of Module, CanaryLabs
  end

  def test_add_feature
    CanaryLabs.add :added_feat, '', CanaryLabs::Resolvers::Group.new([])

    assert_includes(
      CanaryLabs.all,
      Feature.new(:added_feat, '', CanaryLabs::Resolvers::Group.new([])),
    )
  end

  def test_find_feature_by_name
    CanaryLabs.add :feat_to_find, '', CanaryLabs::Resolvers::Group.new([])

    assert_equal(
      Feature.new(:feat_to_find, '', CanaryLabs::Resolvers::Group.new([])),
      CanaryLabs.find(:feat_to_find),
    )
  end

  def test_participating_by_name
    CanaryLabs.add :feat, '', CanaryLabs::Resolvers::Group.new(['my_id'])

    assert CanaryLabs.participating? :feat, 'my_id'
  end

  def test_participating_with_bad_name
    assert CanaryLabs.participating? :bad_name, 'my_id'
  end

  def test_list_all_feats
    CanaryLabs.add :feat_a, '', CanaryLabs::Resolvers::Group.new([])

    all_feats = CanaryLabs.all

    assert_includes all_feats, Feature.new(:feat_a, '', CanaryLabs::Resolvers::Group.new([]))
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
canary_labs-0.4.0 test/canary_labs_test.rb
canary_labs-0.3.0 test/canary_labs_test.rb