You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
pgfqe6ch8/public/react/src/axiosMock.js

41 lines
29 KiB

6 years ago
import axios from 'axios';
import { isDev } from 'educoder'
import MockAdapter from 'axios-mock-adapter';
// This sets the mock adapter on the default instance
var mock;
if (isDev()) {
mock= new MockAdapter(axios);
}
export function initMock(doProxy, proxy) {
var mockProxy = doProxy ? proxy : ''
if (mock) {
// api/v1/games/ixq5euhgrf7y
mock.onGet(`${mockProxy}/api/v1/games/ixq5euhgrf7y`).reply( (config) => {
return [200
, {"tpm_modified":false,"tpm_cases_modified":false,"hide_code":false,"output_sets":{"test_sets":"{\"is_public\":1,\"result\":true,\"input\":\"\",\"output\":\"40.0000\\r\\n10.0000\\r\\n320.0000\\r\\n80.0000\\r\\n\\r\\n***********************\\r\\n\\r\\n0.4058\\r\\n0.3902\\r\\n0.4734\\r\\n0.5419\\r\\n\\r\\n***********************\\r\\n\\r\\n3406.4393\\r\\n2236.7194\\r\\n1896.2041\\r\\n\\r\\n***********************\\r\\n\\r\\n0\\r\\n2\\r\\n1\\r\\n4\\r\\n6\\r\\n1\\r\\n\\r\\n***********************\\r\\n\\r\\n8716.9732\\r\\n9416.6049\\r\\n8376.4009\\r\\n\\r\\n***********************\\r\\n\\r\\n23.7271\\r\\n9.5172\\r\\n33.6425\\r\\n21.6346\\r\\n\",\"actual_output\":\"40.0000\\r\\n10.0000\\r\\n320.0000\\r\\n80.0000\\r\\n\\r\\n***********************\\r\\n\\r\\n0.4058\\r\\n0.3902\\r\\n0.4734\\r\\n0.5419\\r\\n\\r\\n***********************\\r\\n\\r\\n3406.4393\\r\\n2236.7194\\r\\n1896.2041\\r\\n\\r\\n***********************\\r\\n\\r\\n0\\r\\n2\\r\\n1\\r\\n4\\r\\n6\\r\\n1\\r\\n\\r\\n***********************\\r\\n\\r\\n8716.9732\\r\\n9416.6049\\r\\n8376.4009\\r\\n\\r\\n***********************\\r\\n\\r\\n23.7271\\r\\n9.5172\\r\\n33.6425\\r\\n21.6346\\r\\n\",\"compile_success\":1}","had_test_count":1,"test_sets_count":1,"had_passed_testsests_error_count":1},"latest_output":null,"mirror_name":["Python2.7"],"has_answer":true,"st":0,"discusses_count":349,"game_count":4,"myshixun":{"id":20980,"shixun_id":61,"identifier":"fvpuxfj89m","gpid":154165,"status":1,"user_id":1,"commit_id":"80cb6fc55a14bdd64a9c99913f416966238ed3de","modify_time":"2017-11-02T18:12:23+08:00","reset_time":"2017-10-25T09:33:03+08:00","system_tip":false},"challenge":{"id":121,"subject":"\u89e3\u51b3\u5b9e\u9645\u95ee\u9898","position":4,"shixun_id":61,"st":0,"score":700,"path":"1-4.py","task_pass":"[TOC]\r\n\r\n---\r\n\r\n\u672c\u5173\u4e3b\u9898\u662f\u7efc\u5408\u5229\u7528\u524d\u4e09\u5173\u638c\u63e1\u7684\u77e5\u8bc6\uff0c\u89e3\u51b3\u5b9e\u9645\u95ee\u9898\u3002\u8fd9\u4e9b\u95ee\u9898\u6765\u6e90\u4e8e\u5b9e\u9645\u751f\u6d3b\u7684\u5404\u4e2a\u65b9\u9762\uff0c\u901a\u8fc7\u95ee\u9898\u7684\u89e3\u51b3\uff0c\u5e0c\u671b\u5bf9\u8ba1\u7b97\u601d\u7ef4\u6709\u4e00\u5b9a\u7684\u4f53\u9a8c\u548c\u611f\u609f\u3002\r\n\r\n####\u672c\u5173\u4efb\u52a1\r\n#####\u7b2c\u4e00\u9898\r\n\u5728\u6307\u5b9a\u5730\u65b9\u7f16\u5199Python\u7a0b\u5e8f\u6765\u8ba1\u7b97\u3001\u663e\u793a\u901a\u8fc7\u5982\u4e0b\u56fe\u6240\u793a\u7684\u7ba1\u9053\u7684\u6c34\u6d41\u901f\u7387\u3002\u8fdb\u5165\u7ba1\u9053\u7684\u6c34\u6d41\u901f\u7387\u7684\u5355\u4f4d\u4e3a\u82f1\u5c3a/\u79d2\uff0c\u7ba1\u9053\u5165\u53e3\u534a\u5f84\u548c\u51fa\u53e3\u534a\u5f84\u7684\u5355\u4f4d\u4e3a\u82f1\u5bf8\u3002\r\n\r\n\u51fa\u53e3\u901f\u7387\u7684\u8ba1\u7b97\u516c\u5f0f\u4e3a\uff1a`$$v_{out}=v_{in}(\\frac{r_{in}}{r_{out}})^{2}$$`\uff0c\u5176\u4e2d`$$v_{out}$$`\u4e3a\u51fa\u53e3\u901f\u7387\uff0c`$$v_{in}$$`\u4e3a\u5165\u53e3\u901f\u7387\uff0c`$$r_{out}$$`\u4e3a\u7ba1\u9053\u51fa\u53e3\u534a\u5f84\uff0c`$$r_{in}$$`\u4e3a\u7ba1\u9053\u5165\u53e3\u534a\u5f84\u3002\r\n\r\n![](/attachments/download/169402)\r\n\r\n#####\u7b2c\u4e8c\u9898\r\n\u5706\u6746\uff08\u5982\u4e0b\u56fe\u6240\u793a\u7684\u81ea\u884c\u8f66\u8e0f\u677f\uff09\u7684\u6700\u5c0f\u534a\u5f84\uff08\u80fd\u591f\u652f\u6491\u4e00\u4e2a\u4eba\u7684\u811a\u6240\u65bd\u52a0\u7684\u538b\u529b\uff0c\u800c\u4e0d\u81f3\u4e8e\u8d85\u8fc7\u9644\u7740\u5728\u66f2\u67c4\u81c2\u94fe\u8f6e\u7684\u538b\u529b\uff09\u7684\u8ba1\u7b97\u516c\u5f0f\u4e3a\uff1a$$r^{3}=\\frac{dp}{\\pi S}$$\uff0c\u5176\u4e2d`r`\u4e3a\u5706\u6746\u7684\u534a\u5f84\uff08inches\uff09\uff0c`$$d$$`\u4e3a\u66f2\u67c4\u81c2\u7684\u957f\u5ea6\uff08inches\uff09\uff0c`$$p$$`\u4e3a\u65bd\u52a0\u5728\u8e0f\u677f\u4e0a\u7684\u91cd\u91cf\uff08lbs\uff09\uff0c`$$S$$`\u4e3a\u6bcflbs/$$in^{2}$$\u4e0a\u7684\u538b\u529b\u3002\u57fa\u4e8e\u4e0a\u8ff0\u4fe1\u606f\uff0c\u5728\u53f3\u4fa7\u6307\u5b9a\u4f4d\u7f6e\u7f16\u5199\u4e00\u4e2aPython\u7a0b\u5e8f\u6839\u636e\u7528\u6237\u8f93\u5165\u6765\u8ba1\u7b97`r`\u7684\u503c\u3002\r\n\r\n![](/attachments/download/169403)\r\n\r\n\u57fa\u4e8e\
});
// mock.onGet(`${mockProxy}/api/v1/games/m73fglbwzone/rep_content`).reply( (config) => {
mock.onGet(
`${mockProxy}/api/v1/games/m73fglbwzone/rep_content?path=1-4.py&shixun_gpid=2448&status=0&retry=0`)
.reply( (config) => {
return [200
, "from math import *\ndef print_(x):\n if type(x) == float:\n print(\"%.4f\" % x)\n else:\n print(x)\n#\u7b2c\u4e00\u9898\nfor (vin, rin, rout) in [(10, 10, 5), (10, 10, 10), (20, 20, 5), (20, 20, 10)]:\n #\u8bf7\u5728\u4e0b\u9762\u7f16\u5199\u4ee3\u7801\n vout = vin * (rin/rout)**2\n #\u8bf7\u4e0d\u8981\u4fee\u6539\u4e0b\u9762\u7684\u4ee3\u7801\n print_(vout)\nprint('\\n***********************\\n')\n#\u7b2c\u4e8c\u9898\nfor (d, p, S) in [(7,300,10000),(7,400,15000),(10,400,12000),(15,400,12000)]:\n # \u8bf7\u5728\u4e0b\u9762\u7f16\u5199\u4ee3\u7801\n r = ((d * p) / (pi * S))**(1/3)\n # \u8bf7\u4e0d\u8981\u4fee\u6539\u4e0b\u9762\u7684\u4ee3\u7801\n print_(r)\nprint('\\n***********************\\n')\n#\u7b2c\u4e09\u9898\nfor (P, N, r) in [(300000,10,6.5), (300000,20,6.5),(300000,30,6.5)]:\n # \u8bf7\u5728\u4e0b\u9762\u7f16\u5199\u4ee3\u7801\n monthR = r/1200\n N = N * 12\n payPerMonth = (P * monthR * (1+monthR)**N) / ((1+monthR)**N - 1)\n # \u8bf7\u4e0d\u8981\u4fee\u6539\u4e0b\u9762\u7684\u4ee3\u7801\n print_(payPerMonth)\nprint('\\n***********************\\n')\n#\u7b2c\u56db\u9898\nfor (m,d,y) in [(1,1,2017), (2,14,2017), (5,1,2017), (6,1,2017),(7,1,2017),(12,25,2017)]:\n # \u8bf7\u5728\u4e0b\u9762\u7f16\u5199\u4ee3\u7801\n y0 = y - (14 - m)//12\n x = y0 + y0//4 - y0//100 + y0//400\n m0 = m + 12 * ((14 - m)//12) - 2\n d0 = (d + x + (31 * m0)//12)%7\n # \u8bf7\u4e0d\u8981\u4fee\u6539\u4e0b\u9762\u7684\u4ee3\u7801\n print_(d0)\nprint('\\n***********************\\n')\n#\u7b2c\u4e94\u9898\nfor (x1,y1,x2,y2) in [(48.87,-2.33,37.8,-122.4),(40.89,116.50,37.8,-122.4),(40.89,116.50,48.87,-2.33)]:\n # \u8bf7\u5728\u4e0b\u9762\u7f16\u5199\u4ee3\u7801\n x1 = radians(x1)\n y1 = radians(y1)\n x2 = radians(x2)\n y2 = radians(y2)\n R = 69.1105*1.609\n dist = R*acos(sin(x1)*sin(x2)+cos(x1)*cos(x2)*cos(y1-y2))*180/pi\n # \u8bf7\u4e0d\u8981\u4fee\u6539\u4e0b\u9762\u7684\u4ee3\u7801\n print_(dist)\nprint('\\n***********************\\n')\n#\u7b2c\u516d\u9898\nfor (t, v) in [(32,10), (32, 100), (40, 10), (40, 100)]:\n # \u8bf7\u5728\u4e0b\u9762\u7f16\u5199\u4ee3\u7801\n w = 35.74 + 0.6215 * t + (0.4275 * t - 35.75) * (v ** 0.16)\n # \u8bf7\u4e0d\u8981\u4fee\u6539\u4e0b\u9762\u7684\u4ee3\u7801\n print_(w)"
]});
mock.onGet(`${mockProxy}/api/v1/shixuns/61/shixun_discusses?page=0&container_type=Shixun`).reply( config => {
return [200
, {"children_list":[{"id":3186,"content":"<div>\n\tFile \"1-2.py\", line 21\n</div>\n<div>\n\t print_(cos(2*pi/17))\n</div>\n<div>\n\t ^\n</div>\n<p>\n\tSyntaxError: invalid syntax\n</p>\n<p>\n\t\u4e3a\u4ec0\u4e48\u4f1a\u51fa\u73b0\u8bed\u6cd5\u9519\u8bef\u5462\uff1f\n</p>","time":"16\u5929\u524d","position":2,"user_id":11843,"reward":null,"image_url":"avatars/User/g","username":"\u5510\u6b22\u5bb9","user_login":"Emmanuel","shixun_id":61,"hidden":true,"manager":true,"praise_count":0,"user_praise":false,"admin":true,"children":[{"content":"qwe","time":"6\u5206\u949f\u524d","position":2,"reward":null,"hidden":true,"image_url":"avatars/User/1","username":"Coder","user_id":1,"user_login":"innov","can_delete":true,"id":3229}]},{"id":3134,"content":"<p>\n\tFile \"1-2.py\", line 12<br />\n print_(import math)<br />\n ^<br />\nSyntaxError: invalid syntax\n</p>\n<p>\n\t\u4ec0\u4e48\u610f\u601d\u554a\uff0c\u6211\u5728IDLE\u91cc\u505a\u7684\u6ca1\u6bdb\u75c5\u554a\n</p>","time":"16\u5929\u524d","position":2,"user_id":48509,"reward":null,"image_url":"avatars/User/b","username":"\u51af\u6210\u7fd4","user_login":"m95012683","shixun_id":61,"hidden":false,"manager":true,"praise_count":0,"user_praise":false,"admin":true,"children":null},{"id":3132,"content":"\u7b2c4\u5173\u7b2c4\u9898\u4e3a\u4ec0\u4e48\u53d6\u4f59\u6570\u7b54\u6848\u662f\u5c0f\u6570","time":"17\u5929\u524d","position":4,"user_id":49130,"reward":null,"image_url":"avatars/User/b","username":"\u6731\u5586","user_login":"p24107693","shixun_id":61,"hidden":false,"manager":true,"praise_count":0,"user_praise":false,"admin":true,"children":null},{"id":2942,"content":"(sqrt((1+sqrt(5))/2+2)-(1+sqrt(5))/2) (sinh(0.25)) ((e**0.25-e**(-0.25))/2)","time":"19\u5929\u524d","position":2,"user_id":47309,"reward":null,"image_url":"avatars/User/b","username":"\u5e9f","user_login":"p64825109","shixun_id":61,"hidden":true,"manager":true,"praise_count":0,"user_praise":false,"admin":true,"children":null},{"id":2941,"content":"(cos(2*pi/17)-1/16*(-1+sqrt(17)+sqrt(2*(17-sqrt(17)))+2*sqrt(17+3*sqrt(17)-sqrt(2*(17-sqrt(17)))-2*sqrt(2*(17+sqrt(17))))))","time":"19\u5929\u524d","position":2,"user_id":47309,"reward":null,"image_url":"avatars/User/b","username":"\u5e9f","user_login":"p64825109","shixun_id":61,"hidden":true,"manager":true,"praise_count":3,"user_praise":false,"admin":true,"children":null},{"id":2940,"content":"(1/16*(-1+sqrt(17)+sqrt(2*(17-sqrt(17)))+2*sqrt(17+3*sqrt(17)-sqrt(2*(17-sqrt(17)))-2*sqrt(2*(17+sqrt(17))))))","time":"19\u5929\u524d","position":2,"user_id":47309,"reward":null,"image_url":"avatars/User/b","username":"\u5e9f","user_login":"p64825109","shixun_id":61,"hidden":true,"manager":true,"praise_count":1,"user_praise":false,"admin":true,"children":null},{"id":2938,"content":"print_(cos(2*pi/17))<br />\nprint_(1/16*(-1+sqrt(17))+sqrt(2*(17-sqrt(17)))+2*sqrt(17+3*sqrt(17))-sqrt(2*(17-sqrt(17)))-2*sqrt(2*(17+sqrt(17)))) <br />\n<p>\n\tprint_(cos(2*pi/17)-1/16*(-1+sqrt(17)+sqrt(2*(17-sqrt(17)))+2*sqrt(17+3*sqrt(17)-sqrt(2*(17-sqrt(17))-2*sqrt(2*(17+sqrt(17))))\n</p>\n<p>\n\t\u773c\u90fd\u82b1\u4e86\n</p>","time":"19\u5929\u524d","position":2,"user_id":46550,"reward":null,"image_url":"avatars/User/b","username":"\u5f20\u5927\u70ae","user_login":"p81347206","shixun_id":61,"hidden":true,"manager":true,"praise_count":1,"user_praise":false,"admin":true,"children":null},{"id":2935,"content":"print_(sqrt((1+sqrt(5))/2+2)-(1+sqrt(5))/2)","time":"19\u5929\u524d","position":2,"user_id":46549,"reward":null,"image_url":"avatars/User/b","username":"\u660e\u6708\u672c\u65e0\u5fc3","user_login":"p29018547","shixun_id":61,"hidden":true,"manager":true,"praise_count":1,"user_praise":false,"admin":true,"children":null},{"id":2926,"content":"\u75af\u4e86","time":"19\u5929\u524d","position":1,"user_id":47261,"reward":null,"image_url":"avatars/User/b","username":"\u9648\u96f7","user_login":"m65473019","shixun_id":61,"hidden":true,"manager":true,"praise_count":2,"user_praise":false,"admin":true,"children":[{"content":"2333","time":"19\u5929\u52
]});
mock.onPost(`${mockProxy}/api/v1/discusses/3229/hidden`).reply( config => {
return [200
, {"status":1,"message":"success"}
]});
}
}