dev_commands 0.0.14 → 0.0.15

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f9735ba699f23220a2ef5cd5d44c6ae602bbfb2e
4
- data.tar.gz: 47c2bcb06cc628f1b7da900eae8647dd3de6708e
3
+ metadata.gz: 1395060459405d06abfe9eceb2e6b26eecb31dac
4
+ data.tar.gz: b3b04ad925e635bd7fabc683e7b76803b478fe92
5
5
  SHA512:
6
- metadata.gz: be18a1c6a3870e0ccb80e34d1ea9fd58d1b61934d7940507a4c64d3d72d3fed8a6de6cb10b2e4310f80dcb0bfa6c832a9b7f6bb8f678010b5c2b8af8e5777687
7
- data.tar.gz: b4db894727c08625dfdcb67c10a8c789fe264e2818971c4dd79953e4219f09976c4861f256979d2996dd7b87237570a259f0db7d6cae17a9445a6a3ac309ee16
6
+ metadata.gz: 772e2a96a3b7db63c4adedfa532eac1629727776f41be24b91e6003c687f33a31f56db0355437c5ddb692a78acfaf989ba179b2a1c8058116f96ffd31b0f671e
7
+ data.tar.gz: df0982510f6a7715bef37221883cb9afd0d4fb210c83930c0bca28cbebd2c41476d9bfb2244b5aa1793185beb89c7acd09159d6226b3da532aba836ad8f7bf70
data/README.md CHANGED
@@ -49,6 +49,13 @@ Using commands in a hash
49
49
 
50
50
  ```
51
51
 
52
+ CLEAN and CLOBBER are defined by dev_command, the default values may be overridden with
53
+
54
+ ```
55
+ CLEAN.clear
56
+ CLOBBER.clear
57
+ ```
58
+
52
59
  ### License
53
60
  Copyright 2014-2015 Lou Parslow
54
61
 
data/lib/clean.rb ADDED
@@ -0,0 +1,14 @@
1
+ class Clean < Array
2
+ def update
3
+ ['.yardoc','log','tmp','obj'].each{|dir|
4
+ CLEAN.include(dir) if File.exists?(dir)
5
+ }
6
+
7
+ #CLEAN.include('.yardoc','log','tmp','*.gem','obj')
8
+ CLEAN.include('*.gem')
9
+ CLEAN.include('**/*.{suo,sdf}')
10
+
11
+ add '<%Rake::Task[:clean].reenable%>'
12
+ add '<%Rake::Task[:clean].invoke%>'
13
+ end
14
+ end
data/lib/clobber.rb ADDED
@@ -0,0 +1,13 @@
1
+ class Clobber < Array
2
+ def update
3
+ ['bin','lib'].each{|dir|
4
+ CLEAN.include(dir) if File.exists?(dir)
5
+ }
6
+
7
+ clean=Clean.new
8
+ clean.update
9
+
10
+ add '<%Rake::Task[:clobber].reenable%>'
11
+ add '<%Rake::Task[:clobber].invoke%>'
12
+ end
13
+ end
data/lib/command.rb CHANGED
@@ -1,5 +1,3 @@
1
- # encoding: utf-8
2
-
3
1
  require 'open3'
4
2
  require_relative('./array.rb')
5
3
  require_relative('./hash.rb')
@@ -45,11 +43,8 @@ class Command < Hash
45
43
  ruby = self[:input].gsub("<%","").gsub("%>","")
46
44
 
47
45
  begin
48
- #puts "eval(#{ruby})"
49
46
  self[:output]=eval(ruby)
50
47
  rescue
51
- #puts "unable to eval(#{ruby})"
52
- #raise "unable to eval(#{ruby})"
53
48
  self[:exit_code]=1
54
49
  self[:error]="unable to eval(#{ruby})"
55
50
  end
@@ -62,7 +57,6 @@ class Command < Hash
62
57
  self[:exit_code]=status.to_i
63
58
  self[:elapsed] = timer.elapsed_str
64
59
  self[:end_time] = Time.now
65
- #self[:exit_code]=$?.to_i
66
60
  rescue Exception => e
67
61
  self[:elapsed] = timer.elapsed_str
68
62
  self[:end_time] = Time.now
@@ -80,7 +74,9 @@ class Command < Hash
80
74
  puts self[:output]
81
75
  puts self[:error]
82
76
  puts ' '
83
- raise "#{self[:input]} failed" unless self.has_key?(ç) && self[:ignore_failure]
77
+ if(!self.has_key?(:ignore_failure) || !self[:ignore_failure])
78
+ raise "#{self[:input]} failed"
79
+ end #unless (self.has_key?(:ignore_failure) && self[:ignore_failure]==true)
84
80
  end
85
81
  end
86
82
 
@@ -98,6 +94,20 @@ class Command < Hash
98
94
  ENV['USER'].nil? ? ENV['USERNAME'] : ENV['USER']
99
95
  end
100
96
 
97
+ def self.exit_code command
98
+ cmd = Command.new(command)
99
+ cmd[:ignore_failure]=true
100
+ cmd.execute
101
+ cmd[:exit_code]
102
+ end
103
+
104
+ def self.output command
105
+ cmd = Command.new(command)
106
+ cmd[:ignore_failure]=true
107
+ cmd.execute
108
+ cmd[:output]
109
+ end
110
+
101
111
  def to_html
102
112
  if self[:exit_code] == 0
103
113
  [
data/lib/commands.rb CHANGED
@@ -4,6 +4,8 @@ require_relative('build.rb')
4
4
  require_relative('test.rb')
5
5
  require_relative('publish.rb')
6
6
  require_relative('doc.rb')
7
+ require_relative('clean.rb')
8
+ require_relative('clobber.rb')
7
9
  require_relative('add.rb')
8
10
  require_relative('commit.rb')
9
11
  require_relative('push.rb')
@@ -17,6 +19,7 @@ class Commands < Hash
17
19
  self[:test]=Test.new
18
20
  self[:publish]=Publish.new
19
21
  self[:doc]=Doc.new
22
+ self[:clean]=Clean.new
20
23
  self[:add]=Add.new
21
24
  self[:commit]=Commit.new
22
25
  self[:push]=Push.new
data/lib/dev_commands.rb CHANGED
@@ -1,7 +1,15 @@
1
1
  require 'json'
2
2
  require 'rake/clean'
3
+
4
+ #CLEAN.include('.yardoc','log','tmp','*.gem','obj')
5
+ #CLEAN.include('**/*.{suo,sdf}')
6
+ CLOBBER.include('bin','doc')
7
+
8
+
3
9
  require_relative('command.rb')
4
10
  require_relative('commands.rb')
5
11
  require_relative('text.rb')
6
12
  require_relative('gemspec.rb')
7
13
  require_relative('git.rb')
14
+
15
+ COMMANDS=Commands.new
data/lib/doc.rb CHANGED
@@ -1,8 +1,8 @@
1
1
  class Doc < Array
2
2
  def update
3
- cmd=Command.new ({ :input => 'yard --version', :ignore_failure => true})
4
- cmd.execute
5
- if(cmd[:exit_code]==0)
3
+ #cmd=Command.new ({ :input => 'yard --version', :ignore_failure => true})
4
+ #cmd.execute
5
+ if(Command.exit_code('yard --version'))
6
6
  add 'yard doc - LICENSE' if File.exists?('README.md') && File.exists?('LICENSE')
7
7
  end
8
8
  end
data/spec/command_spec.rb CHANGED
@@ -95,6 +95,15 @@ describe Command do
95
95
  File.open('commands.html','w'){|f|f.write(commands.to_html)}
96
96
  end
97
97
 
98
+ it "hsould be able to get the output" do
99
+ expect(Command.output('git --version').include?('git version')).to eq(true)
100
+ expect(Command.output('bogus --version').include?('bogus version')).to eq(false)
101
+ end
102
+
103
+ it "should be able to get the exit_code" do
104
+ expect(Command.exit_code('rake --version')).to eq(0)
105
+ expect(Command.exit_code('bogus --version')).not_to eq(0)
106
+ end
98
107
  #it "should fail this test" do
99
108
  # expect(false).to eq(true)
100
109
  #end
data/spec/text_spec.rb ADDED
@@ -0,0 +1,12 @@
1
+ require_relative '../lib/text.rb'
2
+
3
+ describe Text do
4
+ it "should be able to replace text in file" do
5
+ FileUtils.mkdir('tmp') if(!File.exists?('tmp'))
6
+ File.open('tmp/test.txt','w'){|f|
7
+ f.write("test thing")
8
+ }
9
+ Text.replace_in_file('tmp/test.txt','thing','string')
10
+ expect(IO.read('tmp/test.txt').include?('test string')).to eq(true)
11
+ end
12
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dev_commands
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.14
4
+ version: 0.0.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lou Parslow
@@ -131,6 +131,8 @@ files:
131
131
  - lib/add.rb
132
132
  - lib/array.rb
133
133
  - lib/build.rb
134
+ - lib/clean.rb
135
+ - lib/clobber.rb
134
136
  - lib/command.rb
135
137
  - lib/commands.rb
136
138
  - lib/commit.rb
@@ -147,6 +149,7 @@ files:
147
149
  - lib/timer.rb
148
150
  - spec/command_spec.rb
149
151
  - spec/commands_spec.rb
152
+ - spec/text_spec.rb
150
153
  - LICENSE
151
154
  - README.md
152
155
  homepage: http://github.com/lou-parslow/dev_commands.gem