userscripts_org 0.0.2 → 0.0.3

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.
Files changed (5) hide show
  1. data/ChangeLog +9 -0
  2. data/Rakefile +2 -7
  3. data/bin/userjs +0 -0
  4. data/lib/userscripts_org.rb +13 -9
  5. metadata +6 -4
data/ChangeLog CHANGED
@@ -1,3 +1,12 @@
1
+ 2009-01-07 SATOH Hiroh <cho45@lowreal.net>
2
+
3
+ * [release]:
4
+ Release 0.0.3
5
+
6
+ * [bug]:
7
+ follow new design of userscripts.org.
8
+ follow mechanize 0.9.0.
9
+
1
10
  ChangeLog of http://svn.coderepos.org/share/lang/ruby/userscripts_org/trunk
2
11
 
3
12
  2008-01-11 cho45
data/Rakefile CHANGED
@@ -63,7 +63,7 @@ spec = Gem::Specification.new do |s|
63
63
  s.test_files = Dir["test/test_*.rb"]
64
64
 
65
65
  s.add_dependency('pit')
66
- s.add_dependency('mechanize')
66
+ s.add_dependency('mechanize', '>=0.9.0')
67
67
  #s.add_dependency('activesupport', '>=1.3.1')
68
68
  #s.required_ruby_version = '>= 1.8.2'
69
69
 
@@ -119,16 +119,11 @@ Rake::ShipitTask.new do |s|
119
119
  s.Step.new {
120
120
  system("svn", "up")
121
121
  }.and {}
122
- s.Step.new {
123
- raise "changelog-with-hatenastar.rb is not found" unless system("which", "changelog-with-hatenastar.rb")
124
- }.and {
125
- system("changelog-with-hatenastar.rb > ChangeLog")
126
- }
127
122
  s.ChangeVersion "lib/userscripts_org.rb", "VERSION"
128
123
  s.Commit
129
124
  s.Task :clean, :package
130
125
  s.RubyForge
131
- s.Tag
126
+ s.Tag "release-%s"
132
127
  s.Twitter
133
128
  s.Task :rubyforge
134
129
  end
data/bin/userjs CHANGED
File without changes
@@ -8,7 +8,7 @@ require "ostruct"
8
8
  require "uri"
9
9
 
10
10
  class UserscriptsOrg
11
- VERSION = "0.0.2"
11
+ VERSION = "0.0.3"
12
12
 
13
13
  class UserscriptsOrgError < StandardError; end
14
14
  class NotLoggedinError < UserscriptsOrgError; end
@@ -28,13 +28,13 @@ class UserscriptsOrg
28
28
  def login
29
29
  # Login
30
30
  @agent.get(BASE + "/login")
31
- form = @agent.page.forms.with.action("/sessions").first
31
+ form = @agent.page.forms.find {|i| i.action == "/sessions" }
32
32
  form.login = @config.username
33
33
  form.password = @config.password
34
- @agent.submit(form, form.buttons.name("commit"))
34
+ @agent.submit(form, form.buttons.find {|i| i.name == "commit"})
35
35
 
36
36
  # Retreive user id
37
- @uid = @agent.page.links.text("Your scripts").first.href[%r|/users/(\d+)/scripts|, 1].to_i
37
+ @uid = @agent.page.links.find {|i| i.text == "public profile" }.href[%r|/users/(\d+)|, 1].to_i
38
38
  self
39
39
  end
40
40
 
@@ -57,12 +57,14 @@ class UserscriptsOrg
57
57
  raise UserscriptsOrgError, "Script named #{name} is not found." if script.nil?
58
58
  @agent.get BASE + "/scripts/edit_src/#{script.uid}"
59
59
 
60
- form = @agent.page.forms.first
60
+ form = @agent.page.forms.find {|i| i.action =~ %r|^/scripts/update_src/| }
61
61
  form["which_source"] = "textarea"
62
62
  form["script[src]"] = content
63
63
 
64
- @agent.submit(form, form.buttons.name("commit"))
65
- if (@agent.page.root/"//p[text() = 'a few seconds ago.']").to_a.empty?
64
+ @agent.submit(form, form.buttons.find {|i| i.name == "commit"})
65
+
66
+ date = (@agent.page.root/"//span[@class = 'date']").text.gsub(/^\s+|\s+$/, "")
67
+ unless date == "Last update a few seconds ago"
66
68
  raise UserscriptsOrgError, "Update may failed"
67
69
  end
68
70
  script
@@ -81,10 +83,12 @@ class UserscriptsOrg
81
83
 
82
84
  def create(content)
83
85
  @agent.get BASE + "/scripts/new"
84
- form = @agent.page.forms.first
86
+ form = @agent.page.forms.find {|i| i.action == "/scripts/create" }
85
87
  form["which_source"] = "textarea"
86
88
  form["script[src]"] = content
87
- @agent.submit(form, form.buttons.name("commit"))
89
+ @agent.submit(form, form.buttons.find {|i| i.name == "commit" })
90
+ p @agent.page
91
+ p @agent.page.uri
88
92
 
89
93
  get(@agent.page.uri.to_s[%r|/scripts/show/(\d+)|, 1])
90
94
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: userscripts_org
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - cho45
@@ -9,11 +9,12 @@ autorequire: ""
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-01-12 00:00:00 +09:00
12
+ date: 2009-01-07 00:00:00 +09:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: pit
17
+ type: :runtime
17
18
  version_requirement:
18
19
  version_requirements: !ruby/object:Gem::Requirement
19
20
  requirements:
@@ -23,12 +24,13 @@ dependencies:
23
24
  version:
24
25
  - !ruby/object:Gem::Dependency
25
26
  name: mechanize
27
+ type: :runtime
26
28
  version_requirement:
27
29
  version_requirements: !ruby/object:Gem::Requirement
28
30
  requirements:
29
31
  - - ">="
30
32
  - !ruby/object:Gem::Version
31
- version: "0"
33
+ version: 0.9.0
32
34
  version:
33
35
  description: Manipulate userscripts.org
34
36
  email: cho45@lowreal.net
@@ -80,7 +82,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
80
82
  requirements: []
81
83
 
82
84
  rubyforge_project: lowreal
83
- rubygems_version: 1.0.1
85
+ rubygems_version: 1.2.0
84
86
  signing_key:
85
87
  specification_version: 2
86
88
  summary: Manipulate userscripts.org