Sha256: 5e706945dc6fdeb513cf3d8b99304d9cf6f50f5cdb1d1b86a251e82e1fdf516a

Contents?: true

Size: 1.64 KB

Versions: 11

Compression:

Stored size: 1.64 KB

Contents

# frozen_string_literal: true

require 'minitest/autorun'
require_relative '../percy/lib/ignore_region'

# Test suite for the IgnoreRegions class
class TestIgnoreRegion < Minitest::Test
  def test_ignore_region_valid_input
    top = 10
    bottom = 20
    left = 30
    right = 40
    ignore_region = Percy::IgnoreRegion.new(top, bottom, left, right)

    assert_equal ignore_region.top, top
    assert_equal ignore_region.bottom, bottom
    assert_equal ignore_region.left, left
    assert_equal ignore_region.right, right
  end

  def test_ignore_region_negative_input
    assert_raises(ArgumentError) { Percy::IgnoreRegion.new(-10, 20, 30, 40) }
    assert_raises(ArgumentError) { Percy::IgnoreRegion.new(10, 20, -30, 40) }
    assert_raises(ArgumentError) { Percy::IgnoreRegion.new(10, 20, 30, -40) }
    assert_raises(ArgumentError) { Percy::IgnoreRegion.new(-10, -20, -30, -40) }
  end

  def test_ignore_region_invalid_input
    assert_raises(ArgumentError) { Percy::IgnoreRegion.new(20, 10, 30, 40) } # bottom < top
    assert_raises(ArgumentError) { Percy::IgnoreRegion.new(10, 20, 40, 30) } # right < left
  end

  def test_ignore_region_is_valid
    ignore_region = Percy::IgnoreRegion.new(10, 20, 30, 40)
    screen_height = 100
    screen_width = 200
    assert_equal true, ignore_region.valid?(screen_height, screen_width)

    ignore_region = Percy::IgnoreRegion.new(10, 200, 30, 400)
    height = 100
    width = 200
    assert_equal false, ignore_region.valid?(height, width)

    ignore_region = Percy::IgnoreRegion.new(10, 20, 30, 40)
    screen_height = 5
    screen_width = 10
    assert_equal false, ignore_region.valid?(screen_height, screen_width)
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
percy-appium-app-1.0.0 specs/ignore_regions.rb
percy-appium-app-0.0.8 specs/ignore_regions.rb
percy-appium-app-0.0.7 specs/ignore_regions.rb
percy-appium-app-0.0.6 specs/ignore_regions.rb
percy-appium-app-0.0.5 specs/ignore_regions.rb
percy-appium-app-0.0.5.pre.beta.1 specs/ignore_regions.rb
percy-appium-app-0.0.5.pre.beta.0 specs/ignore_regions.rb
percy-appium-app-0.0.4 specs/ignore_regions.rb
percy-appium-app-0.0.2.pre.beta.0 specs/ignore_regions.rb
percy-appium-app-0.0.3 specs/ignore_regions.rb
percy-appium-app-0.0.2 specs/ignore_regions.rb