public void TestAddRange()
        {
            // Set up data
            bool success = false;
            var tweet1 = new Tweet()
            {
                Text = "test tweet 1",
                Timestamp = new DateTime(2014, 1, 1, 12, 0, 0),
            };
            var tweet2 = new Tweet()
            {
                Text = "test tweet 2",
                Timestamp = new DateTime(2014, 1, 1, 12, 30, 0),
            };
            List<Tweet> tweets = new List<Tweet>() { tweet1, tweet2 };

            // Execute
            using (var repository = new TweetRepository())
            {
                success = repository.AddRange(tweets);
            }

            // Validate
            Assert.IsTrue(success);
        }
        public void TestAdd()
        {
            // Set up data
            long id = -1;
            var tweet = new Tweet()
            {
                Text = "test tweet",
                Timestamp = new DateTime(2014, 1, 1, 12, 0, 0),
            };

            // Execute
            using (var repository = new TweetRepository())
            {
                id = repository.Add(tweet);
            }

            // Validate
            Assert.AreNotEqual(-1, id);
        }
        public void TestDelete()
        {
            // Set up data
            bool success = false;
            var tweet = new Tweet()
            {
                Text = "test tweet",
                Timestamp = new DateTime(2014, 1, 1, 12, 0, 0),
            };

            // Execute
            using (var repository = new TweetRepository())
            {
                tweet.Id = repository.Add(tweet);
                success = repository.Delete(tweet);
            }

            // Validate
            Assert.IsTrue(success);
        }
        private void CreateTestData()
        {
            var tweet = new Tweet()
            {
                Text = "test tweet",
                Timestamp = new DateTime(2014, 1, 1, 12, 0, 0),
            };

            var tweet2 = new Tweet()
            {
                Text = "test tweet2",
                Timestamp = new DateTime(2014, 1, 1, 12, 1, 0),
            };

            using (var repository = new TweetRepository())
            {
                repository.Add(tweet);
                repository.Add(tweet2);
            }
        }
        public void TestUpdate()
        {
            // Set up data
            bool success = false;
            string updatedText = "updated test tweet";
            var tweet = new Tweet()
            {
                Text = "test tweet",
                Timestamp = new DateTime(2014, 1, 1, 12, 0, 0),
            };

            // Execute
            using (var repository = new TweetRepository())
            {
                tweet.Id = repository.Add(tweet);
                tweet.Text = updatedText;
                success = repository.Update(tweet);
            }

            // Validate
            Assert.IsTrue(success);
            Assert.AreEqual(updatedText, tweet.Text);
        }
        public void TestSave()
        {
            // Set up data
            string updatedText = "updated test tweet";
            var tweet = new Tweet()
            {
                Text = "test tweet",
                Timestamp = new DateTime(2014, 1, 1, 12, 0, 0),
            };

            // Execute
            using (var repository = new TweetRepository())
            {
                // Add
                tweet = repository.Save(tweet);
                tweet.Text = updatedText;
                // Update
                tweet = repository.Save(tweet);
            }

            // Validate
            Assert.IsTrue(tweet.Id > 0);
            Assert.AreEqual(updatedText, tweet.Text);
        }