Sha256: 95f0c1e72379bc3ef96f6140b69c6269ad56bb4878d55fde251b55297dd6a30d

Contents?: true

Size: 911 Bytes

Versions: 17

Compression:

Stored size: 911 Bytes

Contents

require_relative "test_helper"

class TestVisitProperties < Minitest::Test
  def setup
    request = MiniTest::Mock.new
    @visit_properties = Ahoy::VisitProperties.new(request)
  end

  def test_keys
    with_geocode(true) do
      assert_equal @visit_properties.keys, Ahoy::VisitProperties::KEYS
    end
  end

  def test_keys_when_geocode_disabled
    with_geocode(false) do
      keys = @visit_properties.keys

      refute keys.include?(:country)
      refute keys.include?(:region)
      refute keys.include?(:city)
    end
  end

  def test_keys_when_geocode_async
    with_geocode(:async) do
      keys = @visit_properties.keys

      refute keys.include?(:country)
      refute keys.include?(:region)
      refute keys.include?(:city)
    end
  end

  private

  def with_geocode(enabled)
    original = Ahoy.geocode
    Ahoy.geocode = enabled
    yield
  ensure
    Ahoy.geocode = original
  end
end

Version data entries

17 entries across 17 versions & 1 rubygems

Version Path
ahoy_matey-1.6.1 test/visit_properties_test.rb
ahoy_matey-1.6.0 test/visit_properties_test.rb
ahoy_matey-1.5.5 test/visit_properties_test.rb
ahoy_matey-1.5.4 test/visit_properties_test.rb
ahoy_matey-1.5.3 test/visit_properties_test.rb
ahoy_matey-1.5.2 test/visit_properties_test.rb
ahoy_matey-1.5.1 test/visit_properties_test.rb
ahoy_matey-1.5.0 test/visit_properties_test.rb
ahoy_matey-1.4.2 test/visit_properties_test.rb
ahoy_matey-1.4.1 test/visit_properties_test.rb
ahoy_matey-1.4.0 test/visit_properties_test.rb
ahoy_matey-1.3.1 test/visit_properties_test.rb
ahoy_matey-1.3.0 test/visit_properties_test.rb
ahoy_matey-1.2.2 test/visit_properties_test.rb
ahoy_matey-1.2.1 test/visit_properties_test.rb
ahoy_matey-1.2.0 test/visit_properties_test.rb
ahoy_matey-1.1.1 test/visit_properties_test.rb