Sha256: bc7b633449a2b25b3f0489d01fdda7cbfe48df97ae360f4d0415e528c1af791c

Contents?: true

Size: 1.39 KB

Versions: 3

Compression:

Stored size: 1.39 KB

Contents

ENV['RACK_ENV'] = 'test'

require 'minitest/autorun'
require 'pinch_hitter/message/message_store'
class TestMessage < MiniTest::Unit::TestCase

  def setup
   File.open("#{xml_filename}.xml", 'w') {|f| f.write(xml_message) }

   File.open("#{json_file}", 'w') { |f| f.write(json_message) }

   @messages = PinchHitter::Message::MessageStore.new File.dirname('.')
  end

  def teardown
    File.delete "#{xml_filename}.xml"
    File.delete "#{json_file}"
  end

  def xml_filename
    "minitest_xml"
  end

  def json_file
    "minitest_json"
  end

  def xml_message
%Q{<?xml version="1.0" encoding="UTF-8"?>
<Body/>
}
  end

  def json_message
%Q{{
  "one": "two",
  "A": "B" }
}
  end

  def test_setting_dir
    @messages.message_directory = "/foo"
    assert_equal "/foo", @messages.message_directory
  end
  
  def test_loads_xml
    assert_equal xml_message, @messages.load(xml_filename.to_sym)
  end

  def test_loads_json
    assert_equal json_message, @messages.load(json_file.to_sym)
  end

  def test_message_no_whitespace
    squish = %Q{<?xml version="1.0" encoding="UTF-8"?><Body/>}
    assert_equal squish, @messages.load(xml_filename.to_sym).squish
  end

  def test_content_type_defaults_to_xml
    assert_equal "text/xml", @messages.determine_content_type("")
  end

  def test_content_type_determines_json
    assert_equal "application/json", @messages.determine_content_type(json_message)
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pinch_hitter-0.3 test/test_message.rb
pinch_hitter-0.2 test/test_message.rb
pinch_hitter-0.1 test/test_message.rb