  Software developers often reuse code from online sources such as Stack
Overflow within their projects. However, the process of searching for code
snippets and integrating them within existing source code can be tedious. In
order to improve efficiency and reduce time spent on code reuse, we present an
automated code reuse tool for the Eclipse IDE (Integrated Developer
Environment), NLP2TestableCode. NLP2TestableCode can not only search for Java
code snippets using natural language tasks, but also evaluate code snippets
based on a user's existing code, modify snippets to improve fit and correct
errors, before presenting the user with the best snippet, all without leaving
the editor. NLP2TestableCode also includes functionality to automatically
generate customisable test cases and suggest argument and return types, in
order to further evaluate code snippets. In evaluation, NLP2TestableCode was
capable of finding compilable code snippets for 82.9% of tasks, and testable
code snippets for 42.9%.
