From f45d2df811130c8c023e9daa2e92db83671ded0e Mon Sep 17 00:00:00 2001 From: Vladimir Moravec Date: Fri, 23 Aug 2013 17:07:47 +0200 Subject: [PATCH] Add helper method for variable name and value check --- test/read_test.rb | 1 + test/test_helper.rb | 8 +++++++- test/write_test.rb | 10 ++++++++-- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/test/read_test.rb b/test/read_test.rb index bc43ed5..51e3581 100644 --- a/test/read_test.rb +++ b/test/read_test.rb @@ -23,6 +23,7 @@ var_value = get_value(var_name) var_value.wont_be_empty get_config_metadata(var_name,:postfix)['Type'].must_match /#{var_value}/ + config_file_contains?(var_name, var_value).must_equal true end end end diff --git a/test/test_helper.rb b/test/test_helper.rb index e1ee205..3a194cf 100644 --- a/test/test_helper.rb +++ b/test/test_helper.rb @@ -25,7 +25,7 @@ module TestHelpers attr_reader :sysconfig, :context - FILES_DIR = Pathname.new(File.join 'files') + FILES_DIR = Pathname.new(File.expand_path( '../files', __FILE__)) TMP_DIR = Pathname.new(File.expand_path('../tmp', __FILE__)) # If needed extend this map as required @@ -63,6 +63,12 @@ def get_value config_variable get_config_value(config_variable, self.context) end + # Check the written config file for the new value without using the + # yast built-in mechanizm + def config_file_contains?(variable, value=nil) + !(File.readlines(sample_path).grep(/^\s*#{variable}\s*=.*#{value}/).empty?) + end + # Proxy to sysconfig.set_value to make it shorter def set_value variable_name, variable_value sysconfig.set_value(get_sysconfig_varid(variable_name), variable_value, false, false) diff --git a/test/write_test.rb b/test/write_test.rb index 05b99f4..b3fb319 100644 --- a/test/write_test.rb +++ b/test/write_test.rb @@ -10,16 +10,19 @@ it "should save the changed postfix variable value" do load_sample :postfix do var_name = "POSTFIX_MYHOSTNAME" - original_value = get_value(var_name) new_value = "suse.cz" sysconfig.Read + original_value = get_value(var_name) set_value(var_name, new_value) sysconfig.Modified.must_equal true modified_var?(var_name).wont_equal false sysconfig.Summary.must_match(/#{var_name}.*#{new_value}/) sysconfig.stub(:StartCommand, :success) { sysconfig.Write.must_equal true } + config_file_contains?(var_name, new_value).must_equal true sysconfig.Read - get_value(var_name).must_equal(new_value) + changed_var_value = get_value(var_name) + changed_var_value.must_equal(new_value) + changed_var_value.wont_equal(original_value) end end @@ -32,6 +35,7 @@ set_value(var_name, new_value) sysconfig.Modified.must_equal false sysconfig.stub(:StartCommand, :success) { sysconfig.Write.must_equal true } + config_file_contains?(var_name, new_value).must_equal false sysconfig.Read get_value(var_name).must_equal(original_value) end @@ -47,6 +51,7 @@ set_value(var_name, new_value) sysconfig.Modified.must_equal false sysconfig.stub(:StartCommand, :success) { sysconfig.Write.must_equal true } + config_file_contains?(var_name, new_value).must_equal false sysconfig.Read get_value(var_name).must_be_empty end @@ -63,6 +68,7 @@ modified_var?(variable_name).wont_equal false sysconfig.Summary.must_match(/#{variable_name}.*#{new_value}/) sysconfig.stub(:StartCommand, :success) { sysconfig.Write.must_equal true } + config_file_contains?(variable_name, new_value).must_equal true sysconfig.Read get_value(variable_name).must_equal(new_value) end