Class: Semmy::VersionFile::Update

Inherits:
Struct
  • Object
show all
Defined in:
lib/semmy/version_file.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#new_versionObject

Returns the value of attribute new_version

Returns:

  • (Object)

    the current value of new_version



26
27
28
# File 'lib/semmy/version_file.rb', line 26

def new_version
  @new_version
end

Instance Method Details

#call(contents) ⇒ Object



27
28
29
30
31
32
33
34
# File 'lib/semmy/version_file.rb', line 27

def call(contents)
  contents.dup.tap do |result|
    result.gsub!(/VERSION\s*=\s*(['"])[^']+['"]/,
                 "VERSION = \\1#{new_version}\\1") ||
      fail(UpdateFailed,
           "Could not update version to #{new_version} in\n\n#{contents}\n\n")
  end
end