sparse-gen 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/sparse-gen.rb +6 -3
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4aa810f39d25cf8e9365d6058e16b7b2a43cfc6c
|
4
|
+
data.tar.gz: ad93e8ab097347c06c9f2cc3b0926f41d4e68de5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 23ce0cd498238973abb6a0248c4a9ea62789e117a244f638b37c49ac8e247771a86aa602c6b8ba08e55ec4d8632d3fdff418ea8d086caade3918d6afaea50204
|
7
|
+
data.tar.gz: 1f67869c77a9a4bfa249aae1ebe1e26fb076bc847c09ee1499e3c7d5198d8ddf3f24b443f784ae13a1c3139df45cf6bb2ec5f8d14f8ecf902009b2d8f26218cb
|
data/lib/sparse-gen.rb
CHANGED
@@ -1,13 +1,16 @@
|
|
1
1
|
class SparseGen
|
2
|
-
def self.sparse_gen_percent(filename, percent = 50, num_blocks =
|
2
|
+
def self.sparse_gen_percent(filename, percent = 50, num_blocks = 1024*1024, block_size = 1024)
|
3
3
|
file = File.open(filename, 'wb')
|
4
4
|
sparse_block = "\0"*block_size
|
5
|
-
data_block = rand(36**block_size).to_s(36)
|
6
5
|
|
7
6
|
((num_blocks*percent)/100).times do |i|
|
8
7
|
file.write(sparse_block)
|
9
|
-
|
8
|
+
((100-percent)/percent).times do
|
9
|
+
file.write(rand(36**block_size).to_s(36))
|
10
|
+
end
|
10
11
|
end
|
11
12
|
file.close
|
12
13
|
end
|
13
14
|
end
|
15
|
+
|
16
|
+
SparseGen.sparse_gen_percent('file')
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sparse-gen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Harichandan Pulagam
|
@@ -10,7 +10,8 @@ bindir: bin
|
|
10
10
|
cert_chain: []
|
11
11
|
date: 2015-09-26 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
|
-
description: A gem to generate sparse files
|
13
|
+
description: A gem to generate sparse files given the percentage of sparseness. By
|
14
|
+
default, it generates a 1G file with 50% data. For usage, check documentation
|
14
15
|
email:
|
15
16
|
executables: []
|
16
17
|
extensions: []
|