Exemple #1
0
        public void ID指定で特定のブログ記事を取得する()
        {
            try
            {
                this.TestContext.WriteLine("データベースにテストデータをインサートします");
                using (DataResource resource = new DataResource(TestConfig.GetDbConnectionString()))
                {
                    string filePath = Path.Combine(TestConfig.SqlDir, "GetPublicArticles", "insert1.sql");

                    string sql = string.Empty;
                    using (StreamReader reader = new StreamReader(filePath))
                    {
                        sql = reader.ReadToEnd();
                    }

                    if (!string.IsNullOrEmpty(sql))
                    {
                        using (SqlCommand cmd = new SqlCommand(sql, resource.SqlConnection))
                        {
                            cmd.ExecuteNonQuery();
                        }
                    }
                }
            }
            catch (Exception e)
            {
                this.TestContext.WriteLine(e.ToString());
                Assert.Fail(e.ToString());
            }

            int id = 1;
            Article article = null;
            try
            {
                using (HNKArticleResource resource = new HNKArticleResource(TestConfig.GetDbConnectionString()))
                {
                    article = resource.GetArticle(id);
                }
            }
            catch (Exception e)
            {
                Assert.Fail(e.ToString());
            }

            Assert.IsNotNull(article, "データベースから記事を取得できていない");
            Assert.IsTrue(article.PublicStatus == PublicStatus.Public, "未公開記事を取得している");
        }
Exemple #2
0
        public void 日付範囲2014年8月1日から2014年8月末までのブログ記事を取得する()
        {
            try
            {
                this.TestContext.WriteLine("データベースにテストデータをインサートします");
                using (DataResource resource = new DataResource(TestConfig.GetDbConnectionString()))
                {
                    string filePath = Path.Combine(TestConfig.SqlDir, "GetPublicArticles", "insert3.sql");

                    string sql = string.Empty;
                    using (StreamReader reader = new StreamReader(filePath))
                    {
                        sql = reader.ReadToEnd();
                    }

                    if (!string.IsNullOrEmpty(sql))
                    {
                        using (SqlCommand cmd = new SqlCommand(sql, resource.SqlConnection))
                        {
                            cmd.ExecuteNonQuery();
                        }
                    }
                }
            }
            catch (Exception e)
            {
                this.TestContext.WriteLine(e.ToString());
                Assert.Fail(e.ToString());
            }

            List<Article> articles = null;
            try
            {
                using (HNKArticleResource resource = new HNKArticleResource(TestConfig.GetDbConnectionString()))
                {
                    //articles = resource.GetPublicArticlesByDate(2014, 8);
                }
            }
            catch (Exception e)
            {
                Assert.Fail(e.ToString());
            }

            Assert.IsNotNull(articles, "データベースから記事を取得できていない");
            Assert.IsTrue(IsEqulPublicArticles(articles), "未公開記事を取得している");

            Article article1 = articles[0];
            Assert.IsTrue(article1.OpenDate == new DateTime(2014, 8, 31, 0, 0, 0), "公開日が昇順になっている");
            Article article8 = articles[8];
            Assert.IsTrue(article8.OpenDate == new DateTime(2014, 8, 1, 0, 0, 0), "公開日が昇順になっている");
        }