Пример #1
0
        public void Save(User user)
        {
            if (user.UserName == "")
            {
                throw new InvalidUser();
            }

            _logger.Log(user);
        }
Пример #2
0
        public void throws_exception_when_adding_user_without_username()
        {
            var logger = new Mock<IUserLogger>();
            var handler = new UserHandler(logger.Object);

            var invalidUser = new User
            {
                UserName = "",
                Email = "*****@*****.**"
            };

            handler.Save(invalidUser);
        }
Пример #3
0
        public void xml_file_will_be_created_if_none_exists()
        {
            var logger = new UserXMLLogger();

            var user = new User
            {
                UserName = "******",
                Email = "*****@*****.**"
            };

            logger.Log(user);

            Assert.That(File.Exists("user_log.xml"));
        }
Пример #4
0
        public void logs_valid_user()
        {
            var logger = new Mock<IUserLogger>();

            var handler = new UserHandler(logger.Object);

            var user = new User()
            {
                UserName = "******",
                Email = "*****@*****.**"
            };

            handler.Save(user);
            logger.Verify(method => method.Log(It.IsAny<User>()), Times.Once, "We did not log once");
        }
Пример #5
0
        public void logging_a_user_will_save_it_to_file()
        {
            var logger = new UserXMLLogger();

            var user = new User
            {
                UserName = "******",
                Email = "*****@*****.**"
            };

            logger.Log(user);

            Assert.That(File.Exists("user_log.xml"));
            var doc = new XmlDocument();
            doc.Load("user_log.xml");
            XmlNode node = doc.DocumentElement.FirstChild;
            Assert.That(node.Attributes["name"].Value, Is.EqualTo("Jim"));
            Assert.That(node.Attributes["email"].Value, Is.EqualTo("*****@*****.**"));
        }
Пример #6
0
        public void Log(User user)
        {
            XmlDocument doc = new XmlDocument();
            if(!File.Exists("user_log.xml"))
            {
                doc.AppendChild(doc.CreateElement("users"));
                doc.Save("user_log.xml");
            }
            doc.Load("user_log.xml");
            var userNode = doc.CreateElement("user");
            var nameAttribute = doc.CreateAttribute("name");
            nameAttribute.Value = user.UserName;
            userNode.Attributes.Append(nameAttribute);

            var emailAttribute = doc.CreateAttribute("email");
            emailAttribute.Value = user.Email;
            userNode.Attributes.Append(emailAttribute);

            doc.DocumentElement.AppendChild(userNode);
            doc.Save(@"user_log.xml");
        }