Paired-with: Jesse Wolfe <[email protected]>
Signed-off-by: Paul Berry <[email protected]>
---
Local-branch: ticket/next/5743
 lib/report_transformer.rb           |    3 +++
 spec/lib/report_transformer_spec.rb |   16 ++++++++++++++++
 2 files changed, 19 insertions(+), 0 deletions(-)

diff --git a/lib/report_transformer.rb b/lib/report_transformer.rb
index 80c8270..3ac44fa 100644
--- a/lib/report_transformer.rb
+++ b/lib/report_transformer.rb
@@ -32,6 +32,9 @@ class ReportTransformer::ZeroToOne < 
ReportTransformer::ReportTransformation
   def self.transform(report)
     report["resource_statuses"] = {}
     report["puppet_version"] = "0.25.x"
+    report["logs"].each do |log|
+      log["version"] ||= log["source"] == "Puppet" ? "0.25.x" : nil
+    end
     report
   end
 end
diff --git a/spec/lib/report_transformer_spec.rb 
b/spec/lib/report_transformer_spec.rb
index 7a8d0f5..cd0419d 100644
--- a/spec/lib/report_transformer_spec.rb
+++ b/spec/lib/report_transformer_spec.rb
@@ -37,6 +37,22 @@ describe ReportTransformer do
       report = ReportTransformer::ZeroToOne.apply(@report)
       report["resource_statuses"].should == {}
     end
+    it "should add Puppet version to logs whose source is Puppet" do
+      @report["logs"] = [{'file'=>nil, 'line'=>nil, 'level'=>:info, 
'message'=>'hello', 'source'=>'Puppet', 'tags'=>%w{foo bar}, 
'time'=>Time.parse("2011-01-01")}]
+      report = ReportTransformer::ZeroToOne.apply(@report)
+      report["logs"][0]["version"].should == "0.25.x"
+    end
+    it "should set version to nil on logs whose source is not Puppet" do
+      @report["logs"] = [{'file'=>nil, 'line'=>nil, 'level'=>:info, 
'message'=>'hello', 'source'=>'File[/foo]', 'tags'=>%w{foo bar}, 
'time'=>Time.parse("2011-01-01")}]
+      report = ReportTransformer::ZeroToOne.apply(@report)
+      report["logs"][0].keys.should include("version")
+      report["logs"][0]["version"].should == nil
+    end
+    it "should not set version to on logs that already have a version" do
+      @report["logs"] = [{'file'=>nil, 'line'=>nil, 'level'=>:info, 
'message'=>'hello', 'source'=>'File[/foo]', 'tags'=>%w{foo bar}, 
'time'=>Time.parse("2011-01-01"), 'version'=>32768}]
+      report = ReportTransformer::ZeroToOne.apply(@report)
+      report["logs"][0]["version"].should == 32768
+    end
   end
 
   describe "when converting from version 1 to version 2" do
-- 
1.7.2

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to