[Openais] [PATCH 4/7] CTS: add some more confdb tests

Steven Dake sdake at redhat.com
Mon Mar 29 22:39:19 PDT 2010


good for commit

On Tue, 2010-03-30 at 13:30 +1100, Angus Salkeld wrote:
> improve the confdb notification tests.
> 
> -Angus
> 
> Signed-off-by: Angus Salkeld <asalkeld at redhat.com>
> ---
>  cts/agents/confdb_test_agent.c |   50 +++++++++++++++++++++++++++++++++++++++-
>  1 files changed, 49 insertions(+), 1 deletions(-)
> 
> diff --git a/cts/agents/confdb_test_agent.c b/cts/agents/confdb_test_agent.c
> index bd5253a..10b742e 100644
> --- a/cts/agents/confdb_test_agent.c
> +++ b/cts/agents/confdb_test_agent.c
> @@ -376,6 +376,7 @@ static void notification_test (int sock)
>  	hdb_handle_t object_handle;
>  	hdb_handle_t new_object_handle;
>  	uint16_t incdec_value;
> +	uint16_t incdec_value_new;
>  	uint32_t incdec_value_out;
>  
>  	snprintf (response, 100, "%s", FAIL_STR);
> @@ -445,7 +446,54 @@ static void notification_test (int sock)
>  		goto send_response;
>  	}
>  
> -	/* Test 'key replaced' notification
> +	/* Test 'key replaced' notification for key_replace()
> +	 */
> +	callback_type = NTF_NONE;
> +	incdec_value_new = 413;
> +	res = confdb_key_replace(handle, new_object_handle, "incdec", strlen("incdec"),
> +			&incdec_value, sizeof(incdec_value),
> +			&incdec_value_new, sizeof(incdec_value_new));
> +	if (res != CS_OK) {
> +		syslog (LOG_ERR, "error replacing 'incdec' key: %d\n", res);
> +		goto send_response;
> +	}
> +
> +	confdb_dispatch (handle, CS_DISPATCH_ALL);
> +
> +	if (callback_type != NTF_KEY_REPLACED) {
> +		syslog (LOG_ERR, "no notification received for the incrementing of key 'incdec'");
> +		goto send_response;
> +	}
> +	if (strcmp ("incdec", ntf_key_name) != 0) {
> +		syslog (LOG_ERR, "expected notification for 'incdec' but got %s", ntf_key_name);
> +		goto send_response;
> +	}
> +	/* Test NO 'key replaced' notification for key_replace() of the same
> +	 * value.
> +	 */
> +	callback_type = NTF_NONE;
> +	incdec_value = incdec_value_new;
> +	res = confdb_key_replace(handle, new_object_handle, "incdec", strlen("incdec"),
> +			&incdec_value_new, sizeof(incdec_value),
> +			&incdec_value, sizeof(incdec_value_new));
> +	if (res != CS_OK) {
> +		syslog (LOG_ERR, "error replacing 'incdec' key: %d\n", res);
> +		goto send_response;
> +	}
> +
> +	confdb_dispatch (handle, CS_DISPATCH_ALL);
> +
> +	if (callback_type != NTF_NONE) {
> +		syslog (LOG_ERR, "notification received for the replacing the same value of key 'incdec'");
> +		goto send_response;
> +	}
> +	if (strcmp ("incdec", ntf_key_name) != 0) {
> +		syslog (LOG_ERR, "expected notification for 'incdec' but got %s", ntf_key_name);
> +		goto send_response;
> +	}
> +
> +
> +	/* Test 'key replaced' notification for key_increment()
>  	 */
>  	callback_type = NTF_NONE;
>  



More information about the Openais mailing list