Sha256: 6f7b446c2c69e9055abf23f425a3de4d705aa9dc468b60eb1a803ec9b71baff5

Contents?: true

Size: 1.35 KB

Versions: 3

Compression:

Stored size: 1.35 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/test_helper.rb')

class TestFakerInternet < Test::Unit::TestCase

  def setup
    @tester = Faker::Internet
  end
  
  def test_email
    assert @tester.email.match(/.+@.+\.\w+/)
  end
  
  def test_free_email
    assert @tester.free_email.match(/.+@(gmail|hotmail|yahoo)\.com/)
  end
  
  def test_user_name
    assert @tester.user_name.match(/[a-z]+((_|\.)[a-z]+)?/)
  end
  
  def test_user_name_with_arg
    assert @tester.user_name('bo peep').match(/(bo(_|\.)peep|peep(_|\.)bo)/)
  end
  
  def test_domain_name
    assert @tester.domain_name.match(/\w+\.\w+/)
  end
  
  def test_domain_word
    assert @tester.domain_word.match(/^\w+$/)
  end
  
  def test_domain_suffix
    assert @tester.domain_suffix.match(/^\w+(\.\w+)?/)
  end

  def test_ip_v4_address
    assert_equal 3, @tester.ip_v4_address.count('.')

    1000.times do
      assert @tester.ip_v4_address.split('.').map{|octet| octet.to_i}.max <= 255
    end
  end

  def test_ip_v6_address
    assert_equal 7, @tester.ip_v6_address.count(':')

    1000.times do
      assert @tester.ip_v6_address.split('.').map{|h| "0x#{h}".hex}.max <= 65535
    end
  end
  
  def test_mac_address
    assert_equal 5, @tester.mac_address.count(':')
    
    1000.times do
      assert @tester.mac_address.split(':').map {|octet| "0x#{octet}".hex}.max <= 255
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
faker19-1.0.2 test/test_faker_internet.rb
faker19-1.0.1 test/test_faker_internet.rb
faker19-1.0.0 test/test_faker_internet.rb