Sha256: 81531fa5306ffec9d5f12e3888e2c47d2d4057173cfbff888b4b82ad2a378c74
Contents?: true
Size: 1.03 KB
Versions: 1
Compression:
Stored size: 1.03 KB
Contents
require 'plist' require 'playground_book_lint/abstract_linter' module PlaygroundBookLint MANIFEST_FILE_NAME = 'Manifest.plist' class ManifestLinter < AbstractLinter #TODO: Should load manifest file in initialize instead of lazily. def lint fail_lint "No Manifest file in #{Dir.pwd}" unless manifest_file_exists? fail_lint "Manifest file missing Name in #{Dir.pwd}" unless has_name? end def manifest_file_exists? return File.exists? MANIFEST_FILE_NAME end def manifest_plist_contents return @manifest_plist_contents unless @manifest_plist_contents.nil? require 'plist' @manifest_plist_contents = Plist::parse_xml(MANIFEST_FILE_NAME) return @manifest_plist_contents end def has_name? value_defined_in_manifest?('Name') end def value_defined_in_manifest?(key) return false if manifest_plist_contents.nil? return false if manifest_plist_contents[key].nil? return false if manifest_plist_contents[key].empty? return true end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
playground-book-lint-0.0.1 | lib/playground_book_lint/manifest_linter.rb |