Sha256: f4985f304f2b71b2c6c8b7019a9a396b65aa29b8b60b2f8efd21e40b9f5b47cf

Contents?: true

Size: 1.52 KB

Versions: 7

Compression:

Stored size: 1.52 KB

Contents

require 'fileutils'
require 'test/unit'

require File.join(File.dirname(__FILE__), '..', 'lib/cliutils/configurator')

# Tests for the Configurator class
class TestConfigurator < Test::Unit::TestCase
  def setup
    @config_path = '/tmp/test.config'
    @config = CLIUtils::Configurator.new(@config_path)
  end

  def teardown
    FileUtils.rm(@config_path) if File.exist?(@config_path)
  end

  def test_add_section
    @config.add_section(:test)
    assert_equal(@config.data, test: {})
  end

  def test_delete_section
    @config.add_section(:test)
    @config.add_section(:test2)
    @config.delete_section(:test)
    assert_equal(@config.data, test2: {})
  end

  def test_accessing
    @config.add_section(:test)
    @config.data[:test].merge!(name: 'Bob')
    assert_equal(@config.test, name: 'Bob')
  end

  def test_reset
    @config.add_section(:test)
    @config.data[:test].merge!(name: 'Bob')
    @config.reset
    assert_equal(@config.data, {})
  end

  def test_save
    @config.add_section(:section1)
    @config.section1.merge!(a: 'test', b: 'test')
    @config.save

    File.open(@config_path, 'r') do |f|
      assert_output("---\nsection1:\n  a: test\n  b: test\n") { puts f.read }
    end
  end
  
  def test_compare_version
    @config.add_section(:app_data)
    @config.app_data.merge!({ VERSION: '1.0.0', NEWEST_CONFIG_VERSION: '1.8.8' })

    @config.cur_version_key = :VERSION
    @config.last_version_key = :NEWEST_CONFIG_VERSION

    @config.compare_version do |c, l|
      assert_output('true') { print c < l }
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
cliutils-1.3.1 test/configurator_test.rb
cliutils-1.3.0 test/configurator_test.rb
cliutils-1.2.9 test/configurator_test.rb
cliutils-1.2.8 test/configurator_test.rb
cliutils-1.2.7 test/configurator_test.rb
cliutils-1.2.6 test/configurator_test.rb
cliutils-1.2.5 test/configurator_test.rb