ContentManager.Get(VersionOptions.AllVersions) returns last version record instead of first version record.

This commit is contained in:
Sipke Schoorstra
2014-08-01 12:08:28 -07:00
parent 84c651a0eb
commit 07e98693c7
2 changed files with 24 additions and 1 deletions

View File

@@ -654,6 +654,29 @@ namespace Orchard.Tests.ContentManagement {
Assert.That(gammas[3].Version, Is.EqualTo(4));
}
[Test]
public void GetWithAllVersionsOptionsReturnsLatestVersion() {
// Generate some versions
var gamma1 = _manager.Create(DefaultGammaName, VersionOptions.Published);
Flush();
var gamma2 = _manager.GetDraftRequired(gamma1.Id);
_manager.Publish(gamma2);
Flush();
var gamma3 = _manager.GetDraftRequired(gamma1.Id);
_manager.Publish(gamma3);
Flush();
var gamma4 = _manager.GetDraftRequired(gamma1.Id);
_manager.Publish(gamma4);
FlushAndClear();
// Assert that the latest version is returned when using AllVersions
var gamma = _manager.Get(gamma1.Id, VersionOptions.AllVersions);
Assert.That(gamma.Version, Is.EqualTo(4));
}
[Test]
public void EmptyTypeDefinitionShouldBeCreatedIfNotAlreadyDefined() {
var contentItem = _manager.New("no-such-type");

View File

@@ -188,7 +188,7 @@ namespace Orchard.ContentManagement {
x => x.ContentItemRecord.Id == id && x.Number == options.VersionNumber);
}
else {
versionRecord = contentItemVersionRecords.FirstOrDefault();
versionRecord = contentItemVersionRecords.LastOrDefault();
}
}