Sha256: 272a314587a0b2cc0892e81d5e00b1542f6616d6086f12ab8a43e0c778d20e25

Contents?: true

Size: 1.33 KB

Versions: 17

Compression:

Stored size: 1.33 KB

Contents

require File.dirname(__FILE__) + '/helper'

class TestConditionsTries < Test::Unit::TestCase
  # valid?
  
  def test_valid_should_return_false_if_times_not_set
    c = Conditions::Tries.new
    c.watch = stub(:name => 'foo')
    assert !c.valid?
  end
end


class TestConditionsTries < Test::Unit::TestCase
  def setup
    @c = Conditions::Tries.new
    @c.times = 3
    @c.prepare
  end
  
  # prepare
  
  def test_prepare_should_create_timeline
    assert 3, @c.instance_variable_get(:@timeline).instance_variable_get(:@max_size)
  end
  
  # test
  
  def test_test_should_return_true_if_called_three_times_within_one_second
    assert !@c.test
    assert !@c.test
    assert @c.test
  end
  
  # reset
  
  def test_test_should_return_false_on_fourth_call_if_called_three_times_within_one_second
    3.times { @c.test }
    @c.reset
    assert !@c.test
  end
end


class TestConditionsTriesWithin < Test::Unit::TestCase
  def setup
    @c = Conditions::Tries.new
    @c.times = 3
    @c.within = 1.seconds
    @c.prepare
  end
  
  # test
  
  def test_test_should_return_true_if_called_three_times_within_one_second
    assert !@c.test
    assert !@c.test
    assert @c.test
  end
  
  def test_test_should_return_false_if_called_three_times_within_two_seconds
    assert !@c.test
    assert !@c.test
    assert sleep(1.1)
    assert !@c.test
  end
end

Version data entries

17 entries across 17 versions & 4 rubygems

Version Path
mojombo-god-0.7.20 test/test_conditions_tries.rb
firenxis-god-0.11.0 test/test_conditions_tries.rb
god-0.11.0 test/test_conditions_tries.rb
god-0.10.1 test/test_conditions_tries.rb
god-0.9.0 test/test_conditions_tries.rb
olgen-god-0.9.2 test/test_conditions_tries.rb
olgen-god-0.9.1 test/test_conditions_tries.rb
olgen-god-0.9.0 test/test_conditions_tries.rb
god-0.8.0 test/test_conditions_tries.rb
olgen-god-0.8.2 test/test_conditions_tries.rb
olgen-god-0.8.1 test/test_conditions_tries.rb
olgen-god-0.8.0 test/test_conditions_tries.rb
god-0.7.22 test/test_conditions_tries.rb
god-0.7.21 test/test_conditions_tries.rb
god-0.7.20 test/test_conditions_tries.rb
god-0.7.19 test/test_conditions_tries.rb
god-0.7.18 test/test_conditions_tries.rb