expansions 0.4.33 → 0.4.34

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: 4cded197400bbf924399c1f9fa721ef57da0e88b
4
- data.tar.gz: 91a2f79e7fd6369b696249d1e6968eb83b7f9d70
3
+ metadata.gz: 6046ae97940c3fab57fa282f1d0ff83d98a9fbb7
4
+ data.tar.gz: 61944c393d2e5b01345dd0034bababe455f23cc6
5
5
  SHA512:
6
- metadata.gz: 6d0dcdda88d70c6f5915cc317126a4d77bc686c350f43929056b114e7a958bbf7d1269f8e642941c037f47152f844cf4aa4ad4153a06f2889d73bd2859e51f00
7
- data.tar.gz: 243cb9f686dded797f0d90bad37a21fe149b2553ce21bdf83d51500507634c219d3295b6c32147a145f1898b697bda6adc38aa35b1d27ee1c2e92327740dd38b
6
+ metadata.gz: 6c9ba5a75fd6dc2e1929a3c98e7193d543d83af160d2b42581bca1b6003f2040ab5947c78ecf481a885ce208b26923f46af842bafad508da4a6a71f1b42bed6a
7
+ data.tar.gz: be8ddabe704ba220a48866dfe497c59c01485284f5982c4332c5f0995b0182d9595d17e3d942c1266d2f118972935721b0981933771b6ab58a151af27b056934
@@ -11,28 +11,34 @@ module Expansions
11
11
 
12
12
  def run_using(file_name)
13
13
  processor = processors.get_processor_for(file_name)
14
-
15
- generated_name = File.basename(file_name,File.extname(file_name))
16
-
17
- load_settings_file(File.dirname(file_name), generated_name)
18
-
19
- generated_name = generated_name.gsub(DOT_FILE_PATTERN, "")
20
-
21
- generated_name = ".#{generated_name}" if (DOT_FILE_PATTERN =~ file_name)
22
-
23
- output = File.join(File.dirname(file_name),generated_name)
24
-
14
+ names = get_file_names(file_name)
15
+ load_settings_file(names[:settings_file])
16
+ output = names[:output_file_name]
25
17
  file.delete(output) if file.exists?(output)
26
18
 
27
- processor.process(:input => file_name,:output => output)
19
+ begin
20
+ processor.process(:input => file_name,:output => output)
21
+ rescue Exception => e
22
+ raise "Error processing template file: #{file_name}"
23
+ end
28
24
  end
29
25
 
30
- def load_settings_file(folder, file_name)
31
- settings_file = File.join(folder, "#{file_name}.settings")
26
+ def get_file_names(file_name)
27
+ base_name = File.basename(file_name, File.extname(file_name))
28
+ dir_name = File.dirname(file_name)
29
+ generated_name = base_name.gsub(DOT_FILE_PATTERN, "")
30
+ generated_name = ".#{generated_name}" if (DOT_FILE_PATTERN =~ file_name)
31
+ output_file_name = File.join(dir_name, generated_name)
32
+ settings_file = File.join(dir_name, "#{base_name}.settings")
33
+
34
+ {
35
+ settings_file: settings_file,
36
+ output_file_name: output_file_name
37
+ }
38
+ end
32
39
 
33
- if File.exist?(settings_file)
34
- load settings_file
35
- end
40
+ def load_settings_file(settings_file)
41
+ load settings_file if File.exist?(settings_file)
36
42
  end
37
43
  end
38
44
  end
@@ -1,3 +1,3 @@
1
1
  module Expansions
2
- VERSION = "0.4.33"
2
+ VERSION = "0.4.34"
3
3
  end
@@ -20,7 +20,6 @@ module Expansions
20
20
  context "and the generated file already exists" do
21
21
  let(:file_name){"some.file"}
22
22
  before (:each) do
23
- the_processor.stub(:remove_template_extension_from).and_return(file_name)
24
23
  file.stub(:exists?).with("./some.file").and_return(true)
25
24
  end
26
25
 
@@ -34,7 +33,6 @@ module Expansions
34
33
  context "and the generated file does not already exists" do
35
34
  let(:file_name){"some.file"}
36
35
  before (:each) do
37
- the_processor.stub(:remove_template_extension_from).and_return(file_name)
38
36
  file.stub(:exists?).with("./some.file").and_return(false)
39
37
  end
40
38
 
@@ -53,7 +51,6 @@ module Expansions
53
51
 
54
52
  before (:each) do
55
53
  registry.stub(:get_processor_for).and_return(the_processor)
56
- the_processor.stub(:remove_template_extension_from).ignore_arg.and_return("bashrc.dotfile")
57
54
  end
58
55
  before (:each) do
59
56
  sut.run_using(file_name)
@@ -69,7 +66,6 @@ module Expansions
69
66
 
70
67
  before (:each) do
71
68
  registry.stub(:get_processor_for).and_return(the_processor)
72
- the_processor.stub(:remove_template_extension_from).ignore_arg.and_return("bashrc")
73
69
  end
74
70
  before (:each) do
75
71
  sut.run_using(file_name)
@@ -79,6 +75,29 @@ module Expansions
79
75
  the_processor.should have_received_message(:process,:input => file_name,:output => "blah/bashrc")
80
76
  end
81
77
  end
78
+
79
+ context "and the template processor throw an exception" do
80
+ let(:file_name){"blah/bashrc.erb"}
81
+ let(:options){{}}
82
+ let(:inner) { Exception.new("This is an error") }
83
+
84
+ before (:each) do
85
+ registry.stub(:get_processor_for).and_return(the_processor)
86
+ the_processor.stub(:process).throws(inner)
87
+ end
88
+
89
+ before (:each) do
90
+ begin
91
+ sut.run_using(file_name)
92
+ rescue Exception => e
93
+ @error = e
94
+ end
95
+ end
96
+
97
+ it "should rethrow the exception with details of the file that could not be transformed" do
98
+ expect(@error.message).to match(/Error processing/)
99
+ end
100
+ end
82
101
  end
83
102
  end
84
103
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: expansions
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.33
4
+ version: 0.4.34
5
5
  platform: ruby
6
6
  authors:
7
7
  - Develop With Passion®
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-01 00:00:00.000000000 Z
11
+ date: 2014-12-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: configatron