Exemplo n.º 1
0
static
gboolean
test_init(
    Test* test,
    const MMSConfig* config,
    const TestDesc* desc)
{
    gboolean ok = FALSE;
    GError* error = NULL;
    const char* dir = desc->name;
    char* ni = g_strconcat(DATA_DIR, dir, "/", desc->ind_file, NULL);
    memset(test, 0, sizeof(*test));
    test->config = config;
    test->notification_ind = g_mapped_file_new(ni, FALSE, &error);
    if (test->notification_ind) {
        test->desc = desc;
        test->cm = mms_connman_test_new();
        test->handler = mms_handler_test_new();
        test->disp = mms_dispatcher_new(config, test->cm, test->handler);
        test->loop = g_main_loop_new(NULL, FALSE);
        test->timeout_id = g_timeout_add_seconds(10, test_timeout, test);
        test->delegate.fn_done = test_done;
        mms_dispatcher_set_delegate(test->disp, &test->delegate);
        test->id = g_strdup(mms_handler_test_send_new(test->handler, "IMSI"));
        mms_handler_message_sent(test->handler, test->id, desc->mmsid);
        test->ret = RET_ERR;
        ok = TRUE;
    } else {
        MMS_ERR("%s", MMS_ERRMSG(error));
        g_error_free(error);
    }
    g_free(ni);
    return ok;
}
Exemplo n.º 2
0
static
void
test_init(
    Test* test,
    const MMSConfig* config,
    const TestDesc* desc,
    gboolean debug)
{
    MMSSettings* settings = mms_settings_default_new(config);
    MMS_DEBUG(">>>>>>>>>> %s <<<<<<<<<<", desc->name);
    test->desc = desc;
    test->cm = mms_connman_test_new();
    test->handler = mms_handler_test_new();
    test->disp = mms_dispatcher_new(settings, test->cm, test->handler);
    test->loop = g_main_loop_new(NULL, FALSE);
    test->delegate.fn_done = test_done;
    mms_dispatcher_set_delegate(test->disp, &test->delegate);
    test->http = test_http_new(NULL, NULL, SOUP_STATUS_OK);
    test->id = g_strdup(mms_handler_test_receive_new(test->handler, TEST_IMSI));
    mms_connman_test_set_port(test->cm, test_http_get_port(test->http), TRUE);
    mms_settings_unref(settings);
    test->ret = RET_ERR;
    if (!debug) {
        test->timeout_id = g_timeout_add_seconds(TEST_TIMEOUT,
            test_timeout, test);
    }
}
Exemplo n.º 3
0
static
gboolean
test_init(
    Test* test,
    MMSConfig* config,
    const TestDesc* desc)
{
    gboolean ok = FALSE;
    memset(test, 0, sizeof(*test));
    if (desc->resp_file) {
        GError* error = NULL;
        char* f = g_strconcat(DATA_DIR, desc->name, "/", desc->resp_file, NULL);
        test->resp_file = g_mapped_file_new(f, FALSE, &error);
        if (!test->resp_file) {
            MMS_ERR("%s", MMS_ERRMSG(error));
            g_error_free(error);
        }
        g_free(f);
    }
    if (!desc->resp_file || test->resp_file) {
        int i;
        guint port;
        MMSSettings* settings = mms_settings_default_new(config);
        test->parts = g_new0(MMSAttachmentInfo, desc->nparts);
        test->files = g_new0(char*, desc->nparts);
        for (i=0; i<desc->nparts; i++) {
            test->files[i] = g_strconcat(DATA_DIR, desc->name, "/",
               desc->parts[i].file_name, NULL);
            test->parts[i] = desc->parts[i];
            test->parts[i].file_name = test->files[i];
        }
        test->config = config;
        test->desc = desc;
        test->cm = mms_connman_test_new();
        test->handler = mms_handler_test_new();
        test->disp = mms_dispatcher_new(settings, test->cm, test->handler);
        test->loop = g_main_loop_new(NULL, FALSE);
        test->delegate.fn_done = test_done;
        mms_dispatcher_set_delegate(test->disp, &test->delegate);
        test->http = test_http_new(test->resp_file, desc->resp_type,
            desc->resp_status);
        port = test_http_get_port(test->http);
        mms_connman_test_set_port(test->cm, port, TRUE);
        if (desc->flags & TEST_FLAG_CANCEL) {
            mms_connman_test_set_connect_callback(test->cm, test_cancel, test);
        }
        if (desc->size_limit) {
            MMSSettingsSimData sim_settings;
            mms_settings_sim_data_default(&sim_settings);
            sim_settings.size_limit = desc->size_limit;
            mms_settings_set_sim_defaults(settings, NULL);
            mms_settings_set_sim_defaults(settings, &sim_settings);
        }
        mms_settings_unref(settings);
        test->ret = RET_ERR;
        ok = TRUE;
    }