public void GetNames_returns_label_names_from_providers() { var firstProvider = Mock.Of <IBuildInfoLabelProvider>( p => p.GetBuildInfoLabels() == new[] { new BuildInfoLabel("version", "1.2.3"), new BuildInfoLabel("major_version", "1") } ); var secondProvider = Mock.Of <IBuildInfoLabelProvider>( p => p.GetBuildInfoLabels() == new[] { new BuildInfoLabel("api_version", "4.5.6") } ); var expected = new[] { "version", "major_version", "api_version" }; var sut = new BuildInfoLabelCollector(Mock.Of <ILogger>(), new[] { firstProvider, secondProvider }); var actual = sut.GetNames(); CollectionAssert.AreEqual(expected, actual); }