Ejemplo n.º 1
0
def run_code(code, language_id):
    ideone_api = Ideone(
        constants.IDEONE_USERNAME,
        constants.IDEONE_PASSWORD,
        api_url='http://ronreiter.compilers.sphere-engine.com/api/1/service.wsdl')

    code = ideone_api.create_submission(code, language_id=language_id, std_input="")["link"]
    result = None

    while True:
        time.sleep(1)
        result = ideone_api.submission_details(code)
        if result["status"] in [1,3]:
            continue

        break

    data = { "code" : code }
    if result["stderr"] or result["cmpinfo"]:
        data["output"] = "exception"
        if result["cmpinfo"]:
            data["text"] = result["cmpinfo"]
        elif result["stderr"]:
            data["text"] = result["stderr"]
    else:
        data["output"] = "text"
        data["text"] = result["output"]

    return data
Ejemplo n.º 2
0
import cgi
import urllib
import hashlib
import time
import functools

from flask import Flask, render_template, request, make_response, session
#import pymongo
#import redis
import sys

from ideone import Ideone

import constants

ideone_api = Ideone(constants.IDEONE_USERNAME, constants.IDEONE_PASSWORD)
#cache = redis.Redis(host=constants.CACHE_HOST)

# mongo connection
#client = pymongo.MongoClient(host=constants.DB_HOST)
#users = client.tutorials.users

# Flask app
app = Flask(__name__)
app.secret_key = constants.SECRET_KEY

sections = re.compile(
    r"Tutorial\n[=\-]+\n+(.*)\n*Tutorial Code\n[=\-]+\n+(.*)\n*Expected Output\n[=\-]+\n+(.*)\n*Solution\n[=\-]+\n*(.*)\n*",
    re.MULTILINE | re.DOTALL)
WIKI_WORD_PATTERN = re.compile('\[\[([^]|]+\|)?([^]]+)\]\]')
DEFAULT_DOMAIN = constants.LEARNPYTHON_DOMAIN if not len(
Ejemplo n.º 3
0
from ideone import Ideone
import time
i = Ideone('antonsemenov', 'abc123123')	

def checkSolution(code, checkers, langId):
	p = {}
	p['result'] = 'This is win!'
	for e in checkers:
		currSubmission = i.create_submission(code, language_id = langId, std_input=e.input_value)
		while (i.submission_status(currSubmission['link'])['status'] != 0):
			time.sleep(1)
		if (i.submission_details(currSubmission['link'])['result'] != 15):
			p['result'] = 'Fail, sorry'
			break
	return p
import os
from ideone import Ideone
i = Ideone(os.getenv('IDEUSER'), os.getenv('IDEPASS'))
print(i.create_submission('print(42)', language_name='python', run=False))
import urllib
import urllib2

from collections import OrderedDict

from docutils import nodes
from docutils.parsers.rst import Directive

from ideone import Ideone

IDEONE_AUTHENTICATED = False

CODE_MAP_JSON = 'codemap.json'

try:
    ideone_auth = Ideone('APIUSER', 'APIPASSWORD')
except Exception as e:
    IDEONE_AUTHENTICATED = False
else:
    IDEONE_AUTHENTICATED = True


class RunCodeBlock(nodes.General, nodes.FixedTextElement):
    pass


class RunCode(Directive):
    has_content = False
    required_arguments = 1
    optional_arguments = 0
    option_spec = dict(codesite=str, language=str, run=True)
Ejemplo n.º 6
0
import urllib
import hashlib
import time
import functools

from flask import Flask, render_template, request, make_response, session
#import pymongo
#import redis
import sys

from ideone import Ideone

import constants

ideone_api = Ideone(
    constants.IDEONE_USERNAME,
    constants.IDEONE_PASSWORD,
    api_url='http://ronreiter.compilers.sphere-engine.com/api/1/service.wsdl')
#cache = redis.Redis(host=constants.CACHE_HOST)

# mongo connection
#client = pymongo.MongoClient(host=constants.DB_HOST)
#users = client.tutorials.users

# Flask app
app = Flask(__name__)
app.secret_key = constants.SECRET_KEY

sections = re.compile(
    r"Tutorial\n[=\-]+\n+(.*)\n*Tutorial Code\n[=\-]+\n+(.*)\n*Expected Output\n[=\-]+\n+(.*)\n*Solution\n[=\-]+\n*(.*)\n*",
    re.MULTILINE | re.DOTALL)
WIKI_WORD_PATTERN = re.compile('\[\[([^]|]+\|)?([^]]+)\]\]')
Ejemplo n.º 7
0
         D
         AWK gawk-3.1.6
         AWK mawk-1.3.3
         COBOL 85
         Forth
         Prolog
         bc
         Clojure
         JavaScript
         Go
         Unlambda
         Python 3
         R
         COBOL
         Oz
         Groovy
         Nimrod
         Factor
         F#
         Falcon
    '''
    sys.exit(1)

lang = sys.argv[1]
print "Paste: and CTRL+D to End the paste..."
paste = sys.stdin.read()
i = Ideone('username', 'APIKey')
res = i.create_submission(paste, lang)
link = res['link']
print "http://www.ideone.com/" + link