From 8dac49548c18c9edd52e29ce75247e8c97edb00c Mon Sep 17 00:00:00 2001 From: Jeremy Cook Date: Sun, 5 Jan 2014 14:27:52 -0500 Subject: [PATCH] Added command to display current version of homesick. --- Rakefile | 3 ++- lib/homesick.rb | 10 ++++++++++ lib/homesick/version.rb | 10 ++++++++++ spec/homesick_spec.rb | 7 +++++++ 4 files changed, 29 insertions(+), 1 deletion(-) create mode 100644 lib/homesick/version.rb diff --git a/Rakefile b/Rakefile index 996e98e..b55731d 100644 --- a/Rakefile +++ b/Rakefile @@ -1,5 +1,6 @@ require 'rubygems' require 'bundler' +require_relative 'lib/homesick/version' begin Bundler.setup(:default, :development) rescue Bundler::BundlerError => e @@ -23,7 +24,7 @@ Jeweler::Tasks.new do |gem| gem.email = ["josh@technicalpickles.com", "info@muratayusuke.com"] gem.homepage = "http://github.com/technicalpickles/homesick" gem.authors = ["Joshua Nichols", "Yusuke Murata"] - gem.version = "0.9.7" + gem.version = Homesick::Version::STRING gem.license = "MIT" # Have dependencies? Add them to Gemfile diff --git a/lib/homesick.rb b/lib/homesick.rb index eb19073..039de4a 100644 --- a/lib/homesick.rb +++ b/lib/homesick.rb @@ -4,9 +4,11 @@ require 'thor' class Homesick < Thor autoload :Shell, 'homesick/shell' autoload :Actions, 'homesick/actions' + autoload :Version, 'homesick/version' include Thor::Actions include Homesick::Actions + include Homesick::Version add_runtime_options! @@ -15,6 +17,9 @@ class Homesick < Thor DEFAULT_CASTLE_NAME = 'dotfiles' + map '-v' => :version + map '--version' => :version + def initialize(args = [], options = {}, config = {}) super self.shell = Homesick::Shell.new @@ -264,6 +269,11 @@ class Homesick < Thor end end + desc 'version', 'Display the current version of homesick' + def version + say Homesick::Version::STRING + end + protected def home_dir diff --git a/lib/homesick/version.rb b/lib/homesick/version.rb new file mode 100644 index 0000000..8e372a2 --- /dev/null +++ b/lib/homesick/version.rb @@ -0,0 +1,10 @@ +# -*- encoding : utf-8 -*- +class Homesick + module Version + MAJOR = 0 + MINOR = 9 + PATCH = 8 + + STRING = "#{MAJOR}.#{MINOR}.#{PATCH}" + end +end diff --git a/spec/homesick_spec.rb b/spec/homesick_spec.rb index 830f2ca..cd23742 100644 --- a/spec/homesick_spec.rb +++ b/spec/homesick_spec.rb @@ -565,4 +565,11 @@ describe 'homesick' do expect { homesick.open "castle_repo" }.to raise_error(SystemExit) end end + + describe 'version' do + it 'should print the current version of homesick' do + text = Capture.stdout { homesick.version } + text.chomp.should =~ /\d+\.\d+\.\d+/ + end + end end