Sha256: 270ead42a8feeb58f0e85d8887cea20251d457c4d523b141a469ef5c95f6eb9e

Contents?: true

Size: 1.35 KB

Versions: 1

Compression:

Stored size: 1.35 KB

Contents

require_relative "helper"

class TestGmanBin < Minitest::Test

  def setup
    @output, @status = test_bin("whitehouse.gov")
  end

  should "parse the domain" do
    output, status = test_bin("bar.gov")
    assert_match /Domain  : bar.gov/, output

    output, status = test_bin("foo@bar.gov")
    assert_match /Domain  : bar.gov/, output

    output, status = test_bin("http://bar.gov/foo")
    assert_match /Domain  : bar.gov/, output
  end

  should "err on invalid domains" do
    output, status = test_bin("foo.invalid")
    assert_equal 1, status.exitstatus
    assert_match /Invalid domain/, output
  end

  should "err on non-government domains" do
    output, status = test_bin("github.com")
    assert_equal 1, status.exitstatus
    assert_match /Not a government domain/, output
  end

  should "know the type" do
    assert_match /federal/, @output
    assert_equal 0, @status.exitstatus
  end

  should "know the agency" do
    assert_match /Executive Office of the President/, @output
    assert_equal 0, @status.exitstatus
  end

  should "know the country" do
    assert_match /United States/, @output
    assert_equal 0, @status.exitstatus
  end

  should "know the city" do
    assert_match /Washington/, @output
    assert_equal 0, @status.exitstatus
  end

  should "know the state" do
    assert_match /DC/, @output
    assert_equal 0, @status.exitstatus
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gman-4.4.0 test/test_gman_bin.rb