Module: SceneToolkit::Release::Validations::Name

Included in:
SceneToolkit::Release
Defined in:
lib/scene_toolkit/release/validations/name.rb

Constant Summary collapse

REGEXP =
/^([A-Z0-9\-\_\.\(\)\&]+)\-(\d{4}|\d{3}x|\d{2}xx)\-([A-Z0-9\_\-]+)$/i

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



7
8
9
# File 'lib/scene_toolkit/release/validations/name.rb', line 7

def self.included(base)
  base.register_validation(:name, "Validate release name")
end

Instance Method Details

#valid_name?(params = {}) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
14
15
16
# File 'lib/scene_toolkit/release/validations/name.rb', line 11

def valid_name?(params = {})
  @errors << "#{@name.inspect} is not a valid scene release name" unless @name =~ REGEXP
  @errors << "#{@name.inspect} is lowercased" if @name.eql?(@name.downcase)

  @errors.none?
end