X-Git-Url: https://sigrok.org/gitweb/?p=libsigrok.git;a=blobdiff_plain;f=tests%2Flib.c;h=15beca27ae60096e070ff8bb41eb8be4716dc5e6;hp=f1c3c0159a1b4cd52308ccd505be1d060899d4a5;hb=2622b4297fd4cc4bed5c06bb6ae0aaa8b40e0ece;hpb=a755b0e122105d934c4e7b97435420eda6df6e8e diff --git a/tests/lib.c b/tests/lib.c index f1c3c015..15beca27 100644 --- a/tests/lib.c +++ b/tests/lib.c @@ -14,25 +14,43 @@ * 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, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * along with this program; if not, see . */ +#include #include #include #include #include #include -#include "../include/libsigrok/libsigrok.h" +#include #include "lib.h" +struct sr_context *srtest_ctx; + +void srtest_setup(void) +{ + int ret; + + ret = sr_init(&srtest_ctx); + fail_unless(ret == SR_OK, "sr_init() failed: %d.", ret); +} + +void srtest_teardown(void) +{ + int ret; + + ret = sr_exit(srtest_ctx); + fail_unless(ret == SR_OK, "sr_exit() failed: %d.", ret); +} + /* Get a libsigrok driver by name. */ struct sr_dev_driver *srtest_driver_get(const char *drivername) { struct sr_dev_driver **drivers, *driver = NULL; int i; - drivers = sr_driver_list(); + drivers = sr_driver_list(srtest_ctx); fail_unless(drivers != NULL, "No drivers found."); for (i = 0; drivers[i]; i++) { @@ -45,25 +63,6 @@ struct sr_dev_driver *srtest_driver_get(const char *drivername) return driver; } -/* Get a libsigrok input format by ID. */ -struct sr_input_format *srtest_input_get(const char *id) -{ - struct sr_input_format **inputs, *input = NULL; - int i; - - inputs = sr_input_list(); - fail_unless(inputs != NULL, "No input modules found."); - - for (i = 0; inputs[i]; i++) { - if (strcmp(inputs[i]->id, id)) - continue; - input = inputs[i]; - } - fail_unless(input != NULL, "Input module '%s' not found.", id); - - return input; -} - /* Initialize a libsigrok driver. */ void srtest_driver_init(struct sr_context *sr_ctx, struct sr_dev_driver *driver) { @@ -80,7 +79,7 @@ void srtest_driver_init_all(struct sr_context *sr_ctx) struct sr_dev_driver **drivers, *driver; int i, ret; - drivers = sr_driver_list(); + drivers = sr_driver_list(srtest_ctx); fail_unless(drivers != NULL, "No drivers found."); for (i = 0; drivers[i]; i++) { @@ -91,40 +90,6 @@ void srtest_driver_init_all(struct sr_context *sr_ctx) } } -/* Initialize a libsigrok input module. */ -void srtest_input_init(struct sr_context *sr_ctx, struct sr_input_format *input) -{ - int ret; - struct sr_input *in; - - (void)sr_ctx; - - in = g_try_malloc0(sizeof(struct sr_input)); - fail_unless(in != NULL); - - in->format = input; - in->param = NULL; - - ret = in->format->init(in, "nonexisting.dat"); - fail_unless(ret == SR_OK, "Failed to init '%s' input module: %d.", - input->id, ret); - - g_free(in); -} - -/* Initialize all libsigrok input modules. */ -void srtest_input_init_all(struct sr_context *sr_ctx) -{ - struct sr_input_format **inputs; - int i; - - inputs = sr_input_list(); - fail_unless(inputs != NULL, "No input modules found."); - - for (i = 0; inputs[i]; i++) - srtest_input_init(sr_ctx, inputs[i]); -} - /* Set the samplerate for the respective driver to the specified value. */ void srtest_set_samplerate(struct sr_dev_driver *driver, uint64_t samplerate) { @@ -132,7 +97,7 @@ void srtest_set_samplerate(struct sr_dev_driver *driver, uint64_t samplerate) struct sr_dev_inst *sdi; GVariant *gvar; - sdi = g_slist_nth_data(driver->priv, 0); + sdi = g_slist_nth_data(driver->context, 0); gvar = g_variant_new_uint64(samplerate); ret = driver->config_set(SR_CONF_SAMPLERATE, gvar, sdi, NULL); @@ -150,7 +115,7 @@ uint64_t srtest_get_samplerate(struct sr_dev_driver *driver) struct sr_dev_inst *sdi; GVariant *gvar; - sdi = g_slist_nth_data(driver->priv, 0); + sdi = g_slist_nth_data(driver->context, 0); ret = driver->config_get(SR_CONF_SAMPLERATE, &gvar, sdi, NULL); samplerate = g_variant_get_uint64(gvar); @@ -177,21 +142,6 @@ void srtest_check_samplerate(struct sr_context *sr_ctx, const char *drivername, drivername, s); } -void srtest_buf_to_file(const char *filename, const uint8_t *buf, uint64_t len) -{ - FILE *f; - GError *error = NULL; - gboolean ret; - - f = g_fopen(filename, "wb"); - fail_unless(f != NULL); - - ret = g_file_set_contents(filename, (const gchar *)buf, len, &error); - fail_unless(ret == TRUE); - - fclose(f); -} - GArray *srtest_get_enabled_logic_channels(const struct sr_dev_inst *sdi) { struct sr_channel *ch; @@ -199,7 +149,7 @@ GArray *srtest_get_enabled_logic_channels(const struct sr_dev_inst *sdi) GSList *l; channels = g_array_new(FALSE, FALSE, sizeof(int)); - for (l = sdi->channels; l; l = l->next) { + for (l = sr_dev_inst_channels_get(sdi); l; l = l->next) { ch = l->data; if (ch->type != SR_CHANNEL_LOGIC) continue;