There should be no problem to test your contracts in Remix, but I think you will loose features offered by Truffle, like automatic clean-room environment preparation. To answer you question about DeployableContract.sol:
There will be no truffle in the picture at all, so 'DeployableContract.sol' is irrelevant. You will have to manage instantiation of your contracts manually, with
contract TestTodoList {
TodoList todolist = new TodoList();
...
if you want new instance of TodoList for each test (probably the case) or
contract TestTodoList {
TodoList todolist;
function TodoList(address addr) public {
todoList = TodoList(addr);
}
...
if you are running test against some existing instance.
I have tried your code in Remix.
First, it complains about library deployment error. If you copy Assert.sol from github into browser (and change import import "./Assert.sol"
) you can work around this problem.
Next, it complains about a constructor having to be payable. I am not quite sure what this error means exactly in this context. Maybe others can elaborate. Hope this helps.
This seems to be a remix bug.
When you deploy it using web3 or so it should work properly.
Everything should be fine. As the other answer stated you can bypass this problem.
Best Answer
I do not know how to do it.
You might be better off using Truffle and this tutorial: https://forum.openzeppelin.com/t/openzeppelin-upgrades-step-by-step-tutorial-for-truffle/3579
And then connecting to localhost: https://remix-ide.readthedocs.io/en/latest/remixd.html
Found this question because I've deployed upgradeable contract using Truffle and figuring out how to interact with it using Remix - I've just tested and it works, out of the box.