Skip to content

Commit 15270f3

Browse files
committed
Adding more unit tests.
Signed-off-by: André Silva <[email protected]>
1 parent aa228bf commit 15270f3

File tree

1 file changed

+104
-0
lines changed

1 file changed

+104
-0
lines changed

test/OpenFeature.Tests/ValueTests.cs

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,5 +129,109 @@ public void List_Arg_Should_Contain_List()
129129
Assert.True(value.IsList);
130130
Assert.Equal(ITEM_VALUE, value.AsList?[0].AsString);
131131
}
132+
133+
[Fact]
134+
public void Constructor_WhenCalledWithAnotherValue_CopiesInnerValue()
135+
{
136+
// Arrange
137+
var originalValue = new Value("testValue");
138+
139+
// Act
140+
var copiedValue = new Value(originalValue);
141+
142+
// Assert
143+
Assert.Equal(originalValue.AsObject, copiedValue.AsObject);
144+
}
145+
146+
[Fact]
147+
public void AsInteger_WhenCalledWithNonIntegerInnerValue_ReturnsNull()
148+
{
149+
// Arrange
150+
var value = new Value("test");
151+
152+
// Act
153+
var actualValue = value.AsInteger;
154+
155+
// Assert
156+
Assert.Null(actualValue);
157+
}
158+
159+
[Fact]
160+
public void AsBoolean_WhenCalledWithNonBooleanInnerValue_ReturnsNull()
161+
{
162+
// Arrange
163+
var value = new Value("test");
164+
165+
// Act
166+
var actualValue = value.AsBoolean;
167+
168+
// Assert
169+
Assert.Null(actualValue);
170+
}
171+
172+
[Fact]
173+
public void AsDouble_WhenCalledWithNonDoubleInnerValue_ReturnsNull()
174+
{
175+
// Arrange
176+
var value = new Value("test");
177+
178+
// Act
179+
var actualValue = value.AsDouble;
180+
181+
// Assert
182+
Assert.Null(actualValue);
183+
}
184+
185+
[Fact]
186+
public void AsString_WhenCalledWithNonStringInnerValue_ReturnsNull()
187+
{
188+
// Arrange
189+
var value = new Value(123);
190+
191+
// Act
192+
var actualValue = value.AsString;
193+
194+
// Assert
195+
Assert.Null(actualValue);
196+
}
197+
198+
[Fact]
199+
public void AsStructure_WhenCalledWithNonStructureInnerValue_ReturnsNull()
200+
{
201+
// Arrange
202+
var value = new Value("test");
203+
204+
// Act
205+
var actualValue = value.AsStructure;
206+
207+
// Assert
208+
Assert.Null(actualValue);
209+
}
210+
211+
[Fact]
212+
public void AsList_WhenCalledWithNonListInnerValue_ReturnsNull()
213+
{
214+
// Arrange
215+
var value = new Value("test");
216+
217+
// Act
218+
var actualValue = value.AsList;
219+
220+
// Assert
221+
Assert.Null(actualValue);
222+
}
223+
224+
[Fact]
225+
public void AsDateTime_WhenCalledWithNonDateTimeInnerValue_ReturnsNull()
226+
{
227+
// Arrange
228+
var value = new Value("test");
229+
230+
// Act
231+
var actualValue = value.AsDateTime;
232+
233+
// Assert
234+
Assert.Null(actualValue);
235+
}
132236
}
133237
}

0 commit comments

Comments
 (0)