robohash 0.0.1
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.
- data/.gitignore +6 -0
- data/Gemfile +4 -0
- data/README.md +20 -0
- data/Rakefile +3 -0
- data/lib/robohash.rb +57 -0
- data/lib/robohash/version.rb +3 -0
- data/robohash.gemspec +21 -0
- data/spec/robohash_spec.rb +35 -0
- data/spec/spec_helper.rb +8 -0
- metadata +76 -0
data/.gitignore
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
#Description
|
2
|
+
This gem downloads the user defined number of robohash images from the robohash.org
|
3
|
+
|
4
|
+
#Installation
|
5
|
+
`gem install robohash`
|
6
|
+
|
7
|
+
OR in your gemfile
|
8
|
+
|
9
|
+
`gem robohash`
|
10
|
+
|
11
|
+
#Use
|
12
|
+
1. Download Images
|
13
|
+
`Robohash.get_images`
|
14
|
+
|
15
|
+
2.Change default number of images to be downloaded
|
16
|
+
` Robohash.default_num=150`
|
17
|
+
|
18
|
+
3.Change default directory to download images
|
19
|
+
` Robohash.default_directory="images/robots"`
|
20
|
+
|
data/Rakefile
ADDED
data/lib/robohash.rb
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
require "robohash/version"
|
2
|
+
require 'httparty'
|
3
|
+
require 'fileutils'
|
4
|
+
module Robohash
|
5
|
+
@default_num = 3
|
6
|
+
@default_directory = "robo_hash_images"
|
7
|
+
|
8
|
+
module_function
|
9
|
+
def default_num; @default_num end
|
10
|
+
def default_num= v; @default_num = v end
|
11
|
+
def default_directory; @default_directory end
|
12
|
+
def default_directory= v; @default_directory = v end
|
13
|
+
def Version; self::VERSION end
|
14
|
+
|
15
|
+
def self.get_images
|
16
|
+
if Dir.exists? @default_directory
|
17
|
+
self.Delete_directory
|
18
|
+
else
|
19
|
+
Dir.mkdir(@default_directory)
|
20
|
+
end
|
21
|
+
(1..default_num).each{
|
22
|
+
o = [('a'..'z'),('A'..'Z')].map{|i| i.to_a}.flatten;
|
23
|
+
string = (0..10).map{ o[rand(o.length)] }.join;
|
24
|
+
image = HTTParty.get "http://robohash.org/#{string}.png"
|
25
|
+
open( "#{@default_directory}/#{string}.png", 'wb' ) { |file|
|
26
|
+
file.write(image.body)
|
27
|
+
}
|
28
|
+
}
|
29
|
+
end
|
30
|
+
|
31
|
+
|
32
|
+
private
|
33
|
+
def delete_directory
|
34
|
+
begin
|
35
|
+
Dir.delete(@default_directory)
|
36
|
+
rescue Exception => e
|
37
|
+
puts e.message
|
38
|
+
puts "You still want to delete? (Y/N)"
|
39
|
+
str = STDIN.getc.chr.downcase
|
40
|
+
if str == "y"
|
41
|
+
Dir.foreach(@default_directory) {|f|
|
42
|
+
if f == '.' or f == '..' then next
|
43
|
+
elsif File.directory?(f) then FileUtils.rm_rf("#{@default_directory}/#{f}")
|
44
|
+
else FileUtils.rm("#{@default_directory}/#{f}")
|
45
|
+
end
|
46
|
+
Dir.mkdir(@default_directory)
|
47
|
+
}
|
48
|
+
elsif str=="n"
|
49
|
+
exit
|
50
|
+
else
|
51
|
+
puts "Invalid parameter!"
|
52
|
+
exit
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
data/robohash.gemspec
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "robohash/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "robohash"
|
7
|
+
s.version = Robohash::VERSION
|
8
|
+
s.authors = ["xecutioner"]
|
9
|
+
s.email = ["xecutioner.kapil@gmail.com"]
|
10
|
+
s.homepage = ""
|
11
|
+
s.summary = %q{Robohash downloader}
|
12
|
+
s.description = %q{Downloads random robot images from robohash.org}
|
13
|
+
s.add_development_dependency "rspec"
|
14
|
+
s.add_development_dependency "httparty"
|
15
|
+
s.rubyforge_project = "robohash"
|
16
|
+
|
17
|
+
s.files = `git ls-files`.split("\n")
|
18
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
19
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
20
|
+
s.require_paths = ["lib"]
|
21
|
+
end
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
describe Robohash do
|
3
|
+
it "Should return the correct version string" do
|
4
|
+
Robohash::VERSION.should == "0.0.1"
|
5
|
+
end
|
6
|
+
|
7
|
+
it "Should return the correct version " do
|
8
|
+
Robohash.Version.should == "0.0.1"
|
9
|
+
end
|
10
|
+
|
11
|
+
it "Should get the default number of images to download" do
|
12
|
+
Robohash.default_num.should eql(3)
|
13
|
+
end
|
14
|
+
|
15
|
+
it "Should set the default number of images to download" do
|
16
|
+
Robohash.default_num=150
|
17
|
+
Robohash.default_num.should eql(150)
|
18
|
+
end
|
19
|
+
|
20
|
+
it "Should get the default directory of images to download to" do
|
21
|
+
Robohash.default_directory.should eql("robo_hash_images")
|
22
|
+
end
|
23
|
+
|
24
|
+
it "Should set the default directory of images to download to" do
|
25
|
+
Robohash.default_directory="images/robots"
|
26
|
+
Robohash.default_directory.should eql("images/robots")
|
27
|
+
end
|
28
|
+
|
29
|
+
#it "Should download the default number of images to download to default directory" do
|
30
|
+
# Robohash.get_images
|
31
|
+
#Dir.exists?('robo_hash_images').should eql(true)
|
32
|
+
# end
|
33
|
+
|
34
|
+
end
|
35
|
+
|
data/spec/spec_helper.rb
ADDED
metadata
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: robohash
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- xecutioner
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2011-09-17 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: rspec
|
16
|
+
requirement: &83639610 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :development
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *83639610
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: httparty
|
27
|
+
requirement: &83639130 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
type: :development
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *83639130
|
36
|
+
description: Downloads random robot images from robohash.org
|
37
|
+
email:
|
38
|
+
- xecutioner.kapil@gmail.com
|
39
|
+
executables: []
|
40
|
+
extensions: []
|
41
|
+
extra_rdoc_files: []
|
42
|
+
files:
|
43
|
+
- .gitignore
|
44
|
+
- Gemfile
|
45
|
+
- README.md
|
46
|
+
- Rakefile
|
47
|
+
- lib/robohash.rb
|
48
|
+
- lib/robohash/version.rb
|
49
|
+
- robohash.gemspec
|
50
|
+
- spec/robohash_spec.rb
|
51
|
+
- spec/spec_helper.rb
|
52
|
+
homepage: ''
|
53
|
+
licenses: []
|
54
|
+
post_install_message:
|
55
|
+
rdoc_options: []
|
56
|
+
require_paths:
|
57
|
+
- lib
|
58
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ! '>='
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
64
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
requirements: []
|
71
|
+
rubyforge_project: robohash
|
72
|
+
rubygems_version: 1.8.10
|
73
|
+
signing_key:
|
74
|
+
specification_version: 3
|
75
|
+
summary: Robohash downloader
|
76
|
+
test_files: []
|