Made a fixed sized buffer to limit output during docker grading. Output limit is configurable with a default of 500 KB. Thought about this for a while and 1 MB seemed like a lot for most use cases. Since it is configurable, if there is a class that needs to support higher outputs, they can do so.
Added a new error submission python file in _tests dir. In the actual tests, I tried to mirror normal submission test functions in adaptability so even though there is only one error we are testing right now, if we added more in the future, it should be reasonably easy to do so without needing to alter the test functions (I hope).
Made a new type of error in /common/errors.go so that we have a way of differentiating secure errors and errors we don't want to let students know about. The buffer overflow error uses this struct.
Made a fixed sized buffer to limit output during docker grading. Output limit is configurable with a default of 500 KB. Thought about this for a while and 1 MB seemed like a lot for most use cases. Since it is configurable, if there is a class that needs to support higher outputs, they can do so.
Added a new error submission python file in _tests dir. In the actual tests, I tried to mirror normal submission test functions in adaptability so even though there is only one error we are testing right now, if we added more in the future, it should be reasonably easy to do so without needing to alter the test functions (I hope).
Made a new type of error in /common/errors.go so that we have a way of differentiating secure errors and errors we don't want to let students know about. The buffer overflow error uses this struct.