Exemplo n.º 1
0
        private static void AssertConfigurationIsValid(IPluginConfig config, string[][] configSettings,
                                                       string errorMessage)
        {
            Assert.AreEqual(configSettings.Length, config.Settings.Count,
                            $"{errorMessage} Incorrect number of settings returned.");
            Assert.AreEqual(configSettings[0][0], config.Settings[0].Name, errorMessage);
            Assert.AreEqual(configSettings[0][1], config.Settings[0].Value, errorMessage);
            Assert.AreEqual(configSettings[1][0], config.Settings[1].Name, errorMessage);
            Assert.AreEqual(configSettings[1][1], config[configSettings[1][0]], errorMessage);

            // Check for null names using iteration
            foreach (var setting in config)
            {
                Assert.IsNotNull(setting.Name);
            }

            // Check for null values using enumerator
            using (var enumerator = config.GetEnumerator())
            {
                enumerator.MoveNext(); // move to the first value
                Assert.IsNotNull(enumerator?.Current?.Value);
            }

            Assert.IsNull(config["somebadnametotryandget"], errorMessage);
        }