capykit 0.0.2 → 0.0.30

Sign up to get free protection for your applications and to get access to all the features.
data/bin/capykit CHANGED
@@ -6,11 +6,28 @@ require 'irb'
6
6
 
7
7
  CapybaraApi = Object.new
8
8
  CapybaraApi.extend(Capybara)
9
- (Capykit.constants-['VERSION']).sort.each do |c|
10
- code="CapybaraApi.extend(Capykit::#{c})"; puts code
11
- eval("CapybaraApi.extend(Capykit::#{c})")
9
+ cons =Capykit::Base.constants.collect{|m|"Capykit::Base::#{m}"}
10
+ cons+=Capykit::Capy.constants.collect{|m|"Capykit::Capy::#{m}"}
11
+ cons.sort.each do |m|
12
+ code=eval(m)
13
+ if code.class==Module
14
+ CapybaraApi.extend(code)
15
+ puts "CapybaraApi.extend #{code}"
16
+ end
12
17
  end
13
18
  CapybaraApi.auto_methods.each{ |m|CapybaraApi.send(m) }
19
+ CapybaraApi.send :xload #call protected methods
20
+
21
+ #cons =Capykit::Bugs.constants
22
+ #cons+=Capykit::Tasks.constants
23
+ #cons.sort.each do |c|
24
+ # code=eval("Capykit::Base::#{c}")
25
+ # if code.class==Class
26
+ # CapybaraApi.extend(code)
27
+ # puts code
28
+ # end
29
+ #end
30
+
14
31
 
15
32
  puts "Capykit loaded..."
16
33
  def IRB.start_capybara_console
@@ -1,4 +1,4 @@
1
- module Capykit::DslBase
1
+ module Capykit::Base::Core
2
2
 
3
3
  def a(sym)
4
4
  gselector(sym)
@@ -68,46 +68,20 @@ module Capykit::DslBase
68
68
  result
69
69
  end
70
70
 
71
- def x(sym,*arg)
72
- runs=[]
73
- exec=execute_methods(sym)
74
- arg.each do |oth|
75
- mul=(oth.to_s[-1,1]=='_')
76
- rgx=mul ? /#{oth}/ : /#{oth}$/
77
- runs+=exec.select{|pr|pr=~rgx}
78
- end
79
- p runs
80
- runs.each do|xx|
81
- met="x_k#{xx}"
82
- puts met
83
- self.send met
84
- end
85
- end
86
-
87
- def xconf(xhash=nil)
88
- @xconf||={}
89
- @xconf =@xconf.merge xhash if xhash
90
- @xconf
91
- end
92
-
93
71
  def vsite(xhash=nil)
94
- if !@vsite
95
- @vsite= {
72
+ @vsite||={
96
73
  :l => 'http://localhost:3000',
97
74
  :f => 'http://facebook.com',
98
75
  :g => 'http://google.com',
99
76
  :y => 'http://yahoo.com',
100
77
  :b => 'http://bing.com'}
101
- end
102
- @vsite = @vsite.merge xhash if xhash
78
+ @vsite =@vsite.merge xhash if xhash
103
79
  @vsite
104
80
  end
105
81
 
106
82
  def aselector(xhash=nil)
107
- if !@aselector
108
- @aselector= {}
109
- end
110
- @aselector = @aselector.merge xhash if xhash
83
+ @aselector||={}
84
+ @aselector =@aselector.merge xhash if xhash
111
85
  @aselector
112
86
  end
113
87
 
@@ -1,4 +1,4 @@
1
- module Capykit::DslJquery
1
+ module Capykit::Base::Jquery
2
2
  def h(sym,new_out=15)
3
3
  gselector(sym)
4
4
  @selec=@name if !@selec
@@ -0,0 +1,93 @@
1
+ module Capykit::Base::Ref
2
+ def base_methods
3
+ Capybara.methods - Object.methods
4
+ end
5
+
6
+ def core_methods
7
+ arr=Capykit::Base::Core.public_instance_methods.sort
8
+ ar2=arr.select{|x|x.length==1}
9
+ ar2 + (arr-ar2)
10
+ end
11
+
12
+ def capy_methods
13
+ arr=modules_methods.sort!
14
+ ar2=arr.select{|x|x.length==1}
15
+ ar2 + (arr-ar2)
16
+ end
17
+
18
+ def auto_methods
19
+ arr=modules_methods.sort!
20
+ arr.select{|m|m=~/^(aselector_|vsite_)/}
21
+ end
22
+
23
+ def execute_methods(pr='')
24
+ ym="x_#{pr}"
25
+ mo=modules_methods.select{|x|x[0,ym.length]==ym}.sort!
26
+ pr=='' ? mo : mo.collect{|x|x[ym.length,99]}
27
+ end
28
+
29
+ def test_methods(pr='')
30
+ ym="t_#{pr}"
31
+ mo=modules_methods.select{|x|x[0,ym.length]==ym}.sort!
32
+ pr=='' ? mo : mo.collect{|x|x[ym.length,99]}
33
+ end
34
+
35
+ def tasks_methods(*arg)
36
+ task_c='.*'
37
+ task_m='.*'
38
+ idx=nil
39
+ if arg!=[]
40
+ task_m=arg[0]
41
+ idx =arg[1]
42
+ end
43
+ tr=[]
44
+ @tasks.each do|tk,tv|
45
+ if tk.to_s=~/#{task_c}/
46
+ tv.public_methods(nil).each do|tm|
47
+ tr << [tk,tm] if tm=~/#{task_m}/
48
+ #tasks_run << "tasks[:#{tk}].#{tm}" if tm=~/#{task_m}/
49
+ end
50
+ end
51
+ end
52
+ if !idx
53
+ tr.each_with_index do |vv,ii|
54
+ puts "#{ii}. #{vv.join('.')}"
55
+ end
56
+ nil
57
+ else
58
+ tk,tm=tr[idx]
59
+ eval("tasks[:#{tk}].#{tm}")
60
+ end
61
+ end
62
+
63
+ protected
64
+
65
+ def modules_methods
66
+ arr=[]
67
+ if self.class==Object
68
+ cons =Capykit::Base.constants.collect{|m|"Capykit::Base::#{m}"}
69
+ cons+=Capykit::Capy.constants.collect{|m|"Capykit::Capy::#{m}"}
70
+ cons.sort.each do |m|code=eval(m)
71
+ arr+=code.instance_methods(nil) if code.class==Module
72
+ end
73
+ else
74
+ #anc=self.class.ancestors.select{|m|m.class==Module && m.to_s=~/^Capykit::/}
75
+ cons=self.class.ancestors.select{|m|m.to_s=~/^Capykit::/}
76
+ cons.each{|m|arr+=m.instance_methods(nil)}
77
+ end
78
+ arr
79
+ end
80
+
81
+ def xload
82
+ if !@tasks
83
+ @tasks={}
84
+ cons =Capykit::Tasks.constants.collect{|m|"Capykit::Tasks::#{m}"}
85
+ Capykit::Tasks.constants.sort.each do |m|
86
+ code="Capykit::Tasks::#{m}"
87
+ puts "#{code}.new"
88
+ @tasks[m.to_sym]=eval(code).send(:new)
89
+ end
90
+ end
91
+ end
92
+
93
+ end
@@ -0,0 +1,35 @@
1
+ module Capykit::Base::Util
2
+ attr_reader :tasks
3
+
4
+ def x(sym,*arg)
5
+ runs=[]
6
+ exec=execute_methods(sym)
7
+ arg.each do |oth|
8
+ mul=(oth.to_s[-1,1]=='_')
9
+ rgx=mul ? /#{oth}/ : /#{oth}$/
10
+ runs+=exec.select{|pr|pr=~rgx}
11
+ end
12
+ p runs
13
+ runs.each do|xx|
14
+ met="x_k#{xx}"
15
+ puts met
16
+ self.send met
17
+ end
18
+ end
19
+
20
+ def xconf(xhash=nil)
21
+ if xhash==:clear
22
+ @xconf={}
23
+ else
24
+ @xconf||={}
25
+ @xconf =@xconf.merge xhash if xhash
26
+ end
27
+ @xconf
28
+ end
29
+
30
+ #def x_se_go(kwd,sym=:g)
31
+ # v sym if !w('[name=q]',1)
32
+ # f "q:#{kwd}",:submit
33
+ #end
34
+
35
+ end
@@ -0,0 +1,15 @@
1
+ class Capykit::Task
2
+ include Capybara
3
+ cons =Capykit::Base.constants
4
+ cons.sort.each do |c|
5
+ code=eval("Capykit::Base::#{c}")
6
+ if code.class==Module
7
+ include(code)
8
+ end
9
+ end
10
+ def initialize
11
+ #auto=self.class.instance_methods.select{|m|m=~/^(aselector_|vsite_)/}
12
+ self.auto_methods.each{|m|send(m)}
13
+ end
14
+ end
15
+
@@ -1,3 +1,3 @@
1
1
  module Capykit
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.30"
3
3
  end
data/lib/capykit.rb CHANGED
@@ -1,7 +1,6 @@
1
1
  #require 'bundler'
2
2
  #Bundler.setup(:default, :test) if defined?(Bundler)
3
3
  require "selenium-webdriver"
4
- require 'capykit/version'
5
4
  require 'capybara/dsl'
6
5
  #Capybara.register_driver :selenium do |app|
7
6
  # Capybara::Driver::Selenium.new(app, :browser => :firefox, :profile => "default")
@@ -9,5 +8,13 @@ require 'capybara/dsl'
9
8
  Capybara.default_driver = :selenium
10
9
  Capybara.default_selector = :css
11
10
  Capybara.default_wait_time = 5
12
- files= Dir[File.join(File.dirname(__FILE__),%w[.. capy *.rb])]
13
- (files+Dir[File.join(%w[. capy *.rb])]).each{ |f|require(f) }
11
+ module Capykit
12
+ module Base ;end
13
+ module Bugs ;end
14
+ module Capy ;end
15
+ module Tasks;end
16
+ end
17
+
18
+ files =Dir[File.join(File.dirname(__FILE__),%w[.. lib capykit ** *.rb])]
19
+ files+=Dir[File.join(%w[. capy ** *.rb])]
20
+ files.each{ |f|require(f) }
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capykit
3
3
  version: !ruby/object:Gem::Version
4
- hash: 27
4
+ hash: 35
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 2
10
- version: 0.0.2
9
+ - 30
10
+ version: 0.0.30
11
11
  platform: ruby
12
12
  authors:
13
13
  - Widi Harsojo
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-03-07 00:00:00 +07:00
18
+ date: 2011-03-11 00:00:00 +07:00
19
19
  default_executable: capykit
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -45,19 +45,14 @@ extensions: []
45
45
  extra_rdoc_files: []
46
46
 
47
47
  files:
48
- - bin/capykit
49
- - capy/dsl_base.rb
50
- - capy/dsl_jquery.rb
51
- - capy/dsl_ref.rb
52
- - capy/dsl_util.rb
53
- - capykit-0.0.2.gem
54
- - capykit.gemspec
55
- - Gemfile
48
+ - lib/capykit/base/core.rb
49
+ - lib/capykit/base/jquery.rb
50
+ - lib/capykit/base/ref.rb
51
+ - lib/capykit/base/util.rb
52
+ - lib/capykit/task/task.rb
56
53
  - lib/capykit/version.rb
57
54
  - lib/capykit.rb
58
- - pkg/capykit-0.0.1.gem
59
- - pkg/capykit-0.0.2.gem
60
- - Rakefile
55
+ - bin/capykit
61
56
  has_rdoc: true
62
57
  homepage: http://www.github.com/wharsojo
63
58
  licenses: []
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source "http://rubygems.org"
2
-
3
- # Specify your gem's dependencies in capykit.gemspec
4
- gemspec
data/Rakefile DELETED
@@ -1,2 +0,0 @@
1
- require 'bundler'
2
- Bundler::GemHelper.install_tasks
data/capy/dsl_ref.rb DELETED
@@ -1,45 +0,0 @@
1
- module Capykit::DslRef
2
- def base_methods
3
- Capybara.methods - Object.methods
4
- end
5
-
6
- def core_methods
7
- arr=Capykit::DslBase.public_instance_methods.sort
8
- ar2=arr.select{|x|x.length==1}
9
- ar2 + (arr-ar2)
10
- end
11
-
12
- def capy_methods
13
- arr=modules_methods.sort!
14
- ar2=arr.select{|x|x.length==1}
15
- ar2 + (arr-ar2)
16
- end
17
-
18
- def auto_methods
19
- arr=modules_methods.sort!
20
- arr.select{|m|m=~/^(aselector_|vsite_)/}
21
- end
22
-
23
- def execute_methods(pr='')
24
- ym="x_#{pr}"
25
- mo=modules_methods.select{|x|x[0,ym.length]==ym}.sort!
26
- pr=='' ? mo : mo.collect{|x|x[ym.length,99]}
27
- end
28
-
29
- def test_methods(pr='')
30
- ym="t_#{pr}"
31
- mo=modules_methods.select{|x|x[0,ym.length]==ym}.sort!
32
- pr=='' ? mo : mo.collect{|x|x[ym.length,99]}
33
- end
34
-
35
- protected
36
-
37
- def modules_methods
38
- arr=[]
39
- (Capykit.constants-['VERSION']).each do |m|
40
- arr+=eval("Capykit::#{m}.instance_methods")
41
- end
42
- arr
43
- end
44
-
45
- end
data/capy/dsl_util.rb DELETED
@@ -1,8 +0,0 @@
1
- module Capykit::DslUtil
2
-
3
- def x_se_go(kwd,sym=:g)
4
- v sym if !w('[name=q]',1)
5
- f "q:#{kwd}",:submit
6
- end
7
-
8
- end
data/capykit.gemspec DELETED
@@ -1,28 +0,0 @@
1
- # -*- encoding: utf-8 -*-
2
- $:.push File.expand_path("../lib", __FILE__)
3
- require "capykit/version"
4
-
5
- Gem::Specification.new do |s|
6
- s.add_development_dependency "capybara", ["~> 0.4.1.2"]
7
- s.name = "capykit"
8
- s.version = Capykit::VERSION
9
- s.platform = Gem::Platform::RUBY
10
- s.authors = ["Widi Harsojo"]
11
- s.email = ["wharsojo@gmail.com"]
12
- s.homepage = "http://www.github.com/wharsojo"
13
- s.summary = %q{Capybara mini dsl extension}
14
- s.description = %q{Capybara mini dsl extension using webdriver and jquery}
15
-
16
- s.required_rubygems_version = ">= 1.3.7"
17
- s.rubyforge_project = "capykit"
18
-
19
- s.files = Dir.glob("**/*").delete_if { |item| item.include?(".hg") }
20
-
21
- #s.files = `git ls-files`.split("\n")
22
- #s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
23
- #s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
24
- s.require_paths = ["lib"]
25
- s.bindir = 'bin'
26
- s.executables = ["capykit"]
27
- s.default_executable = %q{capykit}
28
- end
Binary file
Binary file