jtest 0.2.0 → 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.
- checksums.yaml +7 -0
- data/.gitignore +18 -0
- data/Gemfile +3 -15
- data/LICENSE.txt +3 -1
- data/README.rdoc +4 -0
- data/Rakefile +1 -45
- data/jtest.gemspec +22 -75
- data/lib/jtest.rb +1 -0
- data/lib/jtest/commands/test.rb +5 -5
- data/lib/jtest/version.rb +3 -0
- metadata +32 -97
- data/.document +0 -5
- data/VERSION +0 -1
- data/test/helper.rb +0 -18
- data/test/jtest/test_problem.rb +0 -21
- data/test/test_jtest.rb +0 -15
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: cf12d6d92bc39c88f9f258f352bda3d35c99c8b0
|
4
|
+
data.tar.gz: c8f620e2415e791efc4a51ad8aa6d9c0a7eb8b31
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c1ecce2001841ade6b5be953ed2745317549020fcd32c09ae66d5f8c4b95503bb1c346a6e16f5ae4dde43358bc5f485216b9e39e4f263d6e2054f2d36d148d0a
|
7
|
+
data.tar.gz: 99302f098fdda5f9a28692fc45441e79e8e7873efce30a785d30b053b75d8aae83f83a26ac159c09b42a87d560cbbd689096b2fa5e993ef7410a87a45924dd3f
|
data/.gitignore
ADDED
data/Gemfile
CHANGED
@@ -1,16 +1,4 @@
|
|
1
|
-
source
|
2
|
-
# Add dependencies required to use your gem here.
|
3
|
-
# Example:
|
4
|
-
# gem "activesupport", ">= 2.3.5"
|
5
|
-
gem "thor"
|
6
|
-
gem "htmlentities", "~> 4.3.1"
|
1
|
+
source 'https://rubygems.org'
|
7
2
|
|
8
|
-
#
|
9
|
-
|
10
|
-
group :development do
|
11
|
-
gem "shoulda", ">= 0"
|
12
|
-
gem "rdoc", "~> 3.12"
|
13
|
-
gem "bundler", ">= 1.0.0"
|
14
|
-
gem "jeweler", "~> 1.8.4"
|
15
|
-
gem "simplecov", :require => false, :group => :test
|
16
|
-
end
|
3
|
+
# Specify your gem's dependencies in jtest.gemspec
|
4
|
+
gemspec
|
data/LICENSE.txt
CHANGED
data/README.rdoc
CHANGED
@@ -3,6 +3,10 @@ jtest is a command-line tool designed to improve your productivity when solving
|
|
3
3
|
|
4
4
|
jtest provides some simple commands to finding new problems and creating workspaces to solve them. Also, jtest can compile and test your "solutions" with the public samples of the problems.
|
5
5
|
|
6
|
+
== Installation
|
7
|
+
jtest is avaliable in RubyGems. To install it type:
|
8
|
+
gem install jtest
|
9
|
+
|
6
10
|
== Usage
|
7
11
|
|
8
12
|
=== Finding a problem
|
data/Rakefile
CHANGED
@@ -1,45 +1 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
require 'rubygems'
|
4
|
-
require 'bundler'
|
5
|
-
begin
|
6
|
-
Bundler.setup(:default, :development)
|
7
|
-
rescue Bundler::BundlerError => e
|
8
|
-
$stderr.puts e.message
|
9
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
-
exit e.status_code
|
11
|
-
end
|
12
|
-
require 'rake'
|
13
|
-
|
14
|
-
require 'jeweler'
|
15
|
-
Jeweler::Tasks.new do |gem|
|
16
|
-
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
17
|
-
gem.name = "jtest"
|
18
|
-
gem.homepage = "http://github.com/hecrj/jtest"
|
19
|
-
gem.license = "MIT"
|
20
|
-
gem.summary = "Jutge.org testing tool!"
|
21
|
-
gem.description = "Tool for automatic testing and creating problems from Jutge.org"
|
22
|
-
gem.email = "hector0193@gmail.com"
|
23
|
-
gem.authors = ["Héctor Ramón Jiménez"]
|
24
|
-
# dependencies defined in Gemfile
|
25
|
-
end
|
26
|
-
Jeweler::RubygemsDotOrgTasks.new
|
27
|
-
|
28
|
-
require 'rake/testtask'
|
29
|
-
Rake::TestTask.new(:test) do |test|
|
30
|
-
test.libs << 'lib' << 'test'
|
31
|
-
test.pattern = 'test/**/test_*.rb'
|
32
|
-
test.verbose = true
|
33
|
-
end
|
34
|
-
|
35
|
-
task :default => :test
|
36
|
-
|
37
|
-
require 'rdoc/task'
|
38
|
-
Rake::RDocTask.new do |rdoc|
|
39
|
-
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
40
|
-
|
41
|
-
rdoc.rdoc_dir = 'rdoc'
|
42
|
-
rdoc.title = "jtest #{version}"
|
43
|
-
rdoc.rdoc_files.include('README*')
|
44
|
-
rdoc.rdoc_files.include('lib/**/*.rb')
|
45
|
-
end
|
1
|
+
require "bundler/gem_tasks"
|
data/jtest.gemspec
CHANGED
@@ -1,80 +1,27 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
|
4
|
-
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'jtest/version'
|
5
5
|
|
6
|
-
Gem::Specification.new do |
|
7
|
-
|
8
|
-
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "jtest"
|
8
|
+
spec.version = Jtest::VERSION
|
9
|
+
spec.authors = ["Héctor"]
|
10
|
+
spec.email = ["hector0193@gmail.com"]
|
11
|
+
spec.description = %q{Tool for automatic testing and creating problems from Jutge.org}
|
12
|
+
spec.summary = %q{Tool for automatic testing and creating problems from Jutge.org}
|
13
|
+
spec.homepage = ""
|
14
|
+
spec.license = "MIT"
|
9
15
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
s.executables = ["jtest"]
|
16
|
-
s.extensions = ["ext/mkrf_conf.rb"]
|
17
|
-
s.extra_rdoc_files = [
|
18
|
-
"LICENSE.txt",
|
19
|
-
"README.rdoc"
|
20
|
-
]
|
21
|
-
s.files = [
|
22
|
-
".document",
|
23
|
-
"Gemfile",
|
24
|
-
"LICENSE.txt",
|
25
|
-
"README.rdoc",
|
26
|
-
"Rakefile",
|
27
|
-
"VERSION",
|
28
|
-
"bin/jtest",
|
29
|
-
"ext/mkrf_conf.rb",
|
30
|
-
"jtest.gemspec",
|
31
|
-
"lib/jtest.rb",
|
32
|
-
"lib/jtest/cli.rb",
|
33
|
-
"lib/jtest/commands.rb",
|
34
|
-
"lib/jtest/commands/find.rb",
|
35
|
-
"lib/jtest/commands/new.rb",
|
36
|
-
"lib/jtest/commands/test.rb",
|
37
|
-
"lib/jtest/commands/update.rb",
|
38
|
-
"lib/jtest/problem.rb",
|
39
|
-
"lib/jtest/templates/main.tt",
|
40
|
-
"test/helper.rb",
|
41
|
-
"test/jtest/test_problem.rb",
|
42
|
-
"test/test_jtest.rb"
|
43
|
-
]
|
44
|
-
s.homepage = "http://github.com/hecrj/jtest"
|
45
|
-
s.licenses = ["MIT"]
|
46
|
-
s.require_paths = ["lib"]
|
47
|
-
s.rubygems_version = "1.8.24"
|
48
|
-
s.summary = "Jutge.org testing tool!"
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
spec.extensions = ["ext/mkrf_conf.rb"]
|
49
21
|
|
50
|
-
|
51
|
-
|
22
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
23
|
+
spec.add_development_dependency "rake"
|
52
24
|
|
53
|
-
|
54
|
-
|
55
|
-
s.add_runtime_dependency(%q<htmlentities>, ["~> 4.3.1"])
|
56
|
-
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
57
|
-
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
58
|
-
s.add_development_dependency(%q<bundler>, [">= 1.0.0"])
|
59
|
-
s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
|
60
|
-
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
61
|
-
else
|
62
|
-
s.add_dependency(%q<thor>, [">= 0"])
|
63
|
-
s.add_dependency(%q<htmlentities>, ["~> 4.3.1"])
|
64
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
65
|
-
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
66
|
-
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
67
|
-
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
68
|
-
s.add_dependency(%q<simplecov>, [">= 0"])
|
69
|
-
end
|
70
|
-
else
|
71
|
-
s.add_dependency(%q<thor>, [">= 0"])
|
72
|
-
s.add_dependency(%q<htmlentities>, ["~> 4.3.1"])
|
73
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
74
|
-
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
75
|
-
s.add_dependency(%q<bundler>, [">= 1.0.0"])
|
76
|
-
s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
|
77
|
-
s.add_dependency(%q<simplecov>, [">= 0"])
|
78
|
-
end
|
25
|
+
spec.add_runtime_dependency "thor"
|
26
|
+
spec.add_runtime_dependency "htmlentities", "~> 4.3.1"
|
79
27
|
end
|
80
|
-
|
data/lib/jtest.rb
CHANGED
data/lib/jtest/commands/test.rb
CHANGED
@@ -28,8 +28,8 @@ module Jtest
|
|
28
28
|
|
29
29
|
private
|
30
30
|
def perform_test(dir)
|
31
|
-
unless File.exists?('
|
32
|
-
say_status :missing, "#{dir}/
|
31
|
+
unless File.exists?('Makefile')
|
32
|
+
say_status :missing, "#{dir}/Makefile", :magenta
|
33
33
|
return
|
34
34
|
end
|
35
35
|
|
@@ -41,11 +41,11 @@ module Jtest
|
|
41
41
|
return
|
42
42
|
end
|
43
43
|
|
44
|
-
say_status :compile, "
|
45
|
-
compiled = system("
|
44
|
+
say_status :compile, "make test", :blue
|
45
|
+
compiled = system("make test")
|
46
46
|
|
47
47
|
unless compiled
|
48
|
-
result :failed, "
|
48
|
+
result :failed, "make test", :red
|
49
49
|
return
|
50
50
|
end
|
51
51
|
|
metadata
CHANGED
@@ -1,144 +1,85 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jtest
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
|
-
- Héctor
|
7
|
+
- Héctor
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-10-19 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
16
|
-
requirement: !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: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
30
|
-
- !ruby/object:Gem::Dependency
|
31
|
-
name: htmlentities
|
14
|
+
name: bundler
|
32
15
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
16
|
requirements:
|
35
17
|
- - ~>
|
36
18
|
- !ruby/object:Gem::Version
|
37
|
-
version:
|
38
|
-
type: :
|
19
|
+
version: '1.3'
|
20
|
+
type: :development
|
39
21
|
prerelease: false
|
40
22
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
23
|
requirements:
|
43
24
|
- - ~>
|
44
25
|
- !ruby/object:Gem::Version
|
45
|
-
version:
|
26
|
+
version: '1.3'
|
46
27
|
- !ruby/object:Gem::Dependency
|
47
|
-
name:
|
28
|
+
name: rake
|
48
29
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
30
|
requirements:
|
51
|
-
- -
|
31
|
+
- - '>='
|
52
32
|
- !ruby/object:Gem::Version
|
53
33
|
version: '0'
|
54
34
|
type: :development
|
55
35
|
prerelease: false
|
56
36
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
37
|
requirements:
|
59
|
-
- -
|
38
|
+
- - '>='
|
60
39
|
- !ruby/object:Gem::Version
|
61
40
|
version: '0'
|
62
41
|
- !ruby/object:Gem::Dependency
|
63
|
-
name:
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
|
-
requirements:
|
67
|
-
- - ~>
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: '3.12'
|
70
|
-
type: :development
|
71
|
-
prerelease: false
|
72
|
-
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ~>
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: '3.12'
|
78
|
-
- !ruby/object:Gem::Dependency
|
79
|
-
name: bundler
|
42
|
+
name: thor
|
80
43
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
44
|
requirements:
|
83
|
-
- -
|
45
|
+
- - '>='
|
84
46
|
- !ruby/object:Gem::Version
|
85
|
-
version:
|
86
|
-
type: :
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
87
49
|
prerelease: false
|
88
50
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
51
|
requirements:
|
91
|
-
- -
|
52
|
+
- - '>='
|
92
53
|
- !ruby/object:Gem::Version
|
93
|
-
version:
|
54
|
+
version: '0'
|
94
55
|
- !ruby/object:Gem::Dependency
|
95
|
-
name:
|
56
|
+
name: htmlentities
|
96
57
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
58
|
requirements:
|
99
59
|
- - ~>
|
100
60
|
- !ruby/object:Gem::Version
|
101
|
-
version:
|
102
|
-
type: :
|
61
|
+
version: 4.3.1
|
62
|
+
type: :runtime
|
103
63
|
prerelease: false
|
104
64
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
65
|
requirements:
|
107
66
|
- - ~>
|
108
67
|
- !ruby/object:Gem::Version
|
109
|
-
version:
|
110
|
-
- !ruby/object:Gem::Dependency
|
111
|
-
name: simplecov
|
112
|
-
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
|
-
requirements:
|
115
|
-
- - ! '>='
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: '0'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: '0'
|
68
|
+
version: 4.3.1
|
126
69
|
description: Tool for automatic testing and creating problems from Jutge.org
|
127
|
-
email:
|
70
|
+
email:
|
71
|
+
- hector0193@gmail.com
|
128
72
|
executables:
|
129
73
|
- jtest
|
130
74
|
extensions:
|
131
75
|
- ext/mkrf_conf.rb
|
132
|
-
extra_rdoc_files:
|
133
|
-
- LICENSE.txt
|
134
|
-
- README.rdoc
|
76
|
+
extra_rdoc_files: []
|
135
77
|
files:
|
136
|
-
- .
|
78
|
+
- .gitignore
|
137
79
|
- Gemfile
|
138
80
|
- LICENSE.txt
|
139
81
|
- README.rdoc
|
140
82
|
- Rakefile
|
141
|
-
- VERSION
|
142
83
|
- bin/jtest
|
143
84
|
- ext/mkrf_conf.rb
|
144
85
|
- jtest.gemspec
|
@@ -151,35 +92,29 @@ files:
|
|
151
92
|
- lib/jtest/commands/update.rb
|
152
93
|
- lib/jtest/problem.rb
|
153
94
|
- lib/jtest/templates/main.tt
|
154
|
-
-
|
155
|
-
|
156
|
-
- test/test_jtest.rb
|
157
|
-
homepage: http://github.com/hecrj/jtest
|
95
|
+
- lib/jtest/version.rb
|
96
|
+
homepage: ''
|
158
97
|
licenses:
|
159
98
|
- MIT
|
99
|
+
metadata: {}
|
160
100
|
post_install_message:
|
161
101
|
rdoc_options: []
|
162
102
|
require_paths:
|
163
103
|
- lib
|
164
104
|
required_ruby_version: !ruby/object:Gem::Requirement
|
165
|
-
none: false
|
166
105
|
requirements:
|
167
|
-
- -
|
106
|
+
- - '>='
|
168
107
|
- !ruby/object:Gem::Version
|
169
108
|
version: '0'
|
170
|
-
segments:
|
171
|
-
- 0
|
172
|
-
hash: -358689626784226077
|
173
109
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
174
|
-
none: false
|
175
110
|
requirements:
|
176
|
-
- -
|
111
|
+
- - '>='
|
177
112
|
- !ruby/object:Gem::Version
|
178
113
|
version: '0'
|
179
114
|
requirements: []
|
180
115
|
rubyforge_project:
|
181
|
-
rubygems_version:
|
116
|
+
rubygems_version: 2.0.3
|
182
117
|
signing_key:
|
183
|
-
specification_version:
|
184
|
-
summary: Jutge.org
|
118
|
+
specification_version: 4
|
119
|
+
summary: Tool for automatic testing and creating problems from Jutge.org
|
185
120
|
test_files: []
|
data/.document
DELETED
data/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.2.0
|
data/test/helper.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'bundler'
|
3
|
-
begin
|
4
|
-
Bundler.setup(:default, :development)
|
5
|
-
rescue Bundler::BundlerError => e
|
6
|
-
$stderr.puts e.message
|
7
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
8
|
-
exit e.status_code
|
9
|
-
end
|
10
|
-
require 'test/unit'
|
11
|
-
require 'shoulda'
|
12
|
-
|
13
|
-
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
14
|
-
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
15
|
-
require 'jtest/cli'
|
16
|
-
|
17
|
-
class Test::Unit::TestCase
|
18
|
-
end
|
data/test/jtest/test_problem.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
require 'helper'
|
2
|
-
|
3
|
-
class TestProblem < Test::Unit::TestCase
|
4
|
-
def setup
|
5
|
-
|
6
|
-
end
|
7
|
-
|
8
|
-
should "retrieve problem information correctly" do
|
9
|
-
problem = Jtest::Problem.new("93774") # Fractal pictures
|
10
|
-
problem.retrieve_info
|
11
|
-
|
12
|
-
assert problem.exists?
|
13
|
-
assert_equal("P93774_en: Fractal pictures", problem.title)
|
14
|
-
end
|
15
|
-
|
16
|
-
should "if an invalid problem id is given" do
|
17
|
-
problem = Jtest::Problem.new("Chunky_bacon")
|
18
|
-
|
19
|
-
assert !problem.exists?
|
20
|
-
end
|
21
|
-
end
|
data/test/test_jtest.rb
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
require 'helper'
|
2
|
-
|
3
|
-
class TestJtest < Test::Unit::TestCase
|
4
|
-
def setup
|
5
|
-
@jtest = Jtest::CLI.new
|
6
|
-
end
|
7
|
-
|
8
|
-
should "create a problem with its samples" do
|
9
|
-
@jtest.new("93774")
|
10
|
-
|
11
|
-
assert(Dir.exists?("P93774_Fractal_pictures"))
|
12
|
-
|
13
|
-
@jtest.remove_file("P93774_Fractal_pictures")
|
14
|
-
end
|
15
|
-
end
|