delay() needs an integer value that is the number of milliseconds for the delay(). What you have will be treated as delay(0). And I suspect that you should not have any delay().
You have not told us what the code does at the moment.
If you want to make the motor move with a single button push you need a variable to record whether the motion is forward or reverse. And you need to arrange for your button to change the value of that variable. Have a look at the state-change examples in the Arduino IDE.