コード例 #1
0
ファイル: test_bus.c プロジェクト: AIMA2015/openwebrtc
static void test_illegal_argument_warnings()
{
    OwrBus *bus;
    OwrMessageOrigin *origin;

    bus = owr_bus_new();

    expect_assert("owr_bus_set_message_callback", "OWR_IS_BUS(bus)");
    owr_bus_set_message_callback(NULL, on_message, NULL, NULL);
    expect_assert_happened();

    expect_assert("owr_bus_set_message_callback", "callback");
    owr_bus_set_message_callback(bus, NULL, NULL, NULL);
    expect_assert_happened();

    origin = mock_origin_new();

    expect_assert("owr_bus_add_message_origin", "OWR_IS_BUS(bus)");
    owr_bus_add_message_origin(NULL, NULL);
    expect_assert_happened();

    expect_assert("owr_bus_add_message_origin", "OWR_IS_BUS(bus)");
    owr_bus_add_message_origin(NULL, origin);
    expect_assert_happened();

    expect_assert("owr_bus_add_message_origin", "OWR_IS_MESSAGE_ORIGIN(origin)");
    owr_bus_add_message_origin(bus, NULL);
    expect_assert_happened();

    expect_assert("owr_bus_remove_message_origin", "OWR_IS_BUS(bus)");
    owr_bus_remove_message_origin(NULL, NULL);
    expect_assert_happened();

    expect_assert("owr_bus_remove_message_origin", "OWR_IS_BUS(bus)");
    owr_bus_remove_message_origin(NULL, origin);
    expect_assert_happened();

    expect_assert("owr_bus_remove_message_origin", "OWR_IS_MESSAGE_ORIGIN(origin)");
    owr_bus_remove_message_origin(bus, NULL);
    expect_assert_happened();

    /* should be able to add and remove the same origin multiple times */

    mock_origin_assert_bus_table_size(origin, 0);
    owr_bus_add_message_origin(bus, origin);
    mock_origin_assert_bus_table_size(origin, 1);
    owr_bus_add_message_origin(bus, origin);
    mock_origin_assert_bus_table_size(origin, 1);
    owr_bus_remove_message_origin(bus, origin);
    mock_origin_assert_bus_table_size(origin, 0);
    owr_bus_remove_message_origin(bus, origin);
    mock_origin_assert_bus_table_size(origin, 0);
    owr_bus_add_message_origin(bus, origin);
    mock_origin_assert_bus_table_size(origin, 1);

    g_object_unref(origin);
    g_object_unref(bus);
}
コード例 #2
0
ファイル: test-registry.c プロジェクト: community-ssu/mafw
END_TEST START_TEST(test_add_null_source)
{
	MafwRegistry *reg = NULL;
	MafwSource *source = NULL;

	reg = g_object_new(MAFW_TYPE_REGISTRY, NULL);
	fail_unless(reg != NULL, "Object construction failed");

	g_signal_connect(reg, "source_added", (GCallback) source_added, NULL);

	/* Add a NULL source. This should assert */
	expect_assert(mafw_registry_add_extension(reg, MAFW_EXTENSION(source)));
}
コード例 #3
0
ファイル: test-registry.c プロジェクト: community-ssu/mafw
END_TEST 

START_TEST(test_remove_null_renderer)
{
	MafwRegistry *reg = NULL;
	MafwRenderer *renderer = NULL;

	reg = g_object_new(MAFW_TYPE_REGISTRY, NULL);
	fail_unless(reg != NULL, "Object construction failed");

	g_signal_connect(reg, "renderer_removed", (GCallback) renderer_removed, NULL);

	/* Add a NULL renderer. This should assert */
	expect_assert(mafw_registry_remove_extension(reg, MAFW_EXTENSION(renderer)));
}
コード例 #4
0
ファイル: test-registry.c プロジェクト: community-ssu/mafw
END_TEST START_TEST(test_add_same_renderer_twice)
{
	MafwRegistry *reg = NULL;
	MafwRenderer *renderer = NULL;

	reg = g_object_new(MAFW_TYPE_REGISTRY, NULL);
	fail_unless(reg != NULL, "Object construction failed");

	g_signal_connect(reg, "renderer_added", (GCallback) renderer_added, NULL);

	renderer = MAFW_RENDERER(g_object_new(nop_renderer_get_type(), "uuid", "SomeRenderer",
				      NULL));

	/* Add a renderer */
	mafw_registry_add_extension(reg, MAFW_EXTENSION(renderer));
	fail_unless(renderer_added_ok, "Renderer add failed\n");

	/* Add it again... This should assert */
	expect_assert(mafw_registry_add_extension(reg, MAFW_EXTENSION(renderer)));
}
コード例 #5
0
ファイル: test-registry.c プロジェクト: community-ssu/mafw
END_TEST

START_TEST(test_remove_non_existing_source)
{
	MafwRegistry *reg = NULL;
	MafwSource *source1 = NULL;
	MafwSource *source2 = NULL;
	GList *sources = NULL;

	reg = g_object_new(MAFW_TYPE_REGISTRY, NULL);
	fail_unless(reg != NULL, "Object construction failed");

	g_signal_connect(reg, "source_removed", (GCallback) source_removed, NULL);

	source1 = g_object_new(nop_source_get_type(),
			       "uuid", "SomeSource",
			       "name", "nop",
			       NULL);
	source2 = g_object_new(nop_source_get_type(),
			       "uuid", "SomeSource2",
			       "name", "nop",
			       NULL);

	/* Add a source */
	mafw_registry_add_extension(reg, MAFW_EXTENSION(source1));

	/* Get sources */
	sources = mafw_registry_get_sources(reg);
	fail_unless(g_list_length(sources) == 1, "Sources list size wrong\n");

	/* Remove the source (which shouldn't exist in the registry */
	expect_assert(mafw_registry_remove_extension(reg, MAFW_EXTENSION(source2)));
	fail_unless(source_removed_ok == FALSE, 
		    "Shouldn't signal non-existing source removal\n");

	sources = mafw_registry_get_sources(reg);
	fail_unless(g_list_length(sources) == 1, "Sources list size wrong\n");

	g_object_unref(reg);
}
コード例 #6
0
ファイル: test-registry.c プロジェクト: community-ssu/mafw
END_TEST START_TEST(test_add_same_source_twice)
{
	MafwRegistry *reg = NULL;
	MafwSource *source = NULL;

	reg = g_object_new(MAFW_TYPE_REGISTRY, NULL);
	fail_unless(reg != NULL, "Object construction failed");

	g_signal_connect(reg, "source_added", (GCallback) source_added, NULL);

	source = g_object_new(nop_source_get_type(),
			      "uuid", "SomeSource",
			      "name", "nop",
			      NULL);

	/* Add a source */
	mafw_registry_add_extension(reg, MAFW_EXTENSION(source));
	fail_unless(source_added_ok, "Source add failed\n");

	/* Add it again... This should assert */
	expect_assert(mafw_registry_add_extension(reg, MAFW_EXTENSION(source)));
}
コード例 #7
0
ファイル: test-registry.c プロジェクト: community-ssu/mafw
END_TEST

START_TEST(test_remove_non_existing_renderer)
{
	MafwRegistry *reg = NULL;
	MafwRenderer *renderer1 = NULL;
	MafwRenderer *renderer2 = NULL;
	GList *renderers = NULL;

	reg = g_object_new(MAFW_TYPE_REGISTRY, NULL);
	fail_unless(reg != NULL, "Object construction failed");

	g_signal_connect(reg, "renderer_removed", (GCallback) renderer_removed, NULL);

	renderer1 = MAFW_RENDERER(g_object_new(nop_renderer_get_type(), "uuid", "SomeRenderer",
				       NULL));
	renderer2 = MAFW_RENDERER(g_object_new(nop_renderer_get_type(), "uuid", "SomeRenderer2",
				       NULL));

	/* Add a renderer */
	mafw_registry_add_extension(reg, MAFW_EXTENSION(renderer1));

	/* Get renderers */
	renderers = mafw_registry_get_renderers(reg);
	fail_unless(g_list_length(renderers) == 1, "Renderers list size wrong\n");

	/* Remove the renderer (which shouldn't exist in the registry */
	expect_assert(mafw_registry_remove_extension(reg, MAFW_EXTENSION(renderer2)));
	fail_unless(renderer_removed_ok == FALSE, 
		    "Shouldn't signal non-existing renderer removal\n");

	renderers = mafw_registry_get_renderers(reg);
	fail_unless(g_list_length(renderers) == 1, "Renderers list size wrong\n");

	g_object_unref(reg);
}