Class: ZipExtraFieldTest

Inherits:
MiniTest::Test
  • Object
show all
Defined in:
lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb

Instance Method Summary collapse

Instance Method Details

#test_equalityObject



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb', line 61

def test_equality
  str = "UT\x5\0\x3\250$\r@"
  extra1 = ::Zip::ExtraField.new(str)
  extra2 = ::Zip::ExtraField.new(str)
  extra3 = ::Zip::ExtraField.new(str)
  assert_equal(extra1, extra2)

  extra2["UniversalTime"].mtime = ::Zip::DOSTime.now
  assert(extra1 != extra2)

  extra3.create("IUnix")
  assert(extra1 != extra3)

  extra1.create("IUnix")
  assert_equal(extra1, extra3)
end

#test_lengthObject



40
41
42
43
44
45
46
47
48
# File 'lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb', line 40

def test_length
  str = "UT\x5\0\x3\250$\r@Ux\0\0Te\0\0testit"
  extra = ::Zip::ExtraField.new(str)
  assert_equal(extra.local_size, extra.to_local_bin.size)
  assert_equal(extra.c_dir_size, extra.to_c_dir_bin.size)
  extra.merge("foo")
  assert_equal(extra.local_size, extra.to_local_bin.size)
  assert_equal(extra.c_dir_size, extra.to_c_dir_bin.size)
end

#test_mergeObject



30
31
32
33
34
35
36
37
38
# File 'lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb', line 30

def test_merge
  str = "UT\x5\0\x3\250$\r@Ux\0\0"
  extra1 = ::Zip::ExtraField.new("")
  extra2 = ::Zip::ExtraField.new(str)
  assert(!extra1.member?("UniversalTime"))
  assert(extra2.member?("UniversalTime"))
  extra1.merge(str)
  assert_equal(extra1["UniversalTime"].mtime, extra2["UniversalTime"].mtime)
end

#test_newObject



4
5
6
7
8
9
# File 'lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb', line 4

def test_new
  extra_pure = ::Zip::ExtraField.new("")
  extra_withstr = ::Zip::ExtraField.new("foo")
  assert_instance_of(::Zip::ExtraField, extra_pure)
  assert_instance_of(::Zip::ExtraField, extra_withstr)
end

#test_ntfsObject



20
21
22
23
24
25
26
27
28
# File 'lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb', line 20

def test_ntfs
  str = "\x0A\x00 \x00\x00\x00\x00\x00\x01\x00\x18\x00\xC0\x81\x17\xE8B\xCE\xCF\x01\xC0\x81\x17\xE8B\xCE\xCF\x01\xC0\x81\x17\xE8B\xCE\xCF\x01"
  extra = ::Zip::ExtraField.new(str)
  assert(extra.member?("NTFS"))
  t = ::Zip::DOSTime.at(1410496497.405178)
  assert_equal(t, extra['NTFS'].mtime)
  assert_equal(t, extra['NTFS'].atime)
  assert_equal(t, extra['NTFS'].ctime)
end

#test_to_sObject



51
52
53
54
55
56
57
58
59
# File 'lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb', line 51

def test_to_s
  str = "UT\x5\0\x3\250$\r@Ux\0\0Te\0\0testit"
  extra = ::Zip::ExtraField.new(str)
  assert_instance_of(String, extra.to_s)

  s = extra.to_s
  extra.merge("foo")
  assert_equal(s.length + 3, extra.to_s.length)
end

#test_unknownfieldObject



11
12
13
14
15
16
17
18
# File 'lib/hotplate/gems/rubyzip-1.1.7/test/extra_field_test.rb', line 11

def test_unknownfield
  extra = ::Zip::ExtraField.new("foo")
  assert_equal(extra["Unknown"], "foo")
  extra.merge("a")
  assert_equal(extra["Unknown"], "fooa")
  extra.merge("barbaz")
  assert_equal(extra.to_s, "fooabarbaz")
end