extlzma 0.4-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3 @@
1
+ module LZMA
2
+ VERSION = "0.4"
3
+ end
@@ -0,0 +1,15 @@
1
+ SMALLSIZE = 400
2
+ BIGSIZE = 12000000
3
+
4
+ SAMPLES = {
5
+ "empty" => "",
6
+ "\\0 (small size)" => "\0".b * SMALLSIZE,
7
+ "\\0 (big size)" => "\0".b * BIGSIZE,
8
+ "\\xaa (small size)" => "\xaa".b * SMALLSIZE,
9
+ "\\xaa (big size)" => "\xaa".b * BIGSIZE,
10
+ "random (small size)" => OpenSSL::Random.random_bytes(SMALLSIZE),
11
+ "random (big size)" => OpenSSL::Random.random_bytes(BIGSIZE),
12
+ }
13
+
14
+ SAMPLES["freebsd ports index"] = File.read("/usr/ports/INDEX-10", mode: "rb") rescue nil # if on FreeBSD
15
+ SAMPLES["freebsd kernel"] = File.read("/boot/kernel/kernel", mode: "rb") rescue nil # if on FreeBSD
@@ -0,0 +1,58 @@
1
+ #!ruby
2
+
3
+ =begin
4
+ # 必要と思われる試験項目
5
+
6
+ * LZMA.encode
7
+ * LZMA.decode で伸長できるか
8
+ * lz4-cli で伸長できるか
9
+ * 汚染状態の伝搬
10
+ * security level
11
+ * LZMA.encode_file
12
+ * LZMA.decode_file で伸長できるか
13
+ * lz4-cli で伸長できるか
14
+ * LZMA.decode
15
+ * LZMA.decode_file
16
+ * LZMA.test_file
17
+
18
+ * 試験で用いる試料
19
+ * /usr/ports/INDEX-10
20
+ * /boot/kernel/kernel
21
+ * 長さ 0 の空データ
22
+ * 0 で埋められた小さなデータ
23
+ * 0 で埋められたでかいデータ
24
+ * 0xaa で埋められた小さなデータ
25
+ * 0xaa で埋められたでかいデータ
26
+ * /dev/random (4000 bytes)
27
+ * /dev/random (12000000 bytes)
28
+ * 可能であれば数十 GB レベルのファイル
29
+ =end
30
+
31
+ require "test-unit"
32
+ require "openssl" # for OpenSSL::Random.random_bytes
33
+ require "extlzma"
34
+
35
+ require_relative "sampledata"
36
+
37
+ class TestStreamAPI < Test::Unit::TestCase
38
+ SAMPLES.each_pair do |name, data|
39
+ define_method("test_encode_decode_sample:#{name}", -> {
40
+ assert(data, LZMA.decode(LZMA.encode(data)))
41
+ })
42
+ end
43
+
44
+ def test_encode_args
45
+ assert_kind_of(LZMA::Encoder, LZMA.encode)
46
+ assert_kind_of(LZMA::Encoder, LZMA.encode(StringIO.new("")))
47
+ assert_kind_of(String, LZMA.encode { |e| e.outport })
48
+ io = StringIO.new("")
49
+ assert_same(io, LZMA.encode(io) { |e| io })
50
+ assert_kind_of(LZMA::Encoder, LZMA.encode(io, 9))
51
+ end
52
+
53
+ def test_decode_args
54
+ assert_raise(ArgumentError) { LZMA.decode }
55
+ assert_raise(NoMethodError) { LZMA.decode(nil).read } # undefined method `read' for nil:NilClass
56
+ assert_raise(LZMA::BufError) { LZMA.decode("") } # read error (or already EOF)
57
+ end
58
+ end
metadata ADDED
@@ -0,0 +1,101 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: extlzma
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.4'
5
+ platform: x86-mingw32
6
+ authors:
7
+ - dearblue
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-05-08 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '11.0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '11.0'
27
+ description: 'ruby bindings for liblzma in the xz utilities <http://tukaani.org/xz/>
28
+
29
+ '
30
+ email: dearblue@users.osdn.me
31
+ executables: []
32
+ extensions: []
33
+ extra_rdoc_files:
34
+ - HISTORY.ja.md
35
+ - LICENSE
36
+ - README.md
37
+ - ext/consts.c
38
+ - ext/error.c
39
+ - ext/extlzma.c
40
+ - ext/extlzma.h
41
+ - ext/filter.c
42
+ - ext/index.c
43
+ - ext/stream.c
44
+ - ext/utils.c
45
+ - lib/extlzma.rb
46
+ - lib/extlzma/version.rb
47
+ files:
48
+ - HISTORY.ja.md
49
+ - LICENSE
50
+ - README.md
51
+ - Rakefile
52
+ - examples/01-easy_using.rb
53
+ - examples/02-streaming.rb
54
+ - ext/consts.c
55
+ - ext/error.c
56
+ - ext/extconf.rb
57
+ - ext/extlzma.c
58
+ - ext/extlzma.h
59
+ - ext/filter.c
60
+ - ext/index.c
61
+ - ext/stream.c
62
+ - ext/utils.c
63
+ - gemstub.rb
64
+ - lib/2.0/extlzma.so
65
+ - lib/2.1/extlzma.so
66
+ - lib/2.2/extlzma.so
67
+ - lib/2.3/extlzma.so
68
+ - lib/extlzma.rb
69
+ - lib/extlzma/version.rb
70
+ - test/sampledata.rb
71
+ - test/test_extlzma.rb
72
+ homepage: https://osdn.jp/projects/rutsubo/
73
+ licenses:
74
+ - BSD-2-Clause
75
+ metadata: {}
76
+ post_install_message:
77
+ rdoc_options:
78
+ - "--charset"
79
+ - UTF-8
80
+ - "-m"
81
+ - README.md
82
+ require_paths:
83
+ - lib
84
+ required_ruby_version: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: '2.0'
89
+ required_rubygems_version: !ruby/object:Gem::Requirement
90
+ requirements:
91
+ - - ">="
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ requirements: []
95
+ rubyforge_project:
96
+ rubygems_version: 2.6.2
97
+ signing_key:
98
+ specification_version: 4
99
+ summary: ruby bindings for liblzma in the xz utilities
100
+ test_files: []
101
+ has_rdoc: