public void SetUp()
        {
            _formatter = new GeneralCodeFormatter();

            return;
        }
        public void SelectedItemChanged()
        {
            GeneralCodeFormatter formatter = new GeneralCodeFormatter();
            ErrorItem item;

            // test to pass:
            //
            // handle selection changed event when there
            // is a non null selected item

            using (TestResource resource = new TestResource("Basic.cs"))
            {
                item = new ErrorItem(resource.Path, 2);
                Assert.That(item.ReadFile(), Is.Not.Null);

                _mockStack.SelectedItem.Returns(item);
                _mockCode.Formatter.Returns(formatter);
                
                _code.RaiseSelectedItemChanged();

                Assert.That(_mockCode.Text, Is.EqualTo(item.ReadFile()));
                Assert.That(_mockCode.Language, Is.EqualTo("C#"));
                // CurrentLine is a based 0 index
                Assert.That(_mockCode.CurrentLine, Is.EqualTo(1));
            }

            // test to fail:
            //
            // should handle selection changed event even
            // if selection comes to null

            _mockStack.SelectedItem.Returns((ErrorItem) null); 

            _code.RaiseSelectedItemChanged();

            Assert.That(_mockCode.Text, Is.EqualTo(null));

            return;
        }
        public void SelectedItemChanged()
        {
            GeneralCodeFormatter formatter = new GeneralCodeFormatter();
            ErrorItem item;

            // test to pass:
            //
            // handle selection changed event when there
            // is a non null selected item

            using (new TestResource("Basic.cs"))
            {
                item = new ErrorItem("Basic.cs", 2);
                Assert.That(item.ReadFile(), Is.Not.Null);

                _mockStack.ExpectAndReturn("get_SelectedItem", item, null);
                _mockCode.ExpectAndReturn("get_Formatter", formatter, null);
                _mockCode.Expect("set_Text", new object[] { item.ReadFile() });
                _mockCode.Expect("set_Language", new object[] { "C#" });

                // CurrentLine is a based 0 index
                _mockCode.Expect("set_CurrentLine", new object[] { 1 });
                
                _code.RaiseSelectedItemChanged();
                _mockStack.Verify();
                _mockCode.Verify();
            }

            // test to fail:
            //
            // should handle selection changed event even
            // if selection comes to null

            _mockStack.ExpectAndReturn("get_SelectedItem", null, null);
            _mockCode.Expect("set_Text", new object[] { null });

            _code.RaiseSelectedItemChanged();
            _mockStack.Verify();
            _mockCode.Verify();

            return;
        }