Beispiel #1
0
        public void Compare(double height1, double width1, double height2, double width2, int expected)
        {
            // Arrange
            EnvelopeComparer comparer = new EnvelopeComparer(2);

            comparer.MainEnvelope = new Envelope(height1, width1);
            comparer.Insert(0, new Envelope(height2, width2));

            // Act
            int real = comparer.Compare(comparer[0]);

            // Assert
            Assert.AreEqual(real, expected);
        }
        protected virtual void AskEnvelops()
        {
            bool             isMainEnvelope   = true;
            EnvelopeComparer envelopeComparer = new EnvelopeComparer(_inboxParams.QuantityEnvelopes);

            for (int i = 0; i < _inboxParams.QuantityEnvelopes; i++)
            {
                _view.AskInputEnvelope(String.Format(MessagesResources.AskInputEnvelope, i + 1));
                _currentEnvelope = new Envelope();
                bool isFailed;

                do
                {
                    isFailed = false;
                    try
                    {
                        _view.AskInputHeight(MessagesResources.AskInputHeight);
                    }
                    catch (Exception ex)
                    {
                        _view.PrintErrorText(ex.Message);
                        isFailed = true;
                    }
                } while (isFailed);

                do
                {
                    isFailed = false;
                    try
                    {
                        _view.AskInputWidth(MessagesResources.AskInputWidth);
                    }
                    catch (Exception ex)
                    {
                        _view.PrintErrorText(ex.Message);
                        isFailed = true;
                    }
                } while (isFailed);

                if (isMainEnvelope)
                {
                    envelopeComparer.MainEnvelope = _currentEnvelope;
                    isMainEnvelope = false;
                }
                else
                {
                    envelopeComparer.Insert(i - 1, _currentEnvelope);
                }
            }

            foreach (Envelope envelope in envelopeComparer)
            {
                if (envelopeComparer.Compare(envelope) > 0)
                {
                    _view.PrintResultText(MessagesResources.ResultPositive);
                }
                else
                {
                    _view.PrintResultText(MessagesResources.ResultNegative);
                }
            }
        }