Пример #1
0
AUD_Sound* AUD_getPythonSound(PyObject* sound)
{
	Factory* factory = checkFactory(sound);

	if(!factory)
		return NULL;

	return new AUD_Reference<AUD_IFactory>(*reinterpret_cast<AUD_Reference<AUD_IFactory>*>(factory->factory));
}
Пример #2
0
AUD_Sound *AUD_getPythonSound(void *sound)
{
	Factory *factory = checkFactory((PyObject *)sound);

	if (!factory)
		return NULL;

	return new boost::shared_ptr<AUD_IFactory>(*reinterpret_cast<boost::shared_ptr<AUD_IFactory>*>(factory->factory));
}
Пример #3
0
TEST_F(ParserFactoryTests, objectFactoryTypeNameOpenClose)
{
    ASSERT_TRUE( parseDocument(
        "object factory<integer> name {}") );

    EXPECT_EQ(1U, mDocument->objects().size());
    EXPECT_TRUE(checkFactory(0, 1, 1, "name", compil::Factory::EType::object()));
    EXPECT_TRUE(checkFactoryParameterType(0, "integer"));
}
Пример #4
0
TEST_F(ParserFactoryTests, factoryTypeNameCommentOpenFilterFieldWithMethodSemicolonClose)
{
    ASSERT_TRUE( parseDocument(
        "structure sname { integer i; }\n"
        "object factory<sname> name { filter i with blah; }") );

    EXPECT_EQ(2U, mDocument->objects().size());
    EXPECT_TRUE(checkFactory(1, 2, 1, "name", compil::Factory::EType::object()));
    EXPECT_TRUE(checkFactoryParameterType(1, "sname"));
    EXPECT_TRUE(checkFilter(1, 0, 2, 30, "i", "blah"));
}
Пример #5
0
TEST_F(ParserFactoryTests, factory2Filters)
{
    ASSERT_TRUE( parseDocument(
        "structure sname { integer i1;  integer i2; }\n"
        "object factory<sname> name { filter i1 with blah1; filter i2 with blah2; }") );

    EXPECT_EQ(2U, mDocument->objects().size());
    EXPECT_TRUE(checkFactory(1, 2, 1, "name", compil::Factory::EType::object()));
    EXPECT_TRUE(checkFactoryParameterType(1, "sname"));
    EXPECT_TRUE(checkFilter(1, 0, 2, 30, "i1", "blah1"));
    EXPECT_TRUE(checkFilter(1, 1, 2, 52, "i2", "blah2"));
}
Пример #6
0
    EXPECT_EQ(1U, mDocument->objects().size());
    EXPECT_TRUE(checkFactory(0, 1, 1, "name", compil::Factory::EType::object()));
    EXPECT_TRUE(checkFactoryParameterType(0, "integer"));
}

TEST_F(ParserFactoryTests, factoryMissingParameterTypeNameOpenClose)
{
    ASSERT_FALSE( parseDocument(
        "hierarchy factory<blah> name {}") );

    ASSERT_EQ(1U, mpParser->messages().size());
    EXPECT_TRUE(checkErrorMessage(0, 1, 19, compil::Message::p_unknownClassifierType,
                  compil::Message::Type("blah")));
}

TEST_F(ParserFactoryTests, 2factoiesWithComments)
{
    ASSERT_TRUE( parseDocument(
        "//comment1\n"
        "hierarchy factory<integer> name1 {}\n"
        "//comment2\n"
        "object factory<integer> name2 {}") );

    EXPECT_EQ(2U, mDocument->objects().size());

    EXPECT_TRUE(checkFactory(0, 2, 1, "name1", compil::Factory::EType::hierarchy(), "comment1"));
    EXPECT_TRUE(checkFactory(1, 4, 1, "name2", compil::Factory::EType::object(), "comment2"));

    EXPECT_EQ(0U, mpParser->messages().size());
}