32 lines
1.1 KiB
C#
32 lines
1.1 KiB
C#
using OwnerNumberMigration.ValueParsing;
|
|
using OwnerNumberMigrationTest.TestDataFactories;
|
|
|
|
namespace OwnerNumberMigrationTest.ValueParsing;
|
|
|
|
public class CommaStringArrayStrategyTest
|
|
{
|
|
private readonly IValueParsingStrategy<string[]> _parsingStrategy = new CommaStringArrayStrategy();
|
|
|
|
[Test]
|
|
public void Parse_StringContainsSingleValue_ReturnsAnArrayContainingOnlyTheValue()
|
|
{
|
|
var owners = Guid.NewGuid().ToString();
|
|
|
|
var parsedOwners = _parsingStrategy.Parse(owners);
|
|
|
|
Assert.AreEqual(1, parsedOwners.Length);
|
|
CollectionAssert.Contains(parsedOwners, owners);
|
|
}
|
|
|
|
[Test]
|
|
public void Parse_StringContainsCommas_ReturnsAnArrayContainingTheValueSplitOnComma()
|
|
{
|
|
var ownerCount = new Random(DateTime.Now.Millisecond).Next(3, 10);
|
|
var owners = string.Join(",", EnumerableDataSeriesFactory.CreateSeries(() => Guid.NewGuid().ToString(), ownerCount));
|
|
|
|
var parsedOwners = _parsingStrategy.Parse(owners);
|
|
|
|
Assert.AreEqual(ownerCount, parsedOwners.Length);
|
|
CollectionAssert.AreEquivalent(parsedOwners, owners.Split(","));
|
|
}
|
|
} |