Browse Source

Added reference test case.

pull/306/head
Tom Spilman 12 years ago
parent
commit
27a2016f8a
  1. 3
      tests/Basic/Basic.Tests.cs
  2. 8
      tests/Basic/Basic.cpp
  3. 2
      tests/Basic/Basic.h

3
tests/Basic/Basic.Tests.cs

@ -70,6 +70,9 @@ public class BasicTests : GeneratorTestFixture @@ -70,6 +70,9 @@ public class BasicTests : GeneratorTestFixture
str = "Hello";
hello.StringInOut(ref str);
Assert.That(str, Is.EqualTo("StringInOut"));
str = "Hello";
hello.StringInOutRef(ref str);
Assert.That(str, Is.EqualTo("StringInOutRef"));
}
[Test]

8
tests/Basic/Basic.cpp

@ -222,6 +222,14 @@ void Hello::StringInOut(CS_IN_OUT const char** str) @@ -222,6 +222,14 @@ void Hello::StringInOut(CS_IN_OUT const char** str)
*str = "Failed";
}
void Hello::StringInOutRef(CS_IN_OUT const char*& str)
{
if (strcmp(str, "Hello") == 0)
str = "StringInOutRef";
else
str = "Failed";
}
int unsafeFunction(const Bar& ret, char* testForString, void (*foo)(int))
{
return ret.A;

2
tests/Basic/Basic.h

@ -136,7 +136,7 @@ public: @@ -136,7 +136,7 @@ public:
void StringOut(CS_OUT const char** str);
void StringOutRef(CS_OUT const char*& str);
void StringInOut(CS_IN_OUT const char** str);
//void StringInOutRef(CS_OUT const char*& str);
void StringInOutRef(CS_IN_OUT const char*& str);
};
class DLL_API AbstractFoo

Loading…
Cancel
Save