Modification du gitignore +
continuous-integration/drone/push Build encountered an error
Details
continuous-integration/drone/push Build encountered an error
Details
Généricité du js au niveaux du test et de la solution des énigme + Gestion de constante du js (push prévu pour le serveur de test)ServeurDeTest
parent
4db5362d8c
commit
f9dd96d7c0
@ -1,41 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def DecryptVerif(text, key):
|
|
||||||
result = ""
|
|
||||||
for i in range(len(text)):
|
|
||||||
char = text[i]
|
|
||||||
if(char==" "):
|
|
||||||
result+=" "
|
|
||||||
elif (char.isupper()):
|
|
||||||
result += chr((ord(char) - key-65) % 26 + 65)
|
|
||||||
else:
|
|
||||||
result += chr((ord(char) - key - 97) % 26 + 97)
|
|
||||||
return result
|
|
||||||
|
|
||||||
import random as r
|
|
||||||
def testDecrypte(x):
|
|
||||||
Decrypt("",1)
|
|
||||||
if(Decrypt("Jgnnq yqtnf",2)!="Hello world"):
|
|
||||||
return False
|
|
||||||
if(Decrypt("Blarycnm",9)!="Scripted"):
|
|
||||||
return False
|
|
||||||
for i in range(x):
|
|
||||||
l=""
|
|
||||||
cle=r.randint(1,26)
|
|
||||||
for i in range(r.randint(1,10)):
|
|
||||||
l+=chr(r.randint(97,122))
|
|
||||||
if(Decrypt(l,cle)!=DecryptVerif(l,cle)):
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(testDecrypte(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
||||||
|
|
@ -1,41 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def EncryptVerif(text, key):
|
|
||||||
result = ""
|
|
||||||
for i in range(len(text)):
|
|
||||||
char = text[i]
|
|
||||||
if(char==" "):
|
|
||||||
result+=" "
|
|
||||||
elif (char.isupper()):
|
|
||||||
result += chr((ord(char) + key-65) % 26 + 65)
|
|
||||||
else:
|
|
||||||
result += chr((ord(char) + key - 97) % 26 + 97)
|
|
||||||
return result
|
|
||||||
|
|
||||||
import random as r
|
|
||||||
def testEncrypte(x):
|
|
||||||
Encrypt("",1)
|
|
||||||
if(Encrypt("Hello world",2)!="Jgnnq yqtnf"):
|
|
||||||
return False
|
|
||||||
if(Encrypt("Scripted",9)!="Blarycnm"):
|
|
||||||
return False
|
|
||||||
for i in range(x):
|
|
||||||
l=""
|
|
||||||
cle=r.randint(1,26)
|
|
||||||
for i in range(r.randint(1,10)):
|
|
||||||
l+=chr(r.randint(97,122))
|
|
||||||
if(Encrypt(l,cle)!=EncryptVerif(l,cle)):
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(testEncrypte(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
||||||
|
|
@ -1,31 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def chouetteVerif(valeur):
|
|
||||||
res=list()
|
|
||||||
for i in range(1, 7):
|
|
||||||
for j in range(i, 7):
|
|
||||||
for k in range(j, 7):
|
|
||||||
if (i+j+k) == valeur:
|
|
||||||
res.append([i, j, k])
|
|
||||||
return res
|
|
||||||
import random as r
|
|
||||||
def test_chouette(n):
|
|
||||||
chouette(1)
|
|
||||||
listTest=[]
|
|
||||||
for i in range(0,n):
|
|
||||||
listTest.append(r.randint(3,18))
|
|
||||||
for i in listTest:
|
|
||||||
if(chouette(i)!=chouetteVerif(i)):
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(test_chouette(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
@ -1,59 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def binaire2unitaireVerif(x):
|
|
||||||
rep=0
|
|
||||||
pre=x[0]
|
|
||||||
unitaire=""
|
|
||||||
for i in x:
|
|
||||||
if(pre==i):
|
|
||||||
rep+=1
|
|
||||||
else:
|
|
||||||
if(pre=="1"):
|
|
||||||
unitaire=unitaire+"0 "
|
|
||||||
else:
|
|
||||||
unitaire=unitaire+"00 "
|
|
||||||
for j in range(rep):
|
|
||||||
unitaire=unitaire+"0"
|
|
||||||
unitaire=unitaire+" "
|
|
||||||
rep=1
|
|
||||||
pre=i
|
|
||||||
if(pre=="1"):
|
|
||||||
unitaire=unitaire+"0 "
|
|
||||||
else:
|
|
||||||
unitaire=unitaire+"00 "
|
|
||||||
for i in range(rep):
|
|
||||||
unitaire=unitaire+"0"
|
|
||||||
return unitaire
|
|
||||||
|
|
||||||
import random as r
|
|
||||||
def testChuckNorris(x):
|
|
||||||
l="0000000"
|
|
||||||
binaire2unitaire(l)
|
|
||||||
if(binaire2unitaire(l)!="00 0000000"):
|
|
||||||
return False
|
|
||||||
l="1111111"
|
|
||||||
if(binaire2unitaire(l)!="0 0000000"):
|
|
||||||
return False
|
|
||||||
l="1101001"
|
|
||||||
if(binaire2unitaire(l)!="0 00 00 0 0 0 00 00 0 0"):
|
|
||||||
return False
|
|
||||||
l=""
|
|
||||||
for i in range(x):
|
|
||||||
for j in range(r.randint(1,10)):
|
|
||||||
l=l+str(r.randint(0,1))
|
|
||||||
if(binaire2unitaire(l)!=binaire2unitaireVerif(l)):
|
|
||||||
return False
|
|
||||||
l=""
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(testChuckNorris(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1,5 @@
|
|||||||
|
// const URL = "http://localhost/Scripted/index.php";
|
||||||
|
// const URL = "http://82.165.180.114/Scripted/index.php";
|
||||||
|
// const URL = "http://sancy.iut.uca.fr/~lafourcade/Scripted/index.php";
|
||||||
|
|
||||||
|
// Constant use in base.js and baseTest.js and Partie.php
|
@ -1,34 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def double_elementVerif(list):
|
|
||||||
return [i*2 for i in list]
|
|
||||||
|
|
||||||
import random as r
|
|
||||||
def testDoubleElement(x):
|
|
||||||
l=[1,2,3,2,1]
|
|
||||||
if(double_element(l) != [2,4,6,4,2]):
|
|
||||||
return False
|
|
||||||
l=[9,5,7,7,9]
|
|
||||||
if(double_element(l) != [18,10,14,14,18]):
|
|
||||||
return False
|
|
||||||
l=[]
|
|
||||||
for i in range(x):
|
|
||||||
for j in range(r.randint(1,10)):
|
|
||||||
l.append(r.randint(0,9))
|
|
||||||
if(double_elementVerif(l)!=double_element(l)):
|
|
||||||
return False
|
|
||||||
l=[]
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(testDoubleElement(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,38 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def hanoi_rec(l,nb_disks, start, middle, end):
|
|
||||||
if(nb_disks == 1):
|
|
||||||
return l.append([start,end])
|
|
||||||
else:
|
|
||||||
hanoi_rec(l,nb_disks - 1, start, end, middle)
|
|
||||||
l.append([start,end])
|
|
||||||
hanoi_rec(l,nb_disks - 1, middle, start, end)
|
|
||||||
|
|
||||||
def hanoiVerif(nb_disks,start, middle, end):
|
|
||||||
l=[]
|
|
||||||
hanoi_rec(l,nb_disks,start, middle, end)
|
|
||||||
return l
|
|
||||||
|
|
||||||
import random as r
|
|
||||||
def testhanoi(x):
|
|
||||||
hanoi(1,"A","B","C")
|
|
||||||
if(hanoi(3,"A","B","C")!=[['A','C'],['A','B'],['C','B'],['A','C'],['B','A'],['B','C'],['A','C']]):
|
|
||||||
return False
|
|
||||||
for i in range(x):
|
|
||||||
j=r.randint(1,4)
|
|
||||||
if(hanoi(j,"Z","E","R")!=hanoiVerif(j,"Z","E","R")):
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(testhanoi(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def estPalindromeVerif(var):
|
|
||||||
if(var == var[::-1]):
|
|
||||||
return True
|
|
||||||
else:
|
|
||||||
return False
|
|
||||||
import random as r
|
|
||||||
def testPalindrome(x):
|
|
||||||
l=[1,2,3,2,1]
|
|
||||||
if(estPalindrome(l)==False):
|
|
||||||
return False
|
|
||||||
l=[9,5,7,7,9]
|
|
||||||
if(estPalindrome(l)==True):
|
|
||||||
return False
|
|
||||||
l=[]
|
|
||||||
for i in range(x):
|
|
||||||
for j in range(r.randint(1,10)):
|
|
||||||
l.append(r.randint(0,9))
|
|
||||||
if(estPalindromeVerif(l)!=estPalindrome(l)):
|
|
||||||
return False
|
|
||||||
l=[]
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(testPalindrome(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
@ -0,0 +1,10 @@
|
|||||||
|
//~ Function that test the user code
|
||||||
|
|
||||||
|
async function submit(solution, test){
|
||||||
|
var test = editor.getValue()+`\n` + solution + `\n` + test;
|
||||||
|
exec("print ('True')", "code");
|
||||||
|
exec(test, "solution");
|
||||||
|
result.innerHTML = "Test en cours...";
|
||||||
|
await new Promise(r => setTimeout(r, 1500));
|
||||||
|
check();
|
||||||
|
}
|
@ -1,39 +0,0 @@
|
|||||||
//~ Function that test the user code
|
|
||||||
|
|
||||||
async function submit(){
|
|
||||||
var test = editor.getValue()+`\n
|
|
||||||
def estTriangleDePascal(n):
|
|
||||||
if(n==0):
|
|
||||||
return []
|
|
||||||
if(n==1):
|
|
||||||
return [[1]]
|
|
||||||
triangle=[[1],[1, 1]]
|
|
||||||
columns=n
|
|
||||||
for line in range(2,n):
|
|
||||||
triangle.append([1])
|
|
||||||
for column in range(1, line):
|
|
||||||
triangle[line].append(triangle[line - 1][column - 1] + triangle[line - 1][column])
|
|
||||||
triangle[line].append(1)
|
|
||||||
return triangle
|
|
||||||
|
|
||||||
import random as r
|
|
||||||
def testTriangleDePascal(n):
|
|
||||||
triangle_pascal(0)
|
|
||||||
listTest=[0,1]
|
|
||||||
for i in range(0,n):
|
|
||||||
listTest.append(r.randint(5,140))
|
|
||||||
for i in listTest:
|
|
||||||
if(triangle_pascal(i)!=estTriangleDePascal(i)):
|
|
||||||
return False
|
|
||||||
return True
|
|
||||||
|
|
||||||
print(testTriangleDePascal(5))
|
|
||||||
`;
|
|
||||||
exec("print ('True')", "code");
|
|
||||||
exec(test, "solution");
|
|
||||||
result.innerHTML = "Test en cours...";
|
|
||||||
await new Promise(r => setTimeout(r, 1500));
|
|
||||||
check();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in new issue