Implement `yaml_eq' condition keyword

This commit is contained in:
Thibault Jouan
2014-10-11 01:17:41 +00:00
parent 0ba12bfb90
commit f6237bfc0c
5 changed files with 87 additions and 0 deletions

View File

@@ -30,6 +30,7 @@ require 'producer/core/tests/has_env'
require 'producer/core/tests/has_executable'
require 'producer/core/tests/has_file'
require 'producer/core/tests/shell_command_status'
require 'producer/core/tests/yaml_eq'
require 'producer/core/cli'
require 'producer/core/condition'

View File

@@ -41,6 +41,7 @@ module Producer
define_test :executable?, Tests::HasExecutable
define_test :dir?, Tests::HasDir
define_test :file?, Tests::HasFile
define_test :yaml_eq, Tests::YAMLEq
attr_reader :tests, :return_value

View File

@@ -0,0 +1,12 @@
module Producer
module Core
module Tests
class YAMLEq < Test
def verify
return false unless file_content = fs.file_read(arguments.first)
YAML.load(file_content) == arguments[1]
end
end
end
end
end