test_sss_sifp.c revision 57c5ea8825c7179fd93382dbcbb07e828e5aec19
/*
Authors:
Pavel Březina <pbrezina@redhat.com>
Copyright (C) 2014 Red Hat
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <popt.h>
#include "tests/cmocka/common_mock.h"
#include "lib/sifp/sss_sifp.h"
#include "lib/sifp/sss_sifp_dbus.h"
#include "lib/sifp/sss_sifp_private.h"
#include "responder/ifp/ifp_iface.h"
struct {
} test_ctx;
{
/* we won't use the connection anywhere, so we can just return NULL */
return NULL;
}
int timeout_milliseconds,
{
return NULL;
}
return sss_mock_ptr_type(DBusMessage *);
}
const char *type,
const void *val)
{
type, &variant_iter);
/* Now add the value */
}
const char *type,
int num_vals,
unsigned int item_size)
{
char array_type[3];
int i;
void *addr;
array_type[0] = DBUS_TYPE_ARRAY;
type, &array_iter);
for (i = 0; i < num_vals; i++) {
}
}
static int test_setup(void **state)
{
return 0;
}
static int test_teardown_parser(void **state)
{
return 0;
}
static int test_teardown_api(void **state)
{
/* sss_sifp is responsible for freeing the reply */
return 0;
}
void test_sss_sifp_strdup_valid(void **state)
{
const char *str = "test_string";
}
void test_sss_sifp_strdup_null(void **state)
{
}
void test_sss_sifp_strcat_valid(void **state)
{
}
void test_sss_sifp_strcat_left_null(void **state)
{
}
void test_sss_sifp_strcat_right_null(void **state)
{
}
void test_sss_sifp_strcat_both_null(void **state)
{
}
void test_sss_sifp_parse_object_path_valid(void **state)
{
/* prepare message */
/* test */
}
void test_sss_sifp_parse_object_path_invalid(void **state)
{
/* prepare message */
/* test */
}
void test_sss_sifp_parse_object_path_list_valid(void **state)
{
int path_in_len = 2;
int i;
/* prepare message */
&paths, path_in_len,
/* test */
assert_true(i < path_in_len);
assert_non_null(path_out[i]);
}
}
void test_sss_sifp_parse_object_path_list_invalid(void **state)
{
/* prepare message */
/* test */
}
void test_sss_sifp_parse_attr_bool(void **state)
{
const char *name = "test-attr";
bool out;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_int16(void **state)
{
const char *name = "test-attr";
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_uint16(void **state)
{
const char *name = "test-attr";
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_int32(void **state)
{
const char *name = "test-attr";
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_uint32(void **state)
{
const char *name = "test-attr";
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_int64(void **state)
{
const char *name = "test-attr";
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_uint64(void **state)
{
const char *name = "test-attr";
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_string(void **state)
{
const char *name = "test-attr";
const char *in = "test value";
const char *out;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_object_path(void **state)
{
const char *name = "test-attr";
const char *out;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_string_dict(void **state)
{
const char *name = "test-attr";
struct {
const char *key;
const char *value;
char **values;
int hret;
/* prepare message */
&var_iter);
&array_iter);
assert_non_null(attrs[0]);
assert_non_null(values[0]);
}
void test_sss_sifp_parse_attr_bool_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 5;
unsigned int out_num;
bool *out;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_bool_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
bool *out;
/* prepare message */
NULL, sizeof(dbus_bool_t));
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_int16_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 5;
unsigned int out_num;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_int16_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_uint16_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 5;
unsigned int out_num;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_uint16_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_int32_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 5;
unsigned int out_num;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_int32_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_uint32_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 5;
unsigned int out_num;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_uint32_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_int64_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 5;
unsigned int out_num;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_int64_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_uint64_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 5;
unsigned int out_num;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_uint64_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_string_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 6;
unsigned int out_num;
const char * const *out;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_string_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
const char * const *out;
/* prepare message */
NULL, sizeof(const char*));
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_object_path_array(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 2;
unsigned int out_num;
const char * const *out;
unsigned int i;
/* prepare message */
/* test */
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
}
}
void test_sss_sifp_parse_attr_object_path_array_empty(void **state)
{
const char *name = "test-attr";
unsigned int num_values = 0;
unsigned int out_num;
const char * const *out;
/* prepare message */
NULL, sizeof(const char*));
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_parse_attr_string_dict_array(void **state)
{
return;
const char *name = "test-attr";
static struct {
const char *key;
const char *values[];
unsigned int num_values = 3;
char **values;
unsigned int i;
int hret;
/* prepare message */
&var_iter);
&array_iter);
&val_iter);
for (i = 0; i < num_values; i++) {
}
assert_non_null(attrs[0]);
for (i = 0; i < num_values; i++) {
assert_non_null(values[i]);
}
assert_null(values[i]);
}
void test_sss_sifp_parse_attr_list(void **state)
{
struct {
const char *name;
int i;
/* prepare message */
&array_iter);
&var_iter);
}
assert_non_null(attrs[i]);
}
assert_null(attrs[i]);
}
void test_sss_sifp_parse_attr_list_empty(void **state)
{
/* prepare message */
&array_iter);
assert_null(attrs[0]);
}
void test_sss_sifp_fetch_attr(void **state)
{
const char *name = "test-attr";
/* prepare message */
/* test */
assert_non_null(attrs[0]);
}
void test_sss_sifp_fetch_all_attrs(void **state)
{
struct {
const char *name;
int i;
/* prepare message */
&array_iter);
&var_iter);
}
assert_non_null(attrs[i]);
}
assert_null(attrs[i]);
}
void test_sss_sifp_fetch_object(void **state)
{
struct {
const char *name;
const char *value;
const char *out;
int i;
/* prepare message */
&array_iter);
&var_iter);
}
}
}
void test_sss_sifp_invoke_list_zeroargs(void **state)
{
int path_in_len = 2;
int i;
/* prepare message */
&paths, path_in_len,
/* test */
assert_true(i < path_in_len);
assert_non_null(path_out[i]);
}
}
void test_sss_sifp_invoke_list_withargs(void **state)
{
const char *arg = "first-arg";
int path_in_len = 2;
int i;
/* prepare message */
&paths, path_in_len,
/* test */
"MyMethod", &path_out,
assert_true(i < path_in_len);
assert_non_null(path_out[i]);
}
}
void test_sss_sifp_invoke_find_zeroargs(void **state)
{
/* prepare message */
/* test */
}
void test_sss_sifp_invoke_find_withargs(void **state)
{
const char *arg = "first-arg";
/* prepare message */
/* test */
"MyMethod", &path_out,
}
void test_sss_sifp_list_domains(void **state)
{
SSS_SIFP_PATH "/Domains/IPA"};
int in_len = 2;
int i;
/* prepare message */
/* test */
for (i = 0; i < in_len; i++) {
assert_non_null(out[i]);
}
assert_null(out[i]);
/* messages are unreferenced in the library */
}
void test_sss_sifp_fetch_domain_by_name(void **state)
{
const char *name = "LDAP";
struct {
const char *name;
const char *value;
int i;
/* prepare message */
&array_iter);
&var_iter);
}
/* test */
}
/* messages are unreferenced in the library */
}
{
int rv;
int no_cleanup = 0;
int opt;
struct poptOption long_options[] = {
_("Do not delete the test database after a test run"), NULL },
};
const struct CMUnitTest tests[] = {
};
/* Set debug level to invalid value so we can decide if -d 0 was used. */
switch(opt) {
default:
return 1;
}
}
return rv;
}