Class: GitSemverCop::Semver
- Inherits:
-
Object
- Object
- GitSemverCop::Semver
- Defined in:
- lib/git-semver-cop/semver.rb
Overview
Class for modifying and detecting semver
Instance Method Summary collapse
- #added? ⇒ Boolean
-
#ask_add_changes ⇒ Object
# Get user input.
- #ask_increment ⇒ Object
- #enforce ⇒ Object
-
#initialize ⇒ Semver
constructor
A new instance of Semver.
- #modified? ⇒ Boolean
-
#none? ⇒ Boolean
# Check status of semver file.
Constructor Details
#initialize ⇒ Semver
Returns a new instance of Semver.
5 6 7 |
# File 'lib/git-semver-cop/semver.rb', line 5 def initialize @semver = `git status -z .semver`.strip end |
Instance Method Details
#added? ⇒ Boolean
36 37 38 |
# File 'lib/git-semver-cop/semver.rb', line 36 def added? @semver =~ /(M|A) .semver/ end |
#ask_add_changes ⇒ Object
# Get user input
19 20 21 22 |
# File 'lib/git-semver-cop/semver.rb', line 19 def ask_add_changes puts ".semver was modified. Add the file to the commit?\n[y|n]" add_to_git if gets.chomp =~ /^y$/i end |
#ask_increment ⇒ Object
24 25 26 27 28 |
# File 'lib/git-semver-cop/semver.rb', line 24 def ask_increment puts "How big of an increment is this?\n[#{inc_opts.join('|')}]" inc = gets.chomp inc_opts.include?(inc) ? semver_inc(inc) : exit(0) end |
#enforce ⇒ Object
9 10 11 12 13 14 15 |
# File 'lib/git-semver-cop/semver.rb', line 9 def enforce if none? then semver_init elsif added? # Nothing to do elsif modified? then ask_add_changes else ask_increment end end |
#modified? ⇒ Boolean
40 41 42 |
# File 'lib/git-semver-cop/semver.rb', line 40 def modified? @semver =~ /(M|A) .semver/ end |
#none? ⇒ Boolean
# Check status of semver file
32 33 34 |
# File 'lib/git-semver-cop/semver.rb', line 32 def none? !File.exist?(".semver") end |