blob: e8c638a1c434c9c966679c46c40733c093e87293 [file] [log] [blame]
Jean byroot Boussier87cbddd2024-02-13 13:00:00 -08001#!/usr/bin/ruby
2#
3# generated_code.rb is in the same directory as this test.
4$LOAD_PATH.unshift(File.expand_path(File.dirname(__FILE__)))
5
6require 'test/unit'
7require 'objspace'
8require 'test_import_pb'
9
10$is_64bit = Google::Protobuf::Internal::SIZEOF_LONG == 8
11
12class MemoryTest < Test::Unit::TestCase
13 # 40 byte is the default object size. But the real size is dependent on many things
14 # such as arch etc, so there's no point trying to assert the exact return value here.
15 # We merely assert that we return something other than the default.
16 def test_objspace_memsize_of_arena
17 if $is_64bit
18 assert_operator 40, :<, ObjectSpace.memsize_of(Google::Protobuf::Internal::Arena.new)
19 end
20 end
21
22 def test_objspace_memsize_of_message
23 if $is_64bit
24 assert_operator 40, :<, ObjectSpace.memsize_of(FooBar::TestImportedMessage.new)
25 end
26 end
27
28 def test_objspace_memsize_of_map
29 if $is_64bit
30 assert_operator 40, :<, ObjectSpace.memsize_of(Google::Protobuf::Map.new(:string, :int32))
31 end
32 end
33end