public static Content SetupTestContentData(Guid newGuid, Guid newGuidRedHerring, ProviderSetup providerSetup)
{
var baseEntity = HiveModelCreationHelper.MockTypedEntity();
var entity = new Content(baseEntity);
entity.Id = new HiveId(newGuid);
entity.EntitySchema.Alias = "schema-alias1";
var existingDef = entity.EntitySchema.AttributeDefinitions[0];
var newDef = HiveModelCreationHelper.CreateAttributeDefinition("aliasForQuerying", "", "", existingDef.AttributeType, existingDef.AttributeGroup, true);
entity.EntitySchema.AttributeDefinitions.Add(newDef);
entity.Attributes.Add(new TypedAttribute(newDef, "my-new-value"));
entity.Attributes[1].DynamicValue = "not-on-red-herring";
entity.Attributes[NodeNameAttributeDefinition.AliasValue].Values["UrlName"] = "my-test-route";
var redHerringEntity = HiveModelCreationHelper.MockTypedEntity();
redHerringEntity.Id = new HiveId(newGuidRedHerring);
redHerringEntity.EntitySchema.Alias = "redherring-schema";
using (var uow = providerSetup.UnitFactory.Create())
{
var publishedRevision = new Revision<TypedEntity>(entity)
{ MetaData = { StatusType = FixedStatusTypes.Published } };
uow.EntityRepository.Revisions.AddOrUpdate(publishedRevision);
// Only add extra entity if caller wants it
if (newGuidRedHerring != Guid.Empty) uow.EntityRepository.AddOrUpdate(redHerringEntity);
uow.Complete();
}
return entity;
}