Map LWES_TYPE_* constants to Ruby constants
[lwes-ruby.git] / test / unit / test_type_db.rb
blobfac2b059e849b6f04e9b9c2ec33c4c6bf9f1350b
1 require "#{File.dirname(__FILE__)}/../test_helper"
2 require 'tempfile'
4 class TestTypeDB < Test::Unit::TestCase
6   def test_constants
7     assert_instance_of Module, LWES, "LWES is not a module"
8     assert_instance_of Class, LWES::TypeDB, "LWES::TypeDB is not a class"
9   end
11   def test_initialize
12     assert_nothing_raised do
13       LWES::TypeDB.new("#{File.dirname(__FILE__)}/test1.esf")
14     end
15   end
17   def TODO_test_raises_on_parse_error
18     # tmp_err = $stderr.dup
19     # $stderr.reopen("/dev/null", "a")
20     begin
21       LWES::TypeDB.new(__FILE__)
22     rescue => e
23       pp [:ER, e ]
24     end
25     # ensure
26       # $stderr.reopen(tmp_err)
27   end
29   def test_to_hash
30     expect = {
31       :MetaEventInfo => {
32         :SenderPort => LWES::U_INT_16,
33         :st => LWES::STRING,
34         :enc => LWES::INT_16,
35         :SiteID => LWES::U_INT_16,
36         :ReceiptTime => LWES::INT_64,
37         :SenderIP => LWES::IP_ADDR
38       },
39       :Event1 => {
40         :t_ip_addr => LWES::IP_ADDR,
41         :t_bool => LWES::BOOLEAN,
42         :t_uint64 => LWES::U_INT_64,
43         :t_uint32 => LWES::U_INT_32,
44         :t_int64 => LWES::INT_64,
45         :t_string => LWES::STRING,
46         :t_int32 => LWES::INT_32,
47         :t_uint16 => LWES::U_INT_16,
48         :t_int16 => LWES::INT_16
49       }
50     }
51     result = LWES::TypeDB.new("#{File.dirname(__FILE__)}/test1.esf").to_hash
52     assert_equal expect, result
53   end
55 end