# Verify that setting a ttls, puppet facts returns the cached value of the fact test_name "C100039: ttls configured cached facts run from puppet facts return cached facts" do tag 'risk:high' require 'facter/acceptance/user_fact_utils' extend Facter::Acceptance::UserFactUtils # This fact must be resolvable on ALL platforms # Do NOT use the 'kernel' fact as it is used to configure the tests cached_factname = 'uptime' config = < [0, 1]) end step "should read from a cached JSON file for a fact that has been cached" do step "call puppet facts to setup the cached fact" do on(agent, "rm -rf '#{cached_facts_dir}'", :acceptable_exit_codes => [0, 1]) on(agent, puppet("facts")) create_remote_file(agent, cached_fact_file, cached_fact_content) end on(agent, puppet("facts --debug")) do |puppet_facts_output| assert_match(/loading cached values for .+ facts/, puppet_facts_output.stdout, "Expected debug message to state that values are read from cache") assert_match(/#{cached_value}/, puppet_facts_output.stdout, "Expected fact to match the cached fact file") end end end end end