コード例 #1
0
        public void AppendWarningTest(ConfigStatus.ErrorLevel initialLevel)
        {
            int initialLevelNum = Array.IndexOf(_sortedLevels, initialLevel);
            int warningNum      = Array.IndexOf(_sortedLevels, ConfigStatus.ErrorLevel.Warning);
            int newLevelNum     = Math.Max(initialLevelNum, warningNum);

            ConfigStatus.ErrorLevel newLevel = _sortedLevels[newLevelNum];
            string initialMessage            = "Message init";
            string warningMessage            = "Warning message";

            ConfigStatus status = StatusBySeverityLevel(initialLevel, initialMessage);

            status.AppendWarning(warningMessage);
            Assert.That(status.SeverityLevel, Is.EqualTo(newLevel));
            Assert.That(status.IsOk, Is.EqualTo(false));
            Assert.That(status.IsWarningLevel,
                        Is.EqualTo(newLevel == ConfigStatus.ErrorLevel.Warning));
            Assert.That(status.IsErrorLevel, Is.EqualTo(newLevel == ConfigStatus.ErrorLevel.Error));
            string[] errorMessages = GetMessagesForLevel(ConfigStatus.ErrorLevel.Error,
                                                         new[] { initialLevel, ConfigStatus.ErrorLevel.Warning },
                                                         new[] { initialMessage, warningMessage });
            string[] warningMessages = GetMessagesForLevel(ConfigStatus.ErrorLevel.Warning,
                                                           new[] { initialLevel, ConfigStatus.ErrorLevel.Warning },
                                                           new[] { initialMessage, warningMessage });
            Assert.That(status.AllMessages,
                        Is.EquivalentTo(errorMessages.Concat(warningMessages)));
            Assert.That(status.ErrorMessages, Is.EquivalentTo(errorMessages));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Error),
                        Is.EquivalentTo(errorMessages));
            Assert.That(status.WarningMessages, Is.EquivalentTo(warningMessages));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Warning),
                        Is.EquivalentTo(warningMessages));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Ok), Is.Null);
        }
コード例 #2
0
        public void AppendErrorTest(ConfigStatus.ErrorLevel initialLevel)
        {
            var    newLevel       = ConfigStatus.ErrorLevel.Error;
            string initialMessage = "Message init";
            string errorMessage   = "Error message";

            ConfigStatus status = StatusBySeverityLevel(initialLevel, initialMessage);

            status.AppendError(errorMessage);
            Assert.That(status.SeverityLevel, Is.EqualTo(newLevel));
            Assert.That(status.IsOk, Is.EqualTo(false));
            Assert.That(status.IsWarningLevel, Is.EqualTo(false));
            Assert.That(status.IsErrorLevel, Is.EqualTo(true));
            string[] errorMessages = GetMessagesForLevel(ConfigStatus.ErrorLevel.Error,
                                                         new[] { initialLevel, ConfigStatus.ErrorLevel.Error },
                                                         new[] { initialMessage, errorMessage });
            string[] warningMessages = GetMessagesForLevel(ConfigStatus.ErrorLevel.Warning,
                                                           new[] { initialLevel, ConfigStatus.ErrorLevel.Error },
                                                           new[] { initialMessage, errorMessage });
            Assert.That(status.AllMessages,
                        Is.EquivalentTo(errorMessages.Concat(warningMessages)));
            Assert.That(status.ErrorMessages, Is.EquivalentTo(errorMessages));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Error),
                        Is.EquivalentTo(errorMessages));
            Assert.That(status.WarningMessages, Is.EquivalentTo(warningMessages));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Warning),
                        Is.EquivalentTo(warningMessages));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Ok), Is.Null);
        }
コード例 #3
0
        void ParseValueFailure(string paramName, bool launchRequest,
                               Dictionary <string, Tuple <string, ConfigStatus.ErrorLevel> >
                               invalidValues)
        {
            foreach (KeyValuePair <string, Tuple <string, ConfigStatus.ErrorLevel> > valuePair in
                     invalidValues)
            {
                string paramValue  = valuePair.Key;
                string messagePart = valuePair.Value.Item1;
                ConfigStatus.ErrorLevel expectedErrorLevel = valuePair.Value.Item2;
                var queryParams = new Dictionary <string, string>
                {
                    { paramName, paramValue }
                };
                LaunchGameRequest request    = ShallowCopy(ValidRequest);
                LaunchParams      parameters = ShallowCopy(ValidParams);
                ConfigStatus      status     = launchRequest
                    ? _target.ParseToLaunchRequest(queryParams, request)
                    : _target.ParseToParameters(queryParams, parameters);
                // Verify that corresponding message is populated.
                Assert.That(status.SeverityLevel, Is.EqualTo(expectedErrorLevel));
                Assert.That(status.MessagesByErrorLevel(expectedErrorLevel).Count, Is.EqualTo(1));
                Assert.That(status.AllMessages.Count, Is.EqualTo(1));
                Assert.That(status.AllMessages[0].Contains(messagePart));

                object obj  = launchRequest ? (object)request : parameters;
                Type   type = launchRequest
                    ? typeof(LaunchGameRequest)
                    : typeof(LaunchParams);
                object originObject = launchRequest ? (object)ValidRequest : ValidParams;
                // Assert that all properties are unchanged.
                AssertObjectPropertiesEqual(type, obj, originObject);
            }
        }
コード例 #4
0
        public void CreateOkStatusTest()
        {
            ConfigStatus status = ConfigStatus.OkStatus();

            Assert.That(status.IsOk, Is.EqualTo(true));
            Assert.That(status.IsWarningLevel, Is.EqualTo(false));
            Assert.That(status.IsErrorLevel, Is.EqualTo(false));
            Assert.That(status.AllMessages, Is.Empty);
            Assert.That(status.ErrorMessages, Is.Empty);
            Assert.That(status.WarningMessages, Is.Empty);
            Assert.That(status.WarningMessage, Is.Empty);
            Assert.That(status.SeverityLevel, Is.EqualTo(ConfigStatus.ErrorLevel.Ok));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Ok), Is.Null);
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Warning), Is.Empty);
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Error), Is.Empty);
        }
コード例 #5
0
        public void CreateErrorStatusTest()
        {
            string       message = "error Message";
            ConfigStatus status  = ConfigStatus.ErrorStatus(message);

            Assert.That(status.IsOk, Is.EqualTo(false));
            Assert.That(status.IsWarningLevel, Is.EqualTo(false));
            Assert.That(status.IsErrorLevel, Is.EqualTo(true));
            Assert.That(status.AllMessages, Is.EqualTo(new[] { message }));
            Assert.That(status.ErrorMessages, Is.EqualTo(new[] { message }));
            Assert.That(status.WarningMessages, Is.Empty);
            Assert.That(status.WarningMessage, Is.Empty);
            Assert.That(status.SeverityLevel, Is.EqualTo(ConfigStatus.ErrorLevel.Error));
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Ok), Is.Null);
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Warning), Is.Empty);
            Assert.That(status.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Error),
                        Is.EqualTo(new[] { message }));
        }
コード例 #6
0
        public void MergeTest()
        {
            for (int i = 0; i < _sortedLevels.Length; ++i)
            {
                for (int j = 0; j < _sortedLevels.Length; ++j)
                {
                    string       message1    = "Message 1";
                    string       message2    = "Message 2";
                    ConfigStatus status1     = StatusBySeverityLevel(_sortedLevels[i], message1);
                    ConfigStatus status2     = StatusBySeverityLevel(_sortedLevels[j], message2);
                    ConfigStatus status1Copy = StatusBySeverityLevel(_sortedLevels[i], message1);
                    ConfigStatus status2Copy = StatusBySeverityLevel(_sortedLevels[j], message2);

                    ConfigStatus merged = status1.Merge(status2);

                    AssertStatusesEqual(status1, status1Copy);
                    AssertStatusesEqual(status2, status2Copy);
                    int maxLevel = Math.Max(i, j);
                    Assert.That(merged.IsOk, Is.EqualTo(IsOk(_sortedLevels[maxLevel])));
                    Assert.That(merged.IsWarningLevel,
                                Is.EqualTo(IsWarning(_sortedLevels[maxLevel])));
                    Assert.That(merged.IsErrorLevel, Is.EqualTo(IsError(_sortedLevels[maxLevel])));
                    string[] errorMessages = GetMessagesForLevel(ConfigStatus.ErrorLevel.Error,
                                                                 new[] { _sortedLevels[i], _sortedLevels[j] },
                                                                 new[] { message1, message2 });
                    string[] warningMessages = GetMessagesForLevel(ConfigStatus.ErrorLevel.Warning,
                                                                   new[] { _sortedLevels[i], _sortedLevels[j] },
                                                                   new[] { message1, message2 });

                    Assert.That(merged.AllMessages,
                                Is.EquivalentTo(errorMessages.Concat(warningMessages)));
                    Assert.That(merged.ErrorMessages, Is.EquivalentTo(errorMessages));
                    Assert.That(merged.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Error),
                                Is.EquivalentTo(errorMessages));
                    Assert.That(merged.WarningMessages, Is.EquivalentTo(warningMessages));
                    Assert.That(merged.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Warning),
                                Is.EquivalentTo(warningMessages));
                    Assert.That(merged.MessagesByErrorLevel(ConfigStatus.ErrorLevel.Ok), Is.Null);
                    Assert.That(merged.SeverityLevel, Is.EqualTo(_sortedLevels[maxLevel]));
                }
            }
        }