public void CloudPainter_ShouldCallStartDrawing_OnlyOnce() { var words = new Dictionary <string, int> { ["hello"] = 1 }; var painter = new CloudWithWordsPainter(imageHolder, settings, palette, layouter, words); painter.Paint(); A.CallTo(() => imageHolder.StartDrawing()).WithAnyArguments().MustHaveHappenedOnceExactly(); }
public void CloudPainter_ShouldCallLayouterExactTimesThatSpecifiedInSettings() { var words = new Dictionary <string, int> { ["hello"] = 1 }; var painter = new CloudWithWordsPainter(imageHolder, settings, palette, layouter, words); painter.Paint(); A.CallTo(() => layouter.PutNextRectangle(new Size(10, 10))).WithAnyArguments().MustHaveHappened(words.Count, Times.Exactly); }
public void CloudPainter_ShouldCallDrawRectangle_AsMuchAsWordsCount() { var words = new Dictionary <string, int> { ["hello"] = 1, ["hell"] = 2, ["hel"] = 3, ["he"] = 4 }; A.CallTo(() => settings.Frame).Returns(true); var painter = new CloudWithWordsPainter(imageHolder, settings, palette, layouter, words); painter.Paint(); A.CallTo(() => graphics.DrawRectangle(default, default)).WithAnyArguments().MustHaveHappened(words.Count, Times.Exactly);