Class: NumberifyStringFunctionTest

Inherits:
Test::Unit::TestCase
  • Object
show all
Includes:
MoreMath::Functions
Defined in:
tests/numberify_string_function_test.rb

Instance Method Summary collapse

Methods included from MoreMath::Functions

#beta, beta, #beta_regularized, beta_regularized, #cantor_pairing, cantor_pairing, #cantor_pairing_inv, cantor_pairing_inv, #erf, #erfc, #gamma, gamma, #gammaP_regularized, gammaP_regularized, #gammaQ_regularized, gammaQ_regularized, #log_beta, log_beta, #log_ceil, log_ceil, #log_floor, log_floor, #log_gamma, #logb, logb, #numberify_string, numberify_string, #stringify_number, stringify_number

Instance Method Details

#test_log_ceilObject



9
10
11
12
13
14
15
# File 'tests/numberify_string_function_test.rb', line 9

def test_log_ceil
  assert_raise(ArgumentError) { log_ceil(-1) }
  assert_raise(ArgumentError) { log_ceil(0) }
  for x in 1..256
    assert_equal logb(x).ceil, log_ceil(x), "log_ceil(#{x}) failed"
  end
end

#test_log_floorObject



17
18
19
20
21
22
23
# File 'tests/numberify_string_function_test.rb', line 17

def test_log_floor
  assert_raise(ArgumentError) { log_floor(-1) }
  assert_raise(ArgumentError) { log_floor(0) }
  for x in 1..256
    assert_equal logb(x).floor, log_floor(x), "log_floor(#{x}) failed"
  end
end

#test_numberify_string_functionObject



25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'tests/numberify_string_function_test.rb', line 25

def test_numberify_string_function
  assert_equal 0, numberify_string('', 'ab')
  assert_equal 1, numberify_string('a', 'ab')
  assert_equal 2, numberify_string('b', 'ab')
  assert_equal 3, numberify_string('aa', 'ab')
  assert_equal 4, numberify_string('ab', 'ab')
  assert_equal 5, numberify_string('ba', 'ab')
  assert_equal 6, numberify_string('bb', 'ab')

  assert_equal 0, numberify_string('', 'abc')
  assert_equal 1, numberify_string('a', 'abc')
  assert_equal 2, numberify_string('b', 'abc')
  assert_equal 3, numberify_string('c', 'abc')
  assert_equal 4, numberify_string('aa', 'abc')
  assert_equal 5, numberify_string('ab', 'abc')
  assert_equal 5, numberify_string('ab', %w[a b c])
  assert_equal 5, numberify_string('ab', 'a'..'c')
end

#test_numberify_string_inv_functionObject



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'tests/numberify_string_function_test.rb', line 44

def test_numberify_string_inv_function
  assert_raise(ArgumentError) { stringify_number(-1, 'ab') }
  assert_equal '', stringify_number(0, 'ab')
  assert_equal 'a', stringify_number(1, 'ab')
  assert_equal 'b', stringify_number(2, 'ab')
  assert_equal 'aa', stringify_number(3, 'ab')
  assert_equal 'ab', stringify_number(4, 'ab')
  assert_equal 'ba', stringify_number(5, 'ab')
  assert_equal 'bb', stringify_number(6, 'ab')

  assert_raise(ArgumentError) { stringify_number(-1, 'abc') }
  assert_equal '', stringify_number(0, 'abc')
  assert_equal 'a', stringify_number(1, 'abc')
  assert_equal 'b', stringify_number(2, 'abc')
  assert_equal 'c', stringify_number(3, 'abc')
  assert_equal 'aa', stringify_number(4, 'abc')
  assert_equal 'ab', stringify_number(5, 'abc')
end