| Checking ctrl types... |
| ctrl type 0 is (unknown) -> 0 OK |
| ctrl type 1 is GET -> 1 OK |
| ctrl type 2 is SET -> 2 OK |
| ctrl type 3 is GET_REPLY -> 3 OK |
| ctrl type 4 is SET_REPLY -> 4 OK |
| ctrl type 5 is TRAP -> 5 OK |
| ctrl type 6 is ERROR -> 6 OK |
| ctrl type 64 is unknown 0x40 [PARSE FAILED] |
| test: 'GET 1 variable' |
| parsing: |
| type = 'GET' |
| id = '1' |
| variable = 'variable' |
| value = '(null)' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'GET 1 variable\n' |
| parsing: |
| type = 'GET' |
| id = '1' |
| variable = 'variable' |
| value = '(null)' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'GET 1 var\ni\nable' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = '1' |
| reply = 'GET with trailing characters' |
| handling: |
| replied: 'ERROR 1 GET with trailing characters' |
| ok |
| test: 'GET 1 var\ti\table' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = '1' |
| reply = 'GET variable contains invalid characters' |
| handling: |
| replied: 'ERROR 1 GET variable contains invalid characters' |
| ok |
| test: 'GET 1 var\ri\rable' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = '1' |
| reply = 'GET variable contains invalid characters' |
| handling: |
| replied: 'ERROR 1 GET variable contains invalid characters' |
| ok |
| test: 'GET 1 variable value' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = '1' |
| reply = 'GET with trailing characters' |
| handling: |
| replied: 'ERROR 1 GET with trailing characters' |
| ok |
| test: 'GET 1 variable value\n' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = '1' |
| reply = 'GET with trailing characters' |
| handling: |
| replied: 'ERROR 1 GET with trailing characters' |
| ok |
| test: 'GET 1 variable multiple value tokens' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = '1' |
| reply = 'GET with trailing characters' |
| handling: |
| replied: 'ERROR 1 GET with trailing characters' |
| ok |
| test: 'GET 1 variable multiple value tokens\n' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = '1' |
| reply = 'GET with trailing characters' |
| handling: |
| replied: 'ERROR 1 GET with trailing characters' |
| ok |
| test: 'SET 1 variable value' |
| parsing: |
| type = 'SET' |
| id = '1' |
| variable = 'variable' |
| value = 'value' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'SET 1 variable value\n' |
| parsing: |
| type = 'SET' |
| id = '1' |
| variable = 'variable' |
| value = 'value' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'SET weird_id variable value' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = 'err' |
| reply = 'Invalid message ID number' |
| handling: |
| replied: 'ERROR err Invalid message ID number' |
| ok |
| test: 'SET weird_id variable value\n' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = 'err' |
| reply = 'Invalid message ID number' |
| handling: |
| replied: 'ERROR err Invalid message ID number' |
| ok |
| test: 'SET 1 variable multiple value tokens' |
| parsing: |
| type = 'SET' |
| id = '1' |
| variable = 'variable' |
| value = 'multiple value tokens' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'SET 1 variable multiple value tokens\n' |
| parsing: |
| type = 'SET' |
| id = '1' |
| variable = 'variable' |
| value = 'multiple value tokens' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'SET 1 variable value_with_trailing_spaces ' |
| parsing: |
| type = 'SET' |
| id = '1' |
| variable = 'variable' |
| value = 'value_with_trailing_spaces ' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'SET 1 variable value_with_trailing_spaces \n' |
| parsing: |
| type = 'SET' |
| id = '1' |
| variable = 'variable' |
| value = 'value_with_trailing_spaces ' |
| reply = '(null)' |
| handling: |
| replied: 'ERROR 1 Command not found' |
| ok |
| test: 'SET \n special_char_id value' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = 'err' |
| reply = 'Invalid message ID number' |
| handling: |
| replied: 'ERROR err Invalid message ID number' |
| ok |
| test: 'SET \t special_char_id value' |
| parsing: |
| type = 'ERROR' (parse failure) |
| id = 'err' |
| reply = 'Invalid message ID number' |
| handling: |
| replied: 'ERROR err Invalid message ID number' |
| ok |
| test: 'GET_REPLY 1 variable OK' |
| parsing: |
| type = 'GET_REPLY' |
| id = '1' |
| variable = 'variable' |
| value = '(null)' |
| reply = 'OK' |
| handling: |
| ok |
| test: 'SET_REPLY 1 variable OK' |
| parsing: |
| type = 'SET_REPLY' |
| id = '1' |
| variable = 'variable' |
| value = '(null)' |
| reply = 'OK' |
| handling: |
| ok |
| test: 'ERROR 1 some error message' |
| parsing: |
| type = 'ERROR' (error received) |
| id = '1' |
| reply = 'some error message' |
| handling: |
| ok |
| test: 'ERROR err some error message' |
| parsing: |
| type = 'ERROR' (error received) |
| id = 'err' |
| reply = 'some error message' |
| handling: |
| ok |
| |
| test_deferred_cmd |
| get_test_defer called |
| ctrl_handle_msg() returned 0 |
| invoking ctrl_test_defer_cb() asynchronously |
| ctrl_test_defer_cb called |
| success |