protected string GetTextLine(NameModel name)
        {
            if (name == null || (string.IsNullOrEmpty(name.FirstName)
                                 && string.IsNullOrEmpty(name.LastName)))
            {
                return string.Empty;
            }

            return name.ToString();
        }
        public void GetTextLine_TakesNameModel()
        {
            //Arrange
            NameModel name = new NameModel() { FirstName = "Andrew", LastName = "Smith" };
            var target = new Mock<TextFileReaderWritterWrapper>();

            //Act
            var actual = target.Object.GetTextLine(name);

            //Verify
            target.Verify();
            Assert.AreEqual(actual, string.Format("{0}, {1}",name.LastName,name.FirstName));
        }
        public void GetTextLine_TakesEmptyName()
        {
            //Arrange
            NameModel name = new NameModel() { LastName = string.Empty, FirstName = string.Empty };
            var target = new Mock<TextFileReaderWritterWrapper>();

            //Act
            var actual = target.Object.GetTextLine(name);

            //Verify
            target.Verify();
            Assert.AreEqual(actual, string.Empty);
        }
        public void WriteSortedNamesToConsole_TakesNamesList()
        {
            //Arrange

            var name = new NameModel {FirstName = "Andrew", LastName = "KENT"};
            var names = new List<NameModel> {name};
            _target.Protected().Setup("Log", name.ToString()).Verifiable();

            //Act
            _target.Object.WriteSortedNamesToConsoleWrapper(names);

            //Assert
            _target.Verify();
        }