Add request spec to cover backend new order process

[Fixes #3000]

I had to add ``sleep(1)`` to the end of the new order request spec because I was getting odd errors about database locked. I'd appreciate if someone could check if the spec passes without that line. This is the error I ran into (or something very similar):

     Failure/Error: Unable to find matching line from backtrace
     ActiveRecord::StatementInvalid:
       SQLite3::BusyException: database is locked: DELETE FROM "shipping_methods_zones";

Also the current order details request spec takes about 9 min to run on my machine. I think some of them may not be necessary. It tests an action with one stock location then it tests the same action when there's two stock locations. Any special reason to keep these on the request spec context? please advise cc @LBRapid