Sha256: a186556d4ec07fe5631f35510fef036fe9f99b74c19d8aae2e154077ac50ea50

Contents?: true

Size: 1.49 KB

Versions: 188

Compression:

Stored size: 1.49 KB

Contents

require 'minitest/autorun'
require_relative 'palindrome_products'

class PalindromesTest < Minitest::Test
  def test_largest_palindrome_from_single_digit_factors
    palindromes = Palindromes.new(max_factor: 9)
    palindromes.generate
    largest = palindromes.largest
    assert_equal 9, largest.value
    assert_includes [[[3, 3], [1, 9]], [[1, 9], [3, 3]]], largest.factors
  end

  def test_largest_palindrome_from_double_digit_factors
    skip
    palindromes = Palindromes.new(max_factor: 99, min_factor: 10)
    palindromes.generate
    largest = palindromes.largest
    assert_equal 9009, largest.value
    assert_equal [[91, 99]], largest.factors
  end

  def test_smallest_palindrome_from_double_digit_factors
    skip
    palindromes = Palindromes.new(max_factor: 99, min_factor: 10)
    palindromes.generate
    smallest = palindromes.smallest
    assert_equal 121, smallest.value
    assert_equal [[11, 11]], smallest.factors
  end

  def test_largest_palindrome_from_triple_digit_factors
    skip
    palindromes = Palindromes.new(max_factor: 999, min_factor: 100)
    palindromes.generate
    largest = palindromes.largest
    assert_equal 906_609, largest.value
    assert_equal [[913, 993]], largest.factors
  end

  def test_smallest_palindrome_from_triple_digit_factors
    skip
    palindromes = Palindromes.new(max_factor: 999, min_factor: 100)
    palindromes.generate
    smallest = palindromes.smallest
    assert_equal 10_201, smallest.value
    assert_equal [[101, 101]], smallest.factors
  end
end

Version data entries

188 entries across 188 versions & 1 rubygems

Version Path
trackler-2.2.1.180 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.179 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.178 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.177 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.176 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.175 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.174 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.173 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.172 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.171 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.170 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.169 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.167 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.166 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.165 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.164 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.163 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.162 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.161 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb
trackler-2.2.1.160 tracks/ruby/exercises/palindrome-products/palindrome_products_test.rb