public void ReturnsNullIfMissingKey() { // Given TestExecutionContext context = new TestExecutionContext(); TestDocument document = new TestDocument(); KeyValuePair <string, string>[] args = new KeyValuePair <string, string>[] { new KeyValuePair <string, string>("Key", "Foo") }; IfShortcode shortcode = new IfShortcode(); // When ShortcodeResult result = shortcode.Execute(args, "Fizzbuzz", document, context); // Then result.ShouldBeNull(); }
public void ReturnsNullIfCanNotConvertToBool() { // Given TestExecutionContext context = new TestExecutionContext(); TestDocument document = new TestDocument(new MetadataItems { { "Foo", "abc" } }); KeyValuePair <string, string>[] args = new KeyValuePair <string, string>[] { new KeyValuePair <string, string>("Key", "Foo") }; IfShortcode shortcode = new IfShortcode(); // When ShortcodeResult result = shortcode.Execute(args, "Fizzbuzz", document, context); // Then result.ShouldBeNull(); }
public void EmptyForMissingMetadata() { // Given TestExecutionContext context = new TestExecutionContext(); TestDocument document = new TestDocument(new MetadataItems { { "Foo", "Bar" } }); KeyValuePair <string, string>[] args = new KeyValuePair <string, string>[] { new KeyValuePair <string, string>(null, "Fizz") }; MetaShortcode shortcode = new MetaShortcode(); // When ShortcodeResult result = shortcode.Execute(args, string.Empty, document, context); // Then result.ShouldBeNull(); }
public async Task NullResultIfFileDoesNotExist() { // Given TestFileProvider fileProvider = new TestFileProvider(); fileProvider.AddDirectory("/"); fileProvider.AddDirectory("/A"); fileProvider.AddDirectory("/A/B"); fileProvider.AddFile("/A/B/c.txt", "foo"); TestFileSystem fileSystem = new TestFileSystem { FileProvider = fileProvider }; fileSystem.InputPaths.Clear(); fileSystem.InputPaths.Add("/A"); TestExecutionContext context = new TestExecutionContext { FileSystem = fileSystem }; context.TestLoggerProvider.ThrowLogLevel = LogLevel.Error; TestDocument document = new TestDocument(); KeyValuePair <string, string>[] args = new KeyValuePair <string, string>[] { new KeyValuePair <string, string>(null, "B/d.txt") }; IncludeShortcode shortcode = new IncludeShortcode(); // When ShortcodeResult result = await shortcode.ExecuteAsync(args, string.Empty, document, context); // Then result.ShouldBeNull(); }