使用React / Django测试用户提供的代码

时间:2016-08-10 04:50:43

标签: javascript django reactjs eval user-input

处理向用户提供算法挑战的应用程序。在服务器端(Django),Algorithm模型有三个文件字段(一个用于markdown描述,一个用于JavaScript(.js)解决方案,另一个用于测试(也是.js))。

我将内容作为JSON提供给React前端,使用react-ace来收集用户尝试解决此挑战。

我希望能够接受提交的代码并对其进行测试(使用expect.js),但在两个方面遇到问题:

首先,我应该在什么环境中运行前端的用户提供的代码?我假设不在evalnew Function - 网络工作者会解决这个问题(我还没有设置一个......)?

其次,我应该如何将从服务器发送的JS测试(目前以字符串形式)与从用户捕获的代码集成?

另一个打嗝:即使在运行eval时,我也无法获得如下所示的序列化代码来获取客户端上存在的expect变量。

expect(1).toEqual(1);

最好的情况,我想在我的Ace编辑器中为用户提供预先命名的功能,当提交时,我可以运行测试。有任何想法吗?谢谢!

0 个答案:

没有答案