Browse Source

Add test for issue #1283

pull/1855/head
Ruben Tytgat 11 months ago
parent
commit
7ead06e1a6
  1. 11
      src/Generator.Tests/Passes/TestPasses.cs
  2. 13
      tests/dotnet/Native/Passes.h

11
src/Generator.Tests/Passes/TestPasses.cs

@ -452,6 +452,17 @@ namespace CppSharp.Generator.Tests.Passes @@ -452,6 +452,17 @@ namespace CppSharp.Generator.Tests.Passes
Assert.AreEqual(AccessSpecifier.Protected, @protected.Access);
}
[Test]
public void TestGetterSetterToPropertyPassHandlesBaseClassesFirst()
{
var @class = AstContext.Class("TestOverridingVirtualPropertyInNamespacedClass");
passBuilder.AddPass(new GetterSetterToPropertyPass());
passBuilder.RunPasses(pass => pass.VisitASTContext(AstContext));
Assert.IsNotEmpty(@class.Properties);
}
private PassBuilder<TranslationUnitPass> passBuilder;
}
}

13
tests/dotnet/Native/Passes.h

@ -141,3 +141,16 @@ class TestExtractInterfacePass @@ -141,3 +141,16 @@ class TestExtractInterfacePass
public:
void DoSomething();
};
// https://github.com/mono/CppSharp/issues/1283
namespace NamespaceWithVirtualPropertyClass {
class TestNamespacedClassWithVirtualProperty {
public:
virtual int property();
};
}
class TestOverridingVirtualPropertyInNamespacedClass : public NamespaceWithVirtualPropertyClass::TestNamespacedClassWithVirtualProperty {
public:
virtual int property() override;
};

Loading…
Cancel
Save