mugen 0.2.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.
Files changed (92) hide show
  1. data/.gitignore +2 -0
  2. data/.travis.yml +5 -0
  3. data/CHANGELOG.md +3 -0
  4. data/Gemfile +5 -0
  5. data/LICENSE +20 -0
  6. data/README.md +65 -0
  7. data/Rakefile +31 -0
  8. data/autotest/discover.rb +1 -0
  9. data/generators/README +3 -0
  10. data/generators/USAGE +34 -0
  11. data/generators/mugen_generator.rb +63 -0
  12. data/generators/templates/app/controllers/mygengo/account_controller.rb +10 -0
  13. data/generators/templates/app/controllers/mygengo/comments_controller.rb +6 -0
  14. data/generators/templates/app/controllers/mygengo/jobs_controller.rb +153 -0
  15. data/generators/templates/app/helpers/mugen_helper.rb +11 -0
  16. data/generators/templates/app/views/layouts/mygengo.html.erb +52 -0
  17. data/generators/templates/app/views/mygengo/account/_balance.haml +5 -0
  18. data/generators/templates/app/views/mygengo/account/_stats.haml +9 -0
  19. data/generators/templates/app/views/mygengo/account/index.haml +3 -0
  20. data/generators/templates/app/views/mygengo/comments/_comment.haml +7 -0
  21. data/generators/templates/app/views/mygengo/comments/_form.haml +10 -0
  22. data/generators/templates/app/views/mygengo/jobs/_comments.haml +8 -0
  23. data/generators/templates/app/views/mygengo/jobs/_feedback.haml +8 -0
  24. data/generators/templates/app/views/mygengo/jobs/_job.haml +36 -0
  25. data/generators/templates/app/views/mygengo/jobs/_revision.haml +2 -0
  26. data/generators/templates/app/views/mygengo/jobs/index.haml +8 -0
  27. data/generators/templates/app/views/mygengo/jobs/new.haml +53 -0
  28. data/generators/templates/app/views/mygengo/jobs/reject_form.haml +36 -0
  29. data/generators/templates/app/views/mygengo/jobs/review_form.haml +54 -0
  30. data/generators/templates/app/views/mygengo/jobs/revise_form.haml +7 -0
  31. data/generators/templates/app/views/mygengo/jobs/revision.haml +8 -0
  32. data/generators/templates/app/views/mygengo/jobs/show.haml +38 -0
  33. data/generators/templates/config/initializers/mugen.rb +2 -0
  34. data/generators/templates/config/routes.rb +16 -0
  35. data/generators/templates/public/stylesheets/mygengo/base.css +397 -0
  36. data/generators/templates/public/stylesheets/mygengo/mugen.css +117 -0
  37. data/generators/templates/public/stylesheets/mygengo/override.css +1 -0
  38. data/generators/templates/public/stylesheets/mygengo/scaffold.css +56 -0
  39. data/generators/templates/public/stylesheets/mygengo/style.css +373 -0
  40. data/lib/generators/mugen/README +3 -0
  41. data/lib/generators/mugen/USAGE +35 -0
  42. data/lib/generators/mugen/mugen_generator.rb +50 -0
  43. data/lib/generators/mugen/templates/app/controllers/mygengo/account_controller.rb +10 -0
  44. data/lib/generators/mugen/templates/app/controllers/mygengo/comments_controller.rb +6 -0
  45. data/lib/generators/mugen/templates/app/controllers/mygengo/jobs_controller.rb +153 -0
  46. data/lib/generators/mugen/templates/app/controllers/mygengo/mygengo_controller.rb +18 -0
  47. data/lib/generators/mugen/templates/app/helpers/mugen_helper.rb +11 -0
  48. data/lib/generators/mugen/templates/app/views/layouts/mygengo.html.erb +52 -0
  49. data/lib/generators/mugen/templates/app/views/mygengo/account/_balance.haml +5 -0
  50. data/lib/generators/mugen/templates/app/views/mygengo/account/_stats.haml +9 -0
  51. data/lib/generators/mugen/templates/app/views/mygengo/account/index.haml +3 -0
  52. data/lib/generators/mugen/templates/app/views/mygengo/comments/_comment.haml +7 -0
  53. data/lib/generators/mugen/templates/app/views/mygengo/comments/_form.haml +10 -0
  54. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_comments.haml +8 -0
  55. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_feedback.haml +8 -0
  56. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_job.haml +36 -0
  57. data/lib/generators/mugen/templates/app/views/mygengo/jobs/_revision.haml +2 -0
  58. data/lib/generators/mugen/templates/app/views/mygengo/jobs/index.haml +8 -0
  59. data/lib/generators/mugen/templates/app/views/mygengo/jobs/new.haml +53 -0
  60. data/lib/generators/mugen/templates/app/views/mygengo/jobs/reject_form.haml +36 -0
  61. data/lib/generators/mugen/templates/app/views/mygengo/jobs/review_form.haml +54 -0
  62. data/lib/generators/mugen/templates/app/views/mygengo/jobs/revise_form.haml +7 -0
  63. data/lib/generators/mugen/templates/app/views/mygengo/jobs/revision.haml +8 -0
  64. data/lib/generators/mugen/templates/app/views/mygengo/jobs/show.haml +38 -0
  65. data/lib/generators/mugen/templates/config/initializers/mugen.rb +2 -0
  66. data/lib/generators/mugen/templates/config/routes2.rb +16 -0
  67. data/lib/generators/mugen/templates/config/routes3.rb +17 -0
  68. data/lib/generators/mugen/templates/public/images/mygengo/blank +0 -0
  69. data/lib/generators/mugen/templates/public/stylesheets/mygengo/base.css +397 -0
  70. data/lib/generators/mugen/templates/public/stylesheets/mygengo/mugen.css +117 -0
  71. data/lib/generators/mugen/templates/public/stylesheets/mygengo/override.css +1 -0
  72. data/lib/generators/mugen/templates/public/stylesheets/mygengo/scaffold.css +56 -0
  73. data/lib/generators/mugen/templates/public/stylesheets/mygengo/style.css +373 -0
  74. data/lib/mugen.rb +73 -0
  75. data/lib/mugen/account.rb +27 -0
  76. data/lib/mugen/client.rb +33 -0
  77. data/lib/mugen/core_extensions.rb +32 -0
  78. data/lib/mugen/httparty_extensions.rb +26 -0
  79. data/lib/mugen/job.rb +169 -0
  80. data/lib/mugen/jobs.rb +42 -0
  81. data/lib/mugen/service.rb +30 -0
  82. data/lib/mugen/version.rb +3 -0
  83. data/lib/tasks/mugen.rake +5 -0
  84. data/mugen.gemspec +33 -0
  85. data/rails/init.rb +1 -0
  86. data/spec/account_spec.rb +22 -0
  87. data/spec/job_spec.rb +40 -0
  88. data/spec/jobs_spec.rb +33 -0
  89. data/spec/mugen_spec.rb +33 -0
  90. data/spec/service_spec.rb +21 -0
  91. data/spec/spec_helper.rb +4 -0
  92. metadata +191 -0
@@ -0,0 +1,33 @@
1
+ # coding: UTF-8
2
+ $LOAD_PATH << File.join(File.dirname(__FILE__), 'lib')
3
+ require 'mugen/version'
4
+ Gem::Specification.new do |s|
5
+ s.name = "mugen"
6
+ s.version = Mugen::VERSION
7
+ s.platform = Gem::Platform::RUBY
8
+ s.authors = ["Vladimir Penkin"]
9
+ s.email = ["penkinv@gmail.com"]
10
+ s.homepage = "http://github.com/shell/mugen"
11
+ s.summary = "MyGengo API wrapper"
12
+ s.description = "MyGengo API wrapper(http://mygengo.com/services/api/dev-docs/)"
13
+ s.rubyforge_project = s.name
14
+
15
+ s.required_rubygems_version = ">= 1.3.6"
16
+
17
+ s.add_runtime_dependency 'activesupport'
18
+ s.add_runtime_dependency 'httparty'
19
+ s.add_runtime_dependency 'haml'
20
+ s.add_runtime_dependency 'ruby-hmac'
21
+
22
+ s.add_development_dependency "rspec"
23
+
24
+ # The list of files to be contained in the gem
25
+ s.files = `git ls-files`.split("\n")
26
+ # s.executables = `git ls-files`.split("\n").map{|f| f =~ /^bin\/(.*)/ ? $1 : nil}.compact
27
+ # s.extensions = `git ls-files ext/extconf.rb`.split("\n")
28
+
29
+ s.require_path = 'lib'
30
+
31
+ # For C extensions
32
+ # s.extensions = "ext/extconf.rb"
33
+ end
@@ -0,0 +1 @@
1
+ require "mugen"
@@ -0,0 +1,22 @@
1
+ require 'spec_helper'
2
+
3
+ describe Mugen::Account do
4
+ before(:each) do
5
+ Mugen.api_key = '6NO~NtyavKh@x-Uz@)0LG_PQ1KJI[(kd_2{oqv}H{ubO5Yu3is~IF^udRwM6QC6n'
6
+ Mugen.private_key = 'w0F((zYj3=09(AD|2B7)jNT@5F[wajwk[6u^stF59wCfuCtwMEMB^c7y=5V~WM^K'
7
+ @account = Mugen::Account
8
+ end
9
+
10
+ it "should retrieve stats" do
11
+ stats = @account.stats
12
+ stats.should be_a(Hash)
13
+ stats.should have_key('credits_spent')
14
+ stats.should have_key('user_since')
15
+ end
16
+
17
+ it "should retrieve balance" do
18
+ balance = @account.balance
19
+ balance.should be_a(Hash)
20
+ balance.should have_key('credits')
21
+ end
22
+ end
@@ -0,0 +1,40 @@
1
+ require 'spec_helper'
2
+
3
+ describe Mugen::Job do
4
+ before(:each) do
5
+ Mugen.api_key = '6NO~NtyavKh@x-Uz@)0LG_PQ1KJI[(kd_2{oqv}H{ubO5Yu3is~IF^udRwM6QC6n'
6
+ Mugen.private_key = 'w0F((zYj3=09(AD|2B7)jNT@5F[wajwk[6u^stF59wCfuCtwMEMB^c7y=5V~WM^K'
7
+ @job = Mugen::Job
8
+ @jobs = Mugen::Jobs.all
9
+ end
10
+
11
+ it "should retrieve job" do
12
+ job = @job.find(@jobs.first['job_id'])
13
+ job.should be_a(Hash)
14
+ job['job_id'].should == @jobs.first['job_id']
15
+ end
16
+
17
+ it "should retrieve job" do
18
+ job = @job.preview(@jobs.first['job_id'])
19
+ # TODO: raw jpeg stream
20
+ end
21
+
22
+
23
+
24
+ # it "should retrieve jobs by group_id" do
25
+ # balance = @jobs.by_group(1)
26
+ # # balance.should be_a(Array)
27
+ # # balance.should_not be_empty
28
+ # end
29
+ #
30
+ # it "should create jobs" do
31
+ # job = {
32
+ # 'slug' => 'API Job lazy loading test',
33
+ # 'body_src' => 'Where in the world is Carmen San Diego?',
34
+ # 'lc_src' => 'en',
35
+ # 'lc_tgt' => 'ja',
36
+ # 'tier' => 'standard'
37
+ # }
38
+ # balance = @jobs.create(job)
39
+ # end
40
+ end
@@ -0,0 +1,33 @@
1
+ require 'spec_helper'
2
+
3
+ describe Mugen::Jobs do
4
+ before(:each) do
5
+ Mugen.api_key = '6NO~NtyavKh@x-Uz@)0LG_PQ1KJI[(kd_2{oqv}H{ubO5Yu3is~IF^udRwM6QC6n'
6
+ Mugen.private_key = 'w0F((zYj3=09(AD|2B7)jNT@5F[wajwk[6u^stF59wCfuCtwMEMB^c7y=5V~WM^K'
7
+ @jobs = Mugen::Jobs
8
+ end
9
+
10
+ it "should retrieve jobs" do
11
+ stats = @jobs.all
12
+ stats.should be_a(Array)
13
+ stats.should_not be_empty
14
+ # TODO: any record should contain key 'job_id
15
+ end
16
+
17
+ # it "should retrieve jobs by group_id" do
18
+ # balance = @jobs.by_group(1)
19
+ # # balance.should be_a(Array)
20
+ # # balance.should_not be_empty
21
+ # end
22
+ #
23
+ # it "should create jobs" do
24
+ # job = {
25
+ # 'slug' => 'API Job lazy loading test',
26
+ # 'body_src' => 'Where in the world is Carmen San Diego?',
27
+ # 'lc_src' => 'en',
28
+ # 'lc_tgt' => 'ja',
29
+ # 'tier' => 'standard'
30
+ # }
31
+ # balance = @jobs.create(job)
32
+ # end
33
+ end
@@ -0,0 +1,33 @@
1
+ require "spec_helper"
2
+
3
+ describe Mugen do
4
+ it "should raise error if API URL is not specified" do
5
+ Mugen.api_url.should == 'http://api.sandbox.mygengo.com/v1/'
6
+ end
7
+
8
+ it "should set API URL" do
9
+ Mugen.api_url = "http://foobar.com"
10
+ Mugen.api_url.should == "http://foobar.com"
11
+ end
12
+
13
+ it "should set API username" do
14
+ Mugen.api_key = "12345"
15
+ Mugen.api_key.should == "12345"
16
+ end
17
+
18
+ it "should raise error if API username is not specified" do
19
+ Mugen.api_key = nil
20
+ lambda { Mugen.api_key }.should raise_error
21
+ end
22
+
23
+ it "should set API password" do
24
+ Mugen.private_key = "12345"
25
+ Mugen.private_key.should == "12345"
26
+ end
27
+
28
+ it "should raise error if API password is not specified" do
29
+ Mugen.private_key = nil
30
+ lambda { Mugen.private_key }.should raise_error
31
+ end
32
+
33
+ end
@@ -0,0 +1,21 @@
1
+ require 'spec_helper'
2
+
3
+ describe Mugen::Service do
4
+ before(:each) do
5
+ Mugen.api_key = '6NO~NtyavKh@x-Uz@)0LG_PQ1KJI[(kd_2{oqv}H{ubO5Yu3is~IF^udRwM6QC6n'
6
+ Mugen.private_key = 'w0F((zYj3=09(AD|2B7)jNT@5F[wajwk[6u^stF59wCfuCtwMEMB^c7y=5V~WM^K'
7
+ @service = Mugen::Service
8
+ end
9
+
10
+ it "should retrieve language_pairs" do
11
+ stats = @service.language_pairs
12
+ stats.should be_a(Array)
13
+ stats.should_not be_empty
14
+ end
15
+
16
+ it "should retrieve languages" do
17
+ balance = @service.languages
18
+ balance.should be_a(Array)
19
+ balance.should_not be_empty
20
+ end
21
+ end
@@ -0,0 +1,4 @@
1
+ require "bundler"
2
+ Bundler.setup
3
+
4
+ require "mugen"
metadata ADDED
@@ -0,0 +1,191 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mugen
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Vladimir Penkin
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-02-07 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: activesupport
16
+ requirement: &70253753959580 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70253753959580
25
+ - !ruby/object:Gem::Dependency
26
+ name: httparty
27
+ requirement: &70253753959120 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70253753959120
36
+ - !ruby/object:Gem::Dependency
37
+ name: haml
38
+ requirement: &70253753958700 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *70253753958700
47
+ - !ruby/object:Gem::Dependency
48
+ name: ruby-hmac
49
+ requirement: &70253753958280 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: *70253753958280
58
+ - !ruby/object:Gem::Dependency
59
+ name: rspec
60
+ requirement: &70253753957860 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *70253753957860
69
+ description: MyGengo API wrapper(http://mygengo.com/services/api/dev-docs/)
70
+ email:
71
+ - penkinv@gmail.com
72
+ executables: []
73
+ extensions: []
74
+ extra_rdoc_files: []
75
+ files:
76
+ - .gitignore
77
+ - .travis.yml
78
+ - CHANGELOG.md
79
+ - Gemfile
80
+ - LICENSE
81
+ - README.md
82
+ - Rakefile
83
+ - autotest/discover.rb
84
+ - generators/README
85
+ - generators/USAGE
86
+ - generators/mugen_generator.rb
87
+ - generators/templates/app/controllers/mygengo/account_controller.rb
88
+ - generators/templates/app/controllers/mygengo/comments_controller.rb
89
+ - generators/templates/app/controllers/mygengo/jobs_controller.rb
90
+ - generators/templates/app/helpers/mugen_helper.rb
91
+ - generators/templates/app/views/layouts/mygengo.html.erb
92
+ - generators/templates/app/views/mygengo/account/_balance.haml
93
+ - generators/templates/app/views/mygengo/account/_stats.haml
94
+ - generators/templates/app/views/mygengo/account/index.haml
95
+ - generators/templates/app/views/mygengo/comments/_comment.haml
96
+ - generators/templates/app/views/mygengo/comments/_form.haml
97
+ - generators/templates/app/views/mygengo/jobs/_comments.haml
98
+ - generators/templates/app/views/mygengo/jobs/_feedback.haml
99
+ - generators/templates/app/views/mygengo/jobs/_job.haml
100
+ - generators/templates/app/views/mygengo/jobs/_revision.haml
101
+ - generators/templates/app/views/mygengo/jobs/index.haml
102
+ - generators/templates/app/views/mygengo/jobs/new.haml
103
+ - generators/templates/app/views/mygengo/jobs/reject_form.haml
104
+ - generators/templates/app/views/mygengo/jobs/review_form.haml
105
+ - generators/templates/app/views/mygengo/jobs/revise_form.haml
106
+ - generators/templates/app/views/mygengo/jobs/revision.haml
107
+ - generators/templates/app/views/mygengo/jobs/show.haml
108
+ - generators/templates/config/initializers/mugen.rb
109
+ - generators/templates/config/routes.rb
110
+ - generators/templates/public/stylesheets/mygengo/base.css
111
+ - generators/templates/public/stylesheets/mygengo/mugen.css
112
+ - generators/templates/public/stylesheets/mygengo/override.css
113
+ - generators/templates/public/stylesheets/mygengo/scaffold.css
114
+ - generators/templates/public/stylesheets/mygengo/style.css
115
+ - lib/generators/mugen/README
116
+ - lib/generators/mugen/USAGE
117
+ - lib/generators/mugen/mugen_generator.rb
118
+ - lib/generators/mugen/templates/app/controllers/mygengo/account_controller.rb
119
+ - lib/generators/mugen/templates/app/controllers/mygengo/comments_controller.rb
120
+ - lib/generators/mugen/templates/app/controllers/mygengo/jobs_controller.rb
121
+ - lib/generators/mugen/templates/app/controllers/mygengo/mygengo_controller.rb
122
+ - lib/generators/mugen/templates/app/helpers/mugen_helper.rb
123
+ - lib/generators/mugen/templates/app/views/layouts/mygengo.html.erb
124
+ - lib/generators/mugen/templates/app/views/mygengo/account/_balance.haml
125
+ - lib/generators/mugen/templates/app/views/mygengo/account/_stats.haml
126
+ - lib/generators/mugen/templates/app/views/mygengo/account/index.haml
127
+ - lib/generators/mugen/templates/app/views/mygengo/comments/_comment.haml
128
+ - lib/generators/mugen/templates/app/views/mygengo/comments/_form.haml
129
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/_comments.haml
130
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/_feedback.haml
131
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/_job.haml
132
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/_revision.haml
133
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/index.haml
134
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/new.haml
135
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/reject_form.haml
136
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/review_form.haml
137
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/revise_form.haml
138
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/revision.haml
139
+ - lib/generators/mugen/templates/app/views/mygengo/jobs/show.haml
140
+ - lib/generators/mugen/templates/config/initializers/mugen.rb
141
+ - lib/generators/mugen/templates/config/routes2.rb
142
+ - lib/generators/mugen/templates/config/routes3.rb
143
+ - lib/generators/mugen/templates/public/images/mygengo/blank
144
+ - lib/generators/mugen/templates/public/stylesheets/mygengo/base.css
145
+ - lib/generators/mugen/templates/public/stylesheets/mygengo/mugen.css
146
+ - lib/generators/mugen/templates/public/stylesheets/mygengo/override.css
147
+ - lib/generators/mugen/templates/public/stylesheets/mygengo/scaffold.css
148
+ - lib/generators/mugen/templates/public/stylesheets/mygengo/style.css
149
+ - lib/mugen.rb
150
+ - lib/mugen/account.rb
151
+ - lib/mugen/client.rb
152
+ - lib/mugen/core_extensions.rb
153
+ - lib/mugen/httparty_extensions.rb
154
+ - lib/mugen/job.rb
155
+ - lib/mugen/jobs.rb
156
+ - lib/mugen/service.rb
157
+ - lib/mugen/version.rb
158
+ - lib/tasks/mugen.rake
159
+ - mugen.gemspec
160
+ - rails/init.rb
161
+ - spec/account_spec.rb
162
+ - spec/job_spec.rb
163
+ - spec/jobs_spec.rb
164
+ - spec/mugen_spec.rb
165
+ - spec/service_spec.rb
166
+ - spec/spec_helper.rb
167
+ homepage: http://github.com/shell/mugen
168
+ licenses: []
169
+ post_install_message:
170
+ rdoc_options: []
171
+ require_paths:
172
+ - lib
173
+ required_ruby_version: !ruby/object:Gem::Requirement
174
+ none: false
175
+ requirements:
176
+ - - ! '>='
177
+ - !ruby/object:Gem::Version
178
+ version: '0'
179
+ required_rubygems_version: !ruby/object:Gem::Requirement
180
+ none: false
181
+ requirements:
182
+ - - ! '>='
183
+ - !ruby/object:Gem::Version
184
+ version: 1.3.6
185
+ requirements: []
186
+ rubyforge_project: mugen
187
+ rubygems_version: 1.8.16
188
+ signing_key:
189
+ specification_version: 3
190
+ summary: MyGengo API wrapper
191
+ test_files: []