mumuki-python-runner 1.4.0 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e612f940397a2348ef6d4c158bcbed0a3717de566d041c14adcbf80e96dfef4a
4
- data.tar.gz: 7c54b548c81131d82db8ee1bdc57eb6cd11e416d9ba3096ef99740f245c19608
3
+ metadata.gz: b96184406c101c4a7b9e627936c5b4a06fa263b5a9de6a3e3f78a0a62f78499b
4
+ data.tar.gz: d6f7a4575bded83c5f11c368c5aefe0a0b2d93bc3678bcf11b213eee03c2a5bf
5
5
  SHA512:
6
- metadata.gz: fbf8986fe189ce8a4b7ece4d851aefd0db54ec44fb322085121a703b1acc62d4172fadd09d38eba19b972079c346035c30d800bf19b70c96f65463b208d19158
7
- data.tar.gz: 75fb4c21302155911644257a2738ce5cfd23f5d81fe3c02051c0a41d91f115cad1acc8e4047c496f140f1035dbba659f6cf99f8a1670e08ef7bb0c1191ab75a7
6
+ metadata.gz: 42aeb75b306a206b0d70dbbfee375b687871db2d16f392bdd47c0ce9f7010f79968608542fc0d2e94747dc45600d2736f720784f9ae6a120f8a9bb1cae1b41fa
7
+ data.tar.gz: 222ba1f7dd0b7096e79eb5723bc08c05af42bbdbc77696d6660a724cf110312b3678ca95114bde71fc71046525e41790f166972bdc9314e29801d3ed4c5c29ae
data/lib/base.rb ADDED
@@ -0,0 +1,10 @@
1
+ require 'mumukit'
2
+ require 'nokogiri'
3
+
4
+ I18n.load_translations_path File.join(__dir__, 'locales', '*.yml')
5
+
6
+ require_relative './base/version'
7
+ require_relative './base/test_hook'
8
+ require_relative './base/query_hook'
9
+ require_relative './base/expectations_hook'
10
+ require_relative './base/metadata_hook'
@@ -0,0 +1,15 @@
1
+ class BasePythonExpectationsHook < Mumukit::Templates::MulangExpectationsHook
2
+ include_smells true
3
+
4
+ def default_smell_exceptions
5
+ LOGIC_SMELLS + FUNCTIONAL_SMELLS
6
+ end
7
+
8
+ def domain_language
9
+ {
10
+ caseStyle: 'RubyCase',
11
+ minimumIdentifierSize: 3,
12
+ jargon: []
13
+ }
14
+ end
15
+ end
@@ -1,9 +1,9 @@
1
- class PythonMetadataHook < Mumukit::Hook
1
+ class BasePythonMetadataHook < Mumukit::Hook
2
2
  def metadata
3
3
  {language: {
4
4
  name: 'python',
5
5
  icon: {type: 'devicon', name: 'python'},
6
- version: '2.7.6',
6
+ version: version,
7
7
  extension: 'py',
8
8
  ace_mode: 'python'
9
9
  },
@@ -18,4 +18,6 @@ class Test(unittest.TestCase):
18
18
  python
19
19
  }}
20
20
  end
21
- end
21
+
22
+ required :version
23
+ end
@@ -1,4 +1,4 @@
1
- class PythonQueryHook < Mumukit::Templates::FileHook
1
+ class BasePythonQueryHook < Mumukit::Templates::FileHook
2
2
  with_error_patterns
3
3
  isolated true
4
4
 
@@ -8,6 +8,7 @@ class PythonQueryHook < Mumukit::Templates::FileHook
8
8
 
9
9
  def compile_file_content(req)
10
10
  <<python
11
+ # -*- coding: UTF-8 -*-
11
12
  import string, sys, os
12
13
 
13
14
  #{req.extra}
@@ -1,4 +1,4 @@
1
- class PythonTestHook < Mumukit::Templates::FileHook
1
+ class BasePythonTestHook < Mumukit::Templates::FileHook
2
2
  isolated true
3
3
 
4
4
  def tempfile_extension
@@ -6,11 +6,13 @@ class PythonTestHook < Mumukit::Templates::FileHook
6
6
  end
7
7
 
8
8
  def command_line(filename)
9
- "python #{filename}"
9
+ "rununittest #{filename}"
10
10
  end
11
11
 
12
12
  def compile_file_content(request)
13
13
  <<python
14
+ # -*- coding: UTF-8 -*-
15
+
14
16
  import unittest
15
17
  import xmlrunner
16
18
  import sys
@@ -20,7 +22,7 @@ import sys
20
22
  #{test_class(request.test)}
21
23
 
22
24
  unittest.main(
23
- testRunner=xmlrunner.XMLTestRunner(output=sys.__stdout__),
25
+ testRunner=xmlrunner.XMLTestRunner(output='./xml-unittest-output'),
24
26
  failfast=False,
25
27
  buffer=False,
26
28
  catchbreak=False
@@ -0,0 +1,3 @@
1
+ module BasePythonVersionHook
2
+ VERSION = '1.5.0'
3
+ end
@@ -0,0 +1,5 @@
1
+ class Python2ExpectationsHook < BasePythonExpectationsHook
2
+ def language
3
+ 'Python2'
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ class Python2MetadataHook < BasePythonMetadataHook
2
+ def version
3
+ '2.7.16'
4
+ end
5
+ end
6
+
7
+ PythonMetadataHook = Python2MetadataHook
8
+
@@ -0,0 +1,4 @@
1
+ class Python2QueryHook < BasePythonQueryHook
2
+ end
3
+
4
+ PythonQueryHook = Python2QueryHook
@@ -0,0 +1,4 @@
1
+ class Python2TestHook < BasePythonTestHook
2
+ end
3
+
4
+ PythonTestHook = Python2TestHook
@@ -0,0 +1,3 @@
1
+ Python2VersionHook = BasePythonVersionHook
2
+ PythonVersionHook = Python2VersionHook
3
+
@@ -0,0 +1,18 @@
1
+ require_relative './base'
2
+
3
+ def reload_python2_runner!
4
+ Mumukit.runner_name = 'python'
5
+ Mumukit.configure do |config|
6
+ config.docker_image = 'mumuki/mumuki-python2-worker:0.1'
7
+ config.stateful = true
8
+ end
9
+ end
10
+
11
+ # for testing only
12
+ reload_python2_runner!
13
+
14
+ require_relative './python2/version'
15
+ require_relative './python2/test_hook'
16
+ require_relative './python2/query_hook'
17
+ require_relative './python2/expectations_hook'
18
+ require_relative './python2/metadata_hook'
@@ -0,0 +1,5 @@
1
+ class Python3ExpectationsHook < BasePythonExpectationsHook
2
+ def language
3
+ 'Python3'
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ class Python3MetadataHook < BasePythonMetadataHook
2
+ def version
3
+ '3.7.3'
4
+ end
5
+ end
6
+
@@ -0,0 +1,2 @@
1
+ class Python3QueryHook < BasePythonQueryHook
2
+ end
@@ -0,0 +1,2 @@
1
+ class Python3TestHook < BasePythonTestHook
2
+ end
@@ -0,0 +1 @@
1
+ Python3VersionHook = BasePythonVersionHook
@@ -0,0 +1,18 @@
1
+ require_relative './base'
2
+
3
+ def reload_python3_runner!
4
+ Mumukit.runner_name = 'python3'
5
+ Mumukit.configure do |config|
6
+ config.docker_image = 'mumuki/mumuki-python3-worker:0.1'
7
+ config.stateful = true
8
+ end
9
+ end
10
+
11
+ # for testing only
12
+ reload_python3_runner!
13
+
14
+ require_relative './python3/version'
15
+ require_relative './python3/test_hook'
16
+ require_relative './python3/query_hook'
17
+ require_relative './python3/expectations_hook'
18
+ require_relative './python3/metadata_hook'
data/lib/python_runner.rb CHANGED
@@ -1,15 +1 @@
1
- require 'mumukit'
2
- require 'nokogiri'
3
-
4
- I18n.load_translations_path File.join(__dir__, 'locales', '*.yml')
5
-
6
- Mumukit.runner_name = 'python'
7
- Mumukit.configure do |config|
8
- config.docker_image = 'mumuki/mumuki-python-worker:1.1'
9
- config.stateful = true
10
- end
11
-
12
- require_relative 'version'
13
- require_relative 'test_hook'
14
- require_relative 'query_hook'
15
- require_relative 'metadata_hook'
1
+ require_relative './python2_runner'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mumuki-python-runner
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
4
+ version: 1.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Franco Leonardo Bulgarelli
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-26 00:00:00.000000000 Z
11
+ date: 2019-05-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mumukit
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.30'
27
+ - !ruby/object:Gem::Dependency
28
+ name: mulang
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '4.5'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '4.5'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: bundler
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -115,14 +129,28 @@ executables: []
115
129
  extensions: []
116
130
  extra_rdoc_files: []
117
131
  files:
132
+ - lib/base.rb
133
+ - lib/base/expectations_hook.rb
134
+ - lib/base/metadata_hook.rb
135
+ - lib/base/query_hook.rb
136
+ - lib/base/test_hook.rb
137
+ - lib/base/version.rb
118
138
  - lib/locales/en.yml
119
139
  - lib/locales/es.yml
120
- - lib/metadata_hook.rb
140
+ - lib/python2/expectations_hook.rb
141
+ - lib/python2/metadata_hook.rb
142
+ - lib/python2/query_hook.rb
143
+ - lib/python2/test_hook.rb
144
+ - lib/python2/version.rb
145
+ - lib/python2_runner.rb
146
+ - lib/python3/expectations_hook.rb
147
+ - lib/python3/metadata_hook.rb
148
+ - lib/python3/query_hook.rb
149
+ - lib/python3/test_hook.rb
150
+ - lib/python3/version.rb
151
+ - lib/python3_runner.rb
121
152
  - lib/python_runner.rb
122
- - lib/query_hook.rb
123
- - lib/test_hook.rb
124
- - lib/version.rb
125
- homepage: http://github.com/mumuki/mumuki-python-server
153
+ homepage: http://github.com/mumuki/mumuki-python-runner
126
154
  licenses:
127
155
  - MIT
128
156
  metadata: {}
@@ -141,7 +169,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
141
169
  - !ruby/object:Gem::Version
142
170
  version: '0'
143
171
  requirements: []
144
- rubygems_version: 3.0.2
172
+ rubygems_version: 3.0.3
145
173
  signing_key:
146
174
  specification_version: 4
147
175
  summary: Python Runner for Mumuki
data/lib/version.rb DELETED
@@ -1,3 +0,0 @@
1
- module PythonVersionHook
2
- VERSION = '1.4.0'
3
- end