Class: CarrierWave::Test::Matchers::BeNoLargerThan

Inherits:
Object
  • Object
show all
Defined in:
lib/carrierwave/test/matchers.rb

Overview

:nodoc:

Instance Method Summary (collapse)

Constructor Details

- (BeNoLargerThan) initialize(width, height)



96
97
98
# File 'lib/carrierwave/test/matchers.rb', line 96

def initialize(width, height)
  @width, @height = width, height
end

Instance Method Details

- (Object) description



117
118
119
# File 'lib/carrierwave/test/matchers.rb', line 117

def description
  "be no larger than #{@width} by #{@height}"
end

- (Object) failure_message



109
110
111
# File 'lib/carrierwave/test/matchers.rb', line 109

def failure_message
  "expected #{@actual.current_path.inspect} to be no larger than #{@width} by #{@height}, but it was #{@actual_width} by #{@actual_height}."
end

- (Boolean) matches?(actual)



100
101
102
103
104
105
106
107
# File 'lib/carrierwave/test/matchers.rb', line 100

def matches?(actual)
  @actual = actual
  # Satisfy expectation here. Return false or raise an error if it's not met.
  image = ImageLoader.load_image(@actual.current_path)
  @actual_width = image.width
  @actual_height = image.height
  @actual_width <= @width && @actual_height <= @height
end

- (Object) negative_failure_message



113
114
115
# File 'lib/carrierwave/test/matchers.rb', line 113

def negative_failure_message
  "expected #{@actual.current_path.inspect} to be larger than #{@width} by #{@height}, but it wasn't."
end