Skip to content

Commit ebdd392

Browse files
committed
FIX: #203 - NaturalId not working in overrides
1 parent 5db971d commit ebdd392

File tree

2 files changed

+16
-3
lines changed

2 files changed

+16
-3
lines changed

src/FluentNHibernate.Testing/AutoMapping/Apm/AutoPersistenceModelTests.Overrides.cs

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,19 @@ namespace FluentNHibernate.Testing.AutoMapping.Apm
99
[TestFixture]
1010
public partial class AutoPersistenceModelTests : BaseAutoPersistenceTests
1111
{
12-
#region overrides
12+
[Test]
13+
public void NaturalIdOverrideShouldOverrideExistingProperty()
14+
{
15+
var autoMapper = AutoMap.AssemblyOf<ExampleClass>()
16+
.Where(t => t.Namespace == "FluentNHibernate.Automapping.TestFixtures")
17+
.Override<ExampleClass>(c => c.NaturalId().Property(x => x.LineOne, "test"));
18+
19+
new AutoMappingTester<ExampleClass>(autoMapper)
20+
.Element("//natural-id/property[@name='LineOne']")
21+
.Exists()
22+
.HasThisManyChildNodes(1)
23+
.Element("//natural-id/property[@name='LineOne']/column").HasAttribute("name", "test");
24+
}
1325

1426
[Test]
1527
public void OverrideShouldOverrideExistingProperty()
@@ -340,7 +352,5 @@ public void SubclassOverrideShouldOverrideExistingReferencesAny()
340352
.Element("//subclass/any[@name='DictionaryChild']").Exists()
341353
.Element("//subclass/map[@name='DictionaryChild']").DoesntExist();
342354
}
343-
344-
#endregion
345355
}
346356
}

src/FluentNHibernate/Automapping/AutoMapping.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,9 @@ void IAutoClasslike.AlterModel(ClassMappingBase mapping)
4949
if (providers.Id != null)
5050
classMapping.Id = providers.Id.GetIdentityMapping();
5151

52+
if (providers.NaturalId != null)
53+
classMapping.NaturalId = providers.NaturalId.GetNaturalIdMapping();
54+
5255
if (providers.CompositeId != null)
5356
classMapping.Id = providers.CompositeId.GetCompositeIdMapping();
5457

0 commit comments

Comments
 (0)