Class: Manifestly::ManifestDiff
- Inherits:
-
Object
- Object
- Manifestly::ManifestDiff
- Defined in:
- lib/manifestly/manifest_diff.rb
Defined Under Namespace
Classes: ItemDiff
Instance Method Summary collapse
-
#initialize(from_manifest, to_manifest) ⇒ ManifestDiff
constructor
A new instance of ManifestDiff.
- #manifest_source_info ⇒ Object
- #to_markdown ⇒ Object
Constructor Details
#initialize(from_manifest, to_manifest) ⇒ ManifestDiff
Returns a new instance of ManifestDiff.
69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/manifestly/manifest_diff.rb', line 69 def initialize(from_manifest, to_manifest) @from_manifest = from_manifest @to_manifest = to_manifest @item_diffs = @to_manifest.items.collect do |to_item| from_item = @from_manifest.items.detect do |from_item| from_item.repository_name == to_item.repository_name end ItemDiff.new(from_item, to_item) end end |
Instance Method Details
#manifest_source_info ⇒ Object
86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/manifestly/manifest_diff.rb', line 86 def manifest_source_info repository = @from_manifest.manifest_repository file = @from_manifest.manifest_file from_sha = @from_manifest.manifest_sha to_sha = @to_manifest.manifest_sha if repository && file && from_sha && to_sha "Comparing manifest ***#{file}*** on repository ***#{repository.display_name}*** from commit `#{from_sha[0..9]}` to `#{to_sha[0..9]}`." else "Manifest source info is *unknown*." end end |
#to_markdown ⇒ Object
82 83 84 |
# File 'lib/manifestly/manifest_diff.rb', line 82 def to_markdown "# Manifest Diff\n\n#{manifest_source_info}\n\n#{@item_diffs.collect(&:to_markdown).join("\n")}" end |