Sha256: 216778bb0c04caf91b8a3c0f091b8e42dd2b55cbb6a088e9236f8341350863b0

Contents?: true

Size: 1.19 KB

Versions: 1

Compression:

Stored size: 1.19 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
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cliutils-1.2.4 test/configurator_test.rb