aritcaptcha 1.20.0 → 2.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/VERSION CHANGED
@@ -1 +1 @@
1
- 1.20.0
1
+ 2.0.1
data/aritcaptcha.gemspec CHANGED
@@ -1,47 +1,44 @@
1
1
  # Generated by jeweler
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in rakefile, and run the gemspec command
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{aritcaptcha}
8
- s.version = "1.20.0"
8
+ s.version = "2.0.1"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Guilherme Nascimento"]
12
- s.date = %q{2010-07-10}
12
+ s.date = %q{2011-05-09}
13
13
  s.description = %q{Arithmetic Captcha}
14
14
  s.email = %q{guilherme.ruby@gmail.com}
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE",
17
- "README.rdoc"
17
+ "README.rdoc"
18
18
  ]
19
19
  s.files = [
20
20
  ".document",
21
- ".gitignore",
22
- "LICENSE",
23
- "README.rdoc",
24
- "Rakefile",
25
- "VERSION",
26
- "aritcaptcha.gemspec",
27
- "lib/aritcaptcha.rb",
28
- "lib/aritcaptcha/aritcaptcha_helper.rb",
29
- "lib/aritcaptcha/aritcaptcha_verify.rb",
30
- "lib/aritcaptcha/calculation.rb",
31
- "spec/aritcaptcha_helper_spec.rb",
32
- "spec/aritcaptcha_spec.rb",
33
- "spec/spec.opts",
34
- "spec/spec_helper.rb"
21
+ "LICENSE",
22
+ "README.rdoc",
23
+ "Rakefile",
24
+ "VERSION",
25
+ "aritcaptcha.gemspec",
26
+ "lib/aritcaptcha.rb",
27
+ "lib/aritcaptcha/aritcaptcha_helper.rb",
28
+ "lib/aritcaptcha/aritcaptcha_verify.rb",
29
+ "lib/aritcaptcha/calculation.rb",
30
+ "spec/aritcaptcha_spec.rb",
31
+ "spec/spec.opts",
32
+ "spec/spec_helper.rb",
33
+ "tags"
35
34
  ]
36
35
  s.homepage = %q{http://github.com/guinascimento/aritcaptcha}
37
- s.rdoc_options = ["--charset=UTF-8"]
38
36
  s.require_paths = ["lib"]
39
37
  s.rubygems_version = %q{1.3.7}
40
38
  s.summary = %q{Arithmetic Captcha}
41
39
  s.test_files = [
42
- "spec/aritcaptcha_helper_spec.rb",
43
- "spec/aritcaptcha_spec.rb",
44
- "spec/spec_helper.rb"
40
+ "spec/aritcaptcha_spec.rb",
41
+ "spec/spec_helper.rb"
45
42
  ]
46
43
 
47
44
  if s.respond_to? :specification_version then
data/lib/aritcaptcha.rb CHANGED
@@ -1,4 +1,3 @@
1
1
  require 'aritcaptcha/aritcaptcha_helper'
2
2
 
3
- ActionView::Base.send(:include, Aritcaptcha::AritcaptchaHelper)
4
- ActionController::Base.send(:include, Aritcaptcha::AritcaptchaVerify)
3
+ ActionView::Base.send(:include, Aritcaptcha::AritcaptchaHelper)
@@ -29,15 +29,15 @@ module Aritcaptcha
29
29
  session[:equation] = [equation_key, eval(equation)]
30
30
 
31
31
  if options[:html]
32
- options = options[:html].inject([]){|dump, pair| dump << "#{pair[0]}=\"#{pair[1]}\""}
32
+ options = options[:html].inject([]) { |dump, pair| dump << "#{pair[0]}=\"#{pair[1]}\"" }
33
33
  options = options.join(" ")
34
34
  end
35
35
 
36
36
  html = ""
37
37
  if options[:format] == "image"
38
38
  session[:image] = equation_key
39
- format = generate_image equation_key, equation
40
- html << "<img src=\"#{format}\" style='vertical-align:top;' /> <input type=\"text\" name=\"equation\" size=\"3\" style='vertical-align:top;' #{options} />"
39
+ img = generate_image equation_key, equation
40
+ html << "<img src=\"/images/aritcaptcha/#{img}\" style='vertical-align:top;' /> <input type=\"text\" name=\"equation\" size=\"3\" style='vertical-align:top;' #{options} />"
41
41
  else
42
42
  html << "#{equation} = <input type=\"text\" name=\"equation\" style='vertical-align:top;' size=\"3\" #{options} /></div>"
43
43
  end
@@ -47,7 +47,7 @@ module Aritcaptcha
47
47
 
48
48
  def generate_image(equation_key, equation)
49
49
  relative_name = "#{equation_key}.png"
50
- full_path = "#{Rails.root}/public/images/#{relative_name}"
50
+ full_path = "#{Rails.root}/public/images/aritcaptcha/#{relative_name}"
51
51
 
52
52
  unless File.file?(full_path)
53
53
  image = Magick::Image.new(85, 25)
@@ -63,9 +63,9 @@ module Aritcaptcha
63
63
  self.pointsize = 20
64
64
  end
65
65
  image.write(full_path)
66
- end
67
- url = image_path(relative_name)
66
+ end
67
+ relative_name
68
68
  end
69
69
  end
70
70
 
71
- end
71
+ end
@@ -13,9 +13,9 @@ module Aritcaptcha
13
13
  end
14
14
 
15
15
  def clean image
16
- unless image == nil
16
+ unless image == nil
17
17
  relative_name = "#{image}.png"
18
- full_path = "#{Rails.root}/public/images/#{relative_name}"
18
+ full_path = "#{Rails.root}/public/images/aritcaptcha/#{relative_name}"
19
19
  File.delete(full_path)
20
20
  end
21
21
  end
@@ -2,7 +2,7 @@ module Aritcaptcha
2
2
 
3
3
  class Calculation
4
4
 
5
- def self.generate_calculation number1, number2, operator
5
+ def self.generate_calculation number1, number2, operator, &block
6
6
  # Division by zero
7
7
  return [nil, nil] if operator == "/" and number1.zero? or number2.zero?
8
8
 
@@ -12,6 +12,14 @@ module Aritcaptcha
12
12
  equation = "#{number1} #{operator} #{number2}"
13
13
  result = eval("#{number1.to_f} #{operator} #{number2.to_f}")
14
14
 
15
+ if result.infinite?
16
+ # over and over again untill !infnite
17
+ number1 = rand(number1)
18
+ number2 = rand(number2)
19
+ result = eval("#{number1.to_f} #{operator} #{number2.to_f}")
20
+ end
21
+
22
+ result = (result == result.floor) ? result.to_i : result
15
23
  [equation, result]
16
24
  end
17
25
 
@@ -1,19 +1,19 @@
1
- # require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
- #
3
- # describe "Aritcaptcha" do
4
- # it "should return the correct sum of its arguments" do
5
- # Aritcaptcha::Calculation.generate_calculation(10, 10, "+").should == ["10 + 10", 20]
6
- # end
7
- # #
8
- # # it "should return the subtraction of its arguments" do
9
- # # Captcha::Aritcaptcha.generate_calculation(20, 10, "-").should == ["20 - 10", 10]
10
- # # end
11
- # #
12
- # # it "should return the division of its arguments" do
13
- # # Captcha::Aritcaptcha.generate_calculation(10, 2, "/").should == ["10 / 2", 5]
14
- # # end
15
- # #
16
- # # it "should return the multiplicationof its arguments" do
17
- # # Captcha::Aritcaptcha.generate_calculation(10, 10, "*").should == ["10 * 10", 100]
18
- # # end
19
- # end
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe "Aritcaptcha" do
4
+ it "should return the correct sum of its arguments" do
5
+ Aritcaptcha::Calculation.generate_calculation(10, 10, "+").should have(2).items
6
+ end
7
+
8
+ it "should return the subtraction of its arguments" do
9
+ Aritcaptcha::Calculation.generate_calculation(20, 10, "-").should have(2).items
10
+ end
11
+
12
+ it "should return the division of its arguments" do
13
+ Aritcaptcha::Calculation.generate_calculation(10, 2, "/").should have(2).items
14
+ end
15
+
16
+ it "should return the multiplication of its arguments" do
17
+ Aritcaptcha::Calculation.generate_calculation(10, 10, "*").should have(2).items
18
+ end
19
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,10 +1,4 @@
1
1
  $LOAD_PATH.unshift(File.dirname(__FILE__))
2
2
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
3
- require 'aritcaptcha/calculation'
4
- require 'aritcaptcha/aritcaptcha_helper'
5
- require 'spec'
6
- require 'spec/autorun'
7
3
 
8
- Spec::Runner.configure do |config|
9
-
10
- end
4
+ require 'aritcaptcha/calculation'
data/tags ADDED
@@ -0,0 +1,19 @@
1
+ 1279032088
2
+ ADD /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb ADD =
3
+ Aritcaptcha /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb module Aritcaptcha
4
+ Aritcaptcha /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_verify.rb module Aritcaptcha
5
+ Aritcaptcha /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/calculation.rb module Aritcaptcha
6
+ AritcaptchaHelper /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb module AritcaptchaHelper
7
+ AritcaptchaVerify /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_verify.rb module AritcaptchaVerify
8
+ Calculation /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/calculation.rb class Calculation
9
+ DIV /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb DIV =
10
+ MUL /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb MUL =
11
+ OPERATIONS /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb OPERATIONS =
12
+ SOLV /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_verify.rb SOLV =
13
+ SOLV_KEY /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_verify.rb SOLV_KEY =
14
+ SUB /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb SUB =
15
+ aritcaptcha_tag /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb def aritcaptcha_tag
16
+ clean /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_verify.rb def clean
17
+ generate_calculation /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/calculation.rb def self.generate_calculation
18
+ generate_image /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_helper.rb def generate_image
19
+ verify_aritcaptcha /home/guilherme/Projetos/aritcaptcha/lib/aritcaptcha/aritcaptcha_verify.rb def verify_aritcaptcha
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aritcaptcha
3
3
  version: !ruby/object:Gem::Version
4
- hash: 71
4
+ hash: 13
5
5
  prerelease: false
6
6
  segments:
7
- - 1
8
- - 20
7
+ - 2
9
8
  - 0
10
- version: 1.20.0
9
+ - 1
10
+ version: 2.0.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Guilherme Nascimento
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-07-10 00:00:00 -03:00
18
+ date: 2011-05-09 00:00:00 -03:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -45,7 +45,6 @@ extra_rdoc_files:
45
45
  - README.rdoc
46
46
  files:
47
47
  - .document
48
- - .gitignore
49
48
  - LICENSE
50
49
  - README.rdoc
51
50
  - Rakefile
@@ -55,17 +54,17 @@ files:
55
54
  - lib/aritcaptcha/aritcaptcha_helper.rb
56
55
  - lib/aritcaptcha/aritcaptcha_verify.rb
57
56
  - lib/aritcaptcha/calculation.rb
58
- - spec/aritcaptcha_helper_spec.rb
59
57
  - spec/aritcaptcha_spec.rb
60
58
  - spec/spec.opts
61
59
  - spec/spec_helper.rb
60
+ - tags
62
61
  has_rdoc: true
63
62
  homepage: http://github.com/guinascimento/aritcaptcha
64
63
  licenses: []
65
64
 
66
65
  post_install_message:
67
- rdoc_options:
68
- - --charset=UTF-8
66
+ rdoc_options: []
67
+
69
68
  require_paths:
70
69
  - lib
71
70
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -94,6 +93,5 @@ signing_key:
94
93
  specification_version: 3
95
94
  summary: Arithmetic Captcha
96
95
  test_files:
97
- - spec/aritcaptcha_helper_spec.rb
98
96
  - spec/aritcaptcha_spec.rb
99
97
  - spec/spec_helper.rb
data/.gitignore DELETED
@@ -1,21 +0,0 @@
1
- ## MAC OS
2
- .DS_Store
3
-
4
- ## TEXTMATE
5
- *.tmproj
6
- tmtags
7
-
8
- ## EMACS
9
- *~
10
- \#*
11
- .\#*
12
-
13
- ## VIM
14
- *.swp
15
-
16
- ## PROJECT::GENERAL
17
- coverage
18
- rdoc
19
- pkg
20
-
21
- ## PROJECT::SPECIFIC
@@ -1,11 +0,0 @@
1
- # require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
- #
3
- # describe "AritcaptchaHelper" do
4
- # before :each do
5
- # @helper = Aritcaptcha::AritcaptchaHelper
6
- # end
7
- #
8
- # it "should accept two numbers and the operator as argument" do
9
- # puts Aritcaptcha::AritcaptchaHelper.aritcaptcha_tag :html => { :one => "10", :two => "10", :operation => "+" }
10
- # end
11
- # end