Added Tests. Added Contains method
This commit is contained in:
parent
a032e495cf
commit
5b429b82fa
2 changed files with 67 additions and 2 deletions
|
|
@ -83,4 +83,51 @@ public class FlexArrayStringTests
|
|||
array.Capacity.Should().BeGreaterThan(FlexArrayString.DefaultStartSize, "capacity exceeded, had to grow");
|
||||
array.Count.Should().Be(FlexArrayString.DefaultStartSize + 2);
|
||||
}
|
||||
|
||||
// Contains tests
|
||||
[Fact]
|
||||
public void Contains_Success()
|
||||
{
|
||||
var array = new FlexArrayString();
|
||||
array.Add("Goodbye");
|
||||
array.Add("World");
|
||||
array.Add("!");
|
||||
array.Add("bye...");
|
||||
|
||||
array.Contains("!")
|
||||
.Should().BeTrue();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Contains_Success_AfterGrowth()
|
||||
{
|
||||
var array = new FlexArrayString();
|
||||
for (var i = 0; i <= FlexArrayString.DefaultStartSize; i++)
|
||||
{
|
||||
array.Add(i.ToString());
|
||||
}
|
||||
|
||||
array.Contains(array[FlexArrayString.DefaultStartSize - 1])
|
||||
.Should().BeTrue();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Contains_Empty()
|
||||
{
|
||||
var array = new FlexArrayString();
|
||||
|
||||
array.Contains("Hi!")
|
||||
.Should().BeFalse("collection is empty");
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Contains_NotFound()
|
||||
{
|
||||
var array = new FlexArrayString();
|
||||
array.Add("Hello");
|
||||
array.Add("World");
|
||||
|
||||
array.Contains("!")
|
||||
.Should().BeFalse("not contained in list");
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,14 +28,32 @@ public class FlexArrayString
|
|||
_data = new string[size];
|
||||
}
|
||||
|
||||
public void Add(string input)
|
||||
public void Add(string value)
|
||||
{
|
||||
if (Capacity == Count)
|
||||
{
|
||||
Grow();
|
||||
}
|
||||
|
||||
_data[Count++] = input;
|
||||
_data[Count++] = value;
|
||||
}
|
||||
|
||||
public bool Contains(string value)
|
||||
{
|
||||
if (Count == 0)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
for (var i = 0; i < Count; i++)
|
||||
{
|
||||
if (_data[i] == value)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
private void Grow()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue