fruit_to_lime 0.8.1 → 0.8.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,5 +1,5 @@
1
1
  require "fileutils"
2
-
2
+ require 'open3'
3
3
  module FruitToLime
4
4
  class Templating
5
5
  def initialize(path)
@@ -10,19 +10,37 @@ module FruitToLime
10
10
  Dir.entries(@path).select { |d| d != '.' && d != '..' }
11
11
  end
12
12
 
13
+ def exec_but_dont_show_unless_error(cmd)
14
+ std_out_value = []
15
+ Open3.popen3(cmd) do |stdin, stdout, stderr, wait_thr|
16
+ while std_line = stdout.gets
17
+ std_out_value<<std_line
18
+ end
19
+
20
+ exit_status = wait_thr.value
21
+ if !exit_status.success?
22
+ puts "Failed with #{exit_status}"
23
+ puts "std_out_value"
24
+ puts std_out_value
25
+
26
+ raise "failed exec #{cmd}"
27
+ end
28
+ end
29
+ end
30
+
13
31
  def unpack(name, path)
14
32
  template = list.find { |t| t == name }
15
33
  if template
16
34
  unpackedname = name
17
35
 
18
- puts "Unpacking template #{name} to #{path}"
19
- FileUtils.cp_r File.expand_path(name, @path), path
36
+ puts "Unpacking template #{name} to #{path}"
37
+ FileUtils.cp_r File.expand_path(name, @path), path
20
38
 
21
- # Now make sure all gems in template are installed
22
- puts "Making sure all needed gems are present"
23
- Dir.chdir(File.expand_path(unpackedname, path)) do
24
- `bundle install`
25
- end
39
+ # Now make sure all gems in template are installed
40
+ puts "Making sure all needed gems are present"
41
+ Dir.chdir(File.expand_path(unpackedname, path)) do
42
+ exec_but_dont_show_unless_error('bundle install --verbose')
43
+ end
26
44
  true
27
45
  else
28
46
  puts "Unable to find template #{name}"
@@ -1,6 +1,14 @@
1
1
  require 'fileutils'
2
2
  require 'tmpdir'
3
3
 
4
+ def execute_command_with_success(cmd)
5
+ system(cmd)
6
+ if ! $?.success?
7
+ puts "Failed with #{$?}"
8
+ raise "failed! #{cmd}"
9
+ end
10
+ end
11
+
4
12
  describe 'Templating' do
5
13
  let(:templating) { FruitToLime::Templating.new(File.expand_path("../templates", File.dirname(__FILE__))) }
6
14
 
@@ -21,8 +29,8 @@ describe 'Templating' do
21
29
  templating.list().each {|t|
22
30
  templating.unpack t, unpack_path
23
31
  Dir.chdir(File.expand_path(t, unpack_path)) do
24
- `rake spec`
25
- end
32
+ execute_command_with_success('rake spec')
33
+ end
26
34
  }
27
35
  end
28
36
 
@@ -5,7 +5,7 @@ describe 'ToModel' do
5
5
  before(:all) do
6
6
  toModel = ToModel.new
7
7
  organizations_file =File.join(File.dirname(__FILE__), 'sample_data', 'organizations.csv')
8
- @model = toModel.to_model(organizations_file, persons_file)
8
+ @model = toModel.to_model(organizations_file)
9
9
  end
10
10
  it "will find something with a name" do
11
11
  organization = @model.organizations[0]
@@ -32,8 +32,8 @@ class Cli < Thor
32
32
  desc "to_go ORGANIZATION FILE", "Converts excel file to Go xml format. ORGANIZATIONS is path to input file. FILE is output file where Go xml will go."
33
33
  def to_go(organizations, file = nil)
34
34
  file = 'export.xml' if file == nil
35
- scala = ScalaToModel.new()
36
- model = scala.to_model(organizations)
35
+ toModel = ToModel.new()
36
+ model = toModel.to_model(organizations)
37
37
  model.serialize_to_file(file)
38
38
  end
39
39
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fruit_to_lime
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.8.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2013-12-19 00:00:00.000000000 Z
14
+ date: 2014-02-13 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: iso_country_codes
@@ -45,6 +45,22 @@ dependencies:
45
45
  - - ! '>='
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0'
48
+ - !ruby/object:Gem::Dependency
49
+ name: thor
50
+ requirement: !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ! '>='
54
+ - !ruby/object:Gem::Version
55
+ version: '0'
56
+ type: :runtime
57
+ prerelease: false
58
+ version_requirements: !ruby/object:Gem::Requirement
59
+ none: false
60
+ requirements:
61
+ - - ! '>='
62
+ - !ruby/object:Gem::Version
63
+ version: '0'
48
64
  - !ruby/object:Gem::Dependency
49
65
  name: rspec
50
66
  requirement: !ruby/object:Gem::Requirement