# @testcase 14.a
# @condition Recieve message with a field identifier (tag number) not defined in the specification (not user defined)
# @expected Send Reject (session-level) message referencing invalid tag number. Increment inbound MsgSeqNum. Generate an error condition in test output.

iCONNECT
# logon message and response
I8=FIX.4.035=A34=149=TW52=<TIME>56=ISLD98=0108=2
E8=FIX.4.09=5635=A34=149=ISLD52=00000000-00:00:0056=TW98=0108=210=0

#------------------------
# begin message exchange
#------------------------

# heartbeat message with a field that is not in the specification, but is in the correct range
I8=FIX.4.035=034=249=TW52=<TIME>56=ISLD999=HI
# expect a reject
E8=FIX.4.09=7835=334=249=ISLD52=00000000-00:00:0056=TW45=258=Invalid tag number (999)10=0

# heartbeat message with a field that is below the valid range for fields
I8=FIX.4.035=034=349=TW52=<TIME>56=ISLD0=HI
# expect a reject
E8=FIX.4.09=7635=334=349=ISLD52=00000000-00:00:0056=TW45=358=Invalid tag number (0)10=0

# heartbeat message with a field that is negative
I8=FIX.4.035=034=449=TW52=<TIME>56=ISLD-1=HI
# expect a reject
E8=FIX.4.09=7735=334=449=ISLD52=00000000-00:00:0056=TW45=458=Invalid tag number (-1)10=0

# heartbeat message with a field that is above the valid range for specification defined fields (user defined is not implemented yet)
I8=FIX.4.035=034=549=TW52=<TIME>56=ISLD5000=HI
# expect a reject
E8=FIX.4.09=7935=334=549=ISLD52=00000000-00:00:0056=TW45=558=Invalid tag number (5000)10=0

#------------------------
# end message exchange
#------------------------

# logout message and response
I8=FIX.4.035=534=649=TW52=<TIME>56=ISLD
E8=FIX.4.09=4535=534=649=ISLD52=00000000-00:00:0056=TW10=0

eDISCONNECT
