From 28c389bd3cdeaff6b1ed6d1fe5f06e705821ce26 Mon Sep 17 00:00:00 2001 From: Kapil Date: Sat, 16 Jun 2018 02:25:40 +0530 Subject: [PATCH] Add support for ruby --- .travis.yml | 1 + config.js | 5 +++++ test/run.ruby.spec.ts | 18 ++++++++++++++++++ 3 files changed, 24 insertions(+) create mode 100644 test/run.ruby.spec.ts diff --git a/.travis.yml b/.travis.yml index 1604e53..8626aa4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -17,6 +17,7 @@ install: - docker pull codingblocks/judge-worker-py3 - docker pull codingblocks/judge-worker-nodejs6 - docker pull codingblocks/judge-worker-nodejs8 + - docker pull codingblocks/judge-worker-ruby script: - npm run cover diff --git a/config.js b/config.js index 37f34ea..9e71ebf 100644 --- a/config.js +++ b/config.js @@ -43,6 +43,11 @@ exports = module.exports = { SOURCE_FILE: 'script.js', CPU_SHARE: "0.8", MEM_LIMIT: '300m' + }, + 'ruby': { + SOURCE_FILE: 'script.rb', + CPU_SHARE: "0.8", + MEM_LIMIT: '300m' } } } \ No newline at end of file diff --git a/test/run.ruby.spec.ts b/test/run.ruby.spec.ts new file mode 100644 index 0000000..4251287 --- /dev/null +++ b/test/run.ruby.spec.ts @@ -0,0 +1,18 @@ +import {execRun} from '../src/tasks/run' +import {expect} from 'chai' + + +describe('run - ruby', () => { + it('.rb file runs correctly', () => { + execRun({ + id: 27, + lang: 'ruby', + source: (new Buffer(` +puts "Hello " + gets.to_s + `)).toString('base64'), + stdin: (new Buffer('World')).toString('base64') + }, (runResult) => { + expect(new Buffer(runResult.stdout, 'base64').toString('ascii')).to.eq('Hello World\n') + }) + }) +}) \ No newline at end of file