Files
Umbraco-CMS/src/Umbraco.Tests.Common/Builders/ContentPropertyBasicBuilder.cs
2020-12-19 08:17:35 +01:00

54 lines
1.3 KiB
C#

// Copyright (c) Umbraco.
// See LICENSE for more details.
using Umbraco.Tests.Common.Builders.Interfaces;
using Umbraco.Web.Models.ContentEditing;
namespace Umbraco.Tests.Common.Builders
{
public class ContentPropertyBasicBuilder<TParent> : ChildBuilderBase<TParent, ContentPropertyBasic>,
IWithIdBuilder, IWithAliasBuilder
{
private int? _id;
private string _alias;
private object _value;
public ContentPropertyBasicBuilder(TParent parentBuilder)
: base(parentBuilder)
{
}
public override ContentPropertyBasic Build()
{
var alias = _alias ?? null;
var id = _id ?? 0;
var value = _value ?? null;
return new ContentPropertyBasic()
{
Alias = alias,
Id = id,
Value = value
};
}
public ContentPropertyBasicBuilder<TParent> WithValue(object value)
{
_value = value;
return this;
}
int? IWithIdBuilder.Id
{
get => _id;
set => _id = value;
}
string IWithAliasBuilder.Alias
{
get => _alias;
set => _alias = value;
}
}
}