what happens with output after if state isn't true?

Hey, im new with arduino and think this is great and fun!
I have made a program to start a pump, and i wonder if i have bean thinking wrong here,
in the first step i start my pump with digitalWrite(pumpPin, relay_ON);
Now i wonder what will happens when diffTemp is less then 1.0,
will “digitalWrite(pumpPin, relay_ON);” still be active?
or do i need to make a latch with a OR to hold pump on?
I want the output to be on until diff temp is less then 0.5 in 1 minutes,
after that digitalWrite(pumpPin, relay_OFF);

     //Start pump
    if ((DiffTemp > 1.0) && (pumpStatus == 0)){
      // save the last time you pump started 
      PumpStartMillis = currentMillis;
      pumpStatus = 2;
      digitalWrite(pumpPin, relay_ON);

    //Stop delay pump
  if (((DiffTemp < 0.5) && (pumpStatus == 2))){
     PumpStopingMillis = currentMillis;
     pumpStatus = 3;
    //Stop pump
  if ((currentMillis - PumpStopingMillis > 60000) && (pumpStatus == 3)){
     PumpStopMillis = currentMillis;
     pumpStatus = 1;
     PumpDriftTime = PumpDriftTime + (currentMillis - PumpStartMillis);
     digitalWrite(pumpPin, relay_OFF);

Once you have turned a pin HIGH or LOW with digitalWrite() it stays in that state until you explicitly change it.

Is there any good simulator to try/debug a program?

For a simulator, I like emulare. Version 1.9 (and prior) has an issue with interrupts (such as used by SoftwareSerial) but should work fine for what you are doing.

If you read the instructions, you can even connect a debugger to it, but I always found using the serial ports sufficient.

See emulare - Arduino Emulator

Good Luck!