public void ReturnsFalseForMissingKey() { // Given TestMetadata metadata = new TestMetadata(); // When bool result = metadata.TryGetValue <object>("Foo", out object value); // Then result.ShouldBeFalse(); value.ShouldBeNull(); }
public void ReturnsConvertedValue() { // Given TestMetadata metadata = new TestMetadata() { { "Foo", "2" } }; // When bool result = metadata.TryGetValue("Foo", out int value); // Then result.ShouldBeTrue(); value.ShouldBe(2); }
public void ReturnsObjectValue() { // Given TestMetadata metadata = new TestMetadata() { { "Foo", 2 } }; // When bool result = metadata.TryGetValue <object>("Foo", out object value); // Then result.ShouldBeTrue(); value.ShouldBeOfType <int>().ShouldBe(2); }
public void EvaluatesSimpleScriptWhenConversionFails() { // Given TestExecutionContext context = new TestExecutionContext(); context.ScriptHelper = new ScriptHelper(context); TestMetadata metadata = new TestMetadata(); // When bool result = metadata.TryGetValue("=> 1 + 2", out TryGetValueTests value); // Then result.ShouldBeFalse(); value.ShouldBeNull(); }
public void ReturnsFalseIfNoConversion() { // Given TestMetadata metadata = new TestMetadata() { { "Foo", "abc" } }; // When bool result = metadata.TryGetValue("Foo", out TryGetValueTests value); // Then result.ShouldBeFalse(); value.ShouldBeNull(); }
public void EvaluatesSimpleScript() { // Given TestExecutionContext context = new TestExecutionContext(); context.ScriptHelper = new ScriptHelper(context); TestMetadata metadata = new TestMetadata(); // When bool result = metadata.TryGetValue("=> 1 + 2", out int value); // Then result.ShouldBeTrue(); value.ShouldBe(3); }
public void EvaluatesScriptWithMetadataAccess() { // Given TestExecutionContext context = new TestExecutionContext(); context.ScriptHelper = new ScriptHelper(context); TestMetadata metadata = new TestMetadata() { { "Foo", 3 } }; // When bool result = metadata.TryGetValue("=> 1 + (int)Foo", out int value); // Then result.ShouldBeTrue(); value.ShouldBe(4); }
/// <inheritdoc /> bool IReadOnlyDictionary <string, object> .TryGetValue(string key, out object value) => _metadata.TryGetValue(key, out value);
/// <inhertdoc /> public bool TryGetValue(string key, out object value) => _metadata.TryGetValue(key, out value);
/// <inhertdoc /> public bool TryGetValue <T>(string key, out T value) => _metadata.TryGetValue <T>(key, out value);