private static void GenerateImage(ImageOutputConfiguration config, Dictionary <string, int> words, string baseName, int seed) { if (!config.IsEnabled) { return; } Console.Write("Generating cloud image..."); var width = config.Width; var height = config.Height; var rand = new Random(seed); var fontFamily = new FontFamily(config.Font); var collisionMap = new CollisionMap(width, height); var measurer = new StringMeasurer(); var minimumFontSize = config.MinimumFontSize; var compactness = config.Compactness; var placer = new WordPlacer(measurer, collisionMap, width, height, rand, fontFamily, minimumFontSize, compactness); var imageGenerator = new ImageGenerator(placer, width, height, fontFamily); var image = imageGenerator.Generate(words); image.Save(baseName); Console.WriteLine("[Done]"); }
public void ShouldHaveSpecifiedWidth() { // Arrange const int expected = 123; var section = Substitute.For <IConfigurationSection>(); section[ConfigurationKeys.ImageOutput.Width].Returns(expected.ToString()); var sut = new ImageOutputConfiguration(section); // Act var actual = sut.Width; // Assert Assert.Equal(expected, actual); }
public void ShouldHaveSpecifiedFont() { // Arrange const string expected = "Arial"; var section = Substitute.For <IConfigurationSection>(); section[ConfigurationKeys.ImageOutput.Font].Returns(expected); var sut = new ImageOutputConfiguration(section); // Act var actual = sut.Font; // Assert Assert.Equal(expected, actual); }
public void ShouldHaveCorrectMinimumFontSize() { // Arrange var section = Substitute.For <IConfigurationSection>(); section[ConfigurationKeys.ImageOutput.MinimumFontSize].Returns("12"); var sut = new ImageOutputConfiguration(section); // Act var actual = sut.MinimumFontSize; // Assert Assert.Equal(12, actual); }
public void ShouldHaveCorrectCompactness() { // Arrange var section = Substitute.For <IConfigurationSection>(); section[ConfigurationKeys.ImageOutput.Compactness].Returns("123"); var sut = new ImageOutputConfiguration(section); // Act var actual = sut.Compactness; // Assert Assert.Equal(123, actual); }
public void ShouldBeDisabledWhenSpecified() { // Arrange var section = Substitute.For <IConfigurationSection>(); section[ConfigurationKeys.ImageOutput.Enabled].Returns("false"); var sut = new ImageOutputConfiguration(section); // Act var actual = sut.IsEnabled; // Assert Assert.False(actual); }