예제 #1
0
        public void 刪除文章()
        {
            ForumDB db   = new ForumDB();
            Account user = db.getUser("teamD", "test");

            Assert.That(false, Is.EqualTo(db.deleteArticle(0)));

            db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "pictures1");
            db.insertArticle("teamD", "測試新文章標題2", "測試摘要2", "測試文章內容2", "pictures1");
            db.insertArticle("teamD", "測試新文章標題3", "測試摘要3", "測試文章內容3", "pictures1");

            Assert.That(true, Is.EqualTo(db.deleteArticle(0)));
            Assert.That(2, Is.EqualTo(db.articles.Count));
            Assert.That("teamD", Is.EqualTo(db.articles[0].account));
            Assert.That("測試新文章標題2", Is.EqualTo(db.articles[0].title));
            Assert.That("測試摘要2", Is.EqualTo(db.articles[0].summary));
            Assert.That("測試文章內容2", Is.EqualTo(db.articles[0].content));
            Assert.That("pictures1", Is.EqualTo(db.articles[0].patterns));
            Assert.That("teamD", Is.EqualTo(db.articles[1].account));
            Assert.That("測試新文章標題3", Is.EqualTo(db.articles[1].title));
            Assert.That("測試摘要3", Is.EqualTo(db.articles[1].summary));
            Assert.That("測試文章內容3", Is.EqualTo(db.articles[1].content));
            Assert.That("pictures1", Is.EqualTo(db.articles[1].patterns));
            Assert.That(true, Is.EqualTo(db.deleteArticle(0)));
            Assert.That(1, Is.EqualTo(db.articles.Count));
            Assert.That("teamD", Is.EqualTo(db.articles[0].account));
            Assert.That("測試新文章標題3", Is.EqualTo(db.articles[0].title));
            Assert.That("測試摘要3", Is.EqualTo(db.articles[0].summary));
            Assert.That("測試文章內容3", Is.EqualTo(db.articles[0].content));
            Assert.That("pictures1", Is.EqualTo(db.articles[0].patterns));
            Assert.That(true, Is.EqualTo(db.deleteArticle(0)));
            Assert.That(0, Is.EqualTo(db.articles.Count));
        }
        public void 編輯文章內容_Action()
        {
            ForumDB db = new ForumDB();

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "文章標題", "測試摘要", "文章內容", "picture1")));
            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "文章標題22", "測試摘要22", "文章內容22", "picture1")));
            Action action = new Action();

            bool result = action.modifyArticleContent(db, 0, db.accounts[0], "更新文章內容", "替換文章內圖片");

            Assert.That(true, Is.EqualTo(result));
            Assert.That("文章標題", Is.EqualTo(db.articles[0].title));
            Assert.That("測試摘要", Is.EqualTo(db.articles[0].summary));
            Assert.That("更新文章內容", Is.EqualTo(db.articles[0].content));
            Assert.That("替換文章內圖片", Is.EqualTo(db.articles[0].patterns));

            result = action.modifyArticleContent(db, 0, db.accounts[0], "更新第二次文章內容", "第二次替換文章內圖片");
            Assert.That(true, Is.EqualTo(result));
            Assert.That("文章標題", Is.EqualTo(db.articles[0].title));
            Assert.That("測試摘要", Is.EqualTo(db.articles[0].summary));
            Assert.That("更新第二次文章內容", Is.EqualTo(db.articles[0].content));
            Assert.That("第二次替換文章內圖片", Is.EqualTo(db.articles[0].patterns));

            result = action.modifyArticleContent(db, 1, db.accounts[0], "更新文章內容22", "替換第二篇文章內圖片");
            Assert.That(true, Is.EqualTo(result));
            Assert.That("文章標題22", Is.EqualTo(db.articles[1].title));
            Assert.That("測試摘要22", Is.EqualTo(db.articles[1].summary));
            Assert.That("更新文章內容22", Is.EqualTo(db.articles[1].content));
            Assert.That("替換第二篇文章內圖片", Is.EqualTo(db.articles[1].patterns));
        }
        public void 搜尋文章All_Action()
        {
            ForumDB db = new ForumDB();

            db.insertArticle("teamD", "文章標題aa", "測試摘要1a", "文章內容aa", "pictures");
            db.insertArticle("teamD", "文章標題aa2", "測試摘要1b", "文章內容aa3", "pictures");
            db.insertArticle("teamD", "文章標題bb", "測試摘要1c", "文章內容bb", "pictures");
            db.insertArticle("teamD", "文章標題bb22", "測試摘要2a", "文章內容bb33", "pictures");
            db.insertArticle("teamD", "文章標題ccc", "測試摘要2b", "文章內容ccc", "pictures");

            Action         action = new Action();
            List <Article> tmp    = action.searchArticleAll(db, "1");

            Assert.That("測試摘要1a", Is.EqualTo(tmp[0].summary));
            Assert.That("測試摘要1b", Is.EqualTo(tmp[1].summary));
            Assert.That("測試摘要1c", Is.EqualTo(tmp[2].summary));

            tmp = action.searchArticleAll(db, "2");
            Assert.That("文章標題aa2", Is.EqualTo(tmp[0].title));
            Assert.That("測試摘要2a", Is.EqualTo(tmp[1].summary));
            Assert.That("測試摘要2b", Is.EqualTo(tmp[2].summary));


            tmp = action.searchArticleAll(db, "a");
            Assert.That("測試摘要1a", Is.EqualTo(tmp[0].summary));
            Assert.That("文章標題aa2", Is.EqualTo(tmp[1].title));
            Assert.That("測試摘要2a", Is.EqualTo(tmp[2].summary));
        }
예제 #4
0
        public void 插入新文章失敗()
        {
            ForumDB db = new ForumDB();

            Assert.That(false, Is.EqualTo(db.insertArticle("123", "測試新文章標題", "測試摘要", "測試文章內容", "picture1")));
            Assert.That(false, Is.EqualTo(db.insertArticle("test222", "測試新文章標題", "測試摘要", "測試文章內容", "picture1")));
            Assert.That(false, Is.EqualTo(db.insertArticle("teamB", "測試新文章標題", "測試摘要", "測試文章內容", "picture1")));
        }
        public void 刪除評論_Action()
        {
            ForumDB db     = new ForumDB();
            Action  action = new Action();

            Assert.That(false, Is.EqualTo(action.deleteComment(db, 0, db.accounts[0])));
            db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "");
            db.insertArticle("teamA", "測試新文章標題1", "測試摘要1", "測試文章內容1", "");
            db.insertComment("測試評論內容", "teamD", 0);
            Assert.That(true, Is.EqualTo(action.deleteComment(db, 0, db.accounts[0])));
            Assert.That(false, Is.EqualTo(action.deleteComment(db, 1, db.accounts[0])));
        }
        public string addArticle(ForumDB db, Account user, string title, string summary, string content)
        {
            string account = user.name;

            if (!db.insertArticle(account, title, summary, content, pattern))
            {
                return("Error");
            }
            else
            {
                db.insertArticle(account, title, summary, content, pattern);
                return(content);
            }
        }
        public void 取得特定類別文章()
        {
            ForumDB db     = new ForumDB();
            Action  action = new Action();

            db.insertArticle("teamD", "g1", "abstract", "content", "pic", "game");
            db.insertArticle("teamD", "g2", "abstract", "content", "pic", "game");
            db.insertArticle("teamD", "p3", "abstract", "content", "pic", "plant");
            List <Article> articles = action.getTypeArticles(db, "game");

            Assert.That(2, Is.EqualTo(articles.Count));
            Assert.That(true, Is.EqualTo(articles[0].title.Equals("g1")));
            Assert.That(true, Is.EqualTo(articles[1].title.Equals("g2")));
        }
예제 #8
0
        public void 讀取文章列表()
        {
            ForumDB db = new ForumDB();

            db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "測試文章內圖片");
            Assert.That("測試新文章標題", Is.EqualTo(db.getTitle(0)));
            Assert.That("None", Is.EqualTo(db.getTitle(1)));
        }
예제 #9
0
        public void 讀取文章圖片()
        {
            ForumDB db = new ForumDB();

            db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "測試文章內圖片");
            Assert.That("測試文章內圖片", Is.EqualTo(db.articles[0].patterns));
            Assert.That(0, Is.EqualTo(db.articles[0].articleID));
        }
        public void 取得積分()
        {
            ForumDB db       = new ForumDB();
            Action  GetScore = new Action();

            db.insertArticle("teamD", "Test", "Test", "Test", "Test");
            GetScore.addComment(db, db.accounts[0], db.articles[0], "Comment_Test");
            Assert.That(1, Is.EqualTo(db.accounts[0].score));
        }
        public void 新增文章_Action()
        {
            ForumDB db     = new ForumDB();
            Action  action = new Action();

            db.insertArticle("teamD", "測試標題", "測試摘要22", "測試內容", "測試圖片");
            Assert.That("測試標題", Is.EqualTo(db.getTitle(0)));
            Assert.That("測試內容", Is.EqualTo(db.getArticle(0)));
            Assert.That("測試內容", Is.EqualTo(action.addArticle(db, db.accounts[0], "測試標題", "測試摘要", "測試內容")));
        }
예제 #12
0
        public void 刪除評論()
        {
            ForumDB db   = new ForumDB();
            Account user = db.getUser("teamD", "test");

            Assert.That(false, Is.EqualTo(db.deleteComment("teamD", 0)));

            db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "");
            db.insertArticle("teamD", "測試新文章標題2", "測試摘要2", "測試文章內容2", "");
            db.insertArticle("teamA", "測試新文章標題3", "測試摘要3", "測試文章內容3", "");
            db.insertComment("測試評論內容", "teamD", 0);
            db.insertComment("測試評論內容1", "teamD", 1);
            //db.insertComment("測試評論內容2", "teamD", 2);

            Assert.That(true, Is.EqualTo(db.deleteComment("teamD", 0)));
            Assert.That(true, Is.EqualTo(db.deleteComment("teamD", 1)));

            Assert.That(false, Is.EqualTo(db.deleteComment("teamA", 2)));
        }
        public void 取得文章標題_Action()
        {
            ForumDB db    = new ForumDB();
            Action  Title = new Action();

            db.insertArticle("teamD", "For_Test", "測試摘要", "Hello world", "pictures");
            string result = Title.getArticleHeaderList(db, 0);

            Assert.That("For_Test", Is.EqualTo(result));
        }
        public void 取得文章標題_更新日期_Action()
        {
            ForumDB db    = new ForumDB();
            Action  Title = new Action();

            db.insertArticle("teamD", "For_Test", "測試摘要", "Hello world", "pictures");
            string result = Title.getArticleHeaderList(db, 1);

            Assert.That(DateTime.Now.ToLongDateString().ToString(), Is.EqualTo(db.articles[0].time));
        }
        public void 讀取文章測試()
        {
            ForumDB db = new ForumDB();

            db.insertArticle("teamD", "文章標題aa", "測試摘要", "文章內容aa", "picture1");
            db.insertArticle("teamD", "文章標題aa2", "測試摘要", "文章內容aa2", "picture1");
            Action action = new Action();

            action.getArticle(db, 0);//第0篇文章讀取五次
            action.getArticle(db, 0);
            action.getArticle(db, 0);
            action.getArticle(db, 0);
            action.getArticle(db, 0);
            action.getArticle(db, 1);//第一篇文章讀取三次
            action.getArticle(db, 1);
            action.getArticle(db, 1);
            Assert.That(5, Is.EqualTo(action.getReads(db, 0)));
            Assert.That(3, Is.EqualTo(action.getReads(db, 1)));
            Assert.That(0, Is.EqualTo(action.getReads(db, 2)));//尚無第二篇文章,瀏覽次數0
        }
예제 #16
0
        public void 插入顯示文章()
        {
            ForumDB db = new ForumDB();

            db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "測試文章內圖片");//articleID 0

            db.insertComment("這篇文章很讚", "cyZeng", 0);
            db.insertComment("這篇文章很無聊", "Kevin", 0);
            List <Comment> match = db.getComment(0);

            Assert.That("這篇文章很讚", Is.EqualTo(match[0].getContent()));
            Assert.That("這篇文章很無聊", Is.EqualTo(match[1].getContent()));


            db.insertArticle("teamD", "測試新文章標題2", "測試摘要", "測試文章內容2", "測試文章內圖片");//articleID 1
            db.insertComment("Cool", "Lee", 1);
            List <Comment> match2 = db.getComment(1);

            Assert.That("Cool", Is.EqualTo(match2[0].getContent()));
        }
예제 #17
0
        public void 讀取文章內容()
        {
            ForumDB db = new ForumDB();

            db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "測試文章內圖片");
            //Assert.That("測試文章內容", Is.EqualTo(db.getArticle(0)));
            Assert.That("teamD", Is.EqualTo(db.articles[0].account));
            Assert.That("測試新文章標題", Is.EqualTo(db.articles[0].title));
            Assert.That("測試文章內容", Is.EqualTo(db.articles[0].content));
            Assert.That("測試文章內圖片", Is.EqualTo(db.articles[0].patterns));
            Assert.That(0, Is.EqualTo(db.articles[0].articleID));
        }
        public void 刪除文章_Action()
        {
            ForumDB db = new ForumDB();

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "bbb", "測試摘要", "ccc", "picture1")));
            Action delete = new Action();

            bool result = delete.deleteArticle(db, 0, db.accounts[0]);

            Assert.That(true, Is.EqualTo(result));
            // Assert.That(true, Is.EqualTo(result));
        }
        public void 向文章中插入圖片失败_Action()
        {
            ForumDB db = new ForumDB();

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "文章標題", "測試摘要", "文章內容", "")));
            Action action = new Action();

            bool result = action.insert_Patterns_into_Article(db, 0, null);

            Assert.That(false, Is.EqualTo(result));
            Assert.That("", Is.EqualTo(db.articles[0].patterns));
        }
        public void 非作者刪除文章_Action()
        {
            ForumDB db       = new ForumDB();
            Action  register = new Action();

            register.register(db, "hacker", "test123456", "test123456");
            Assert.That(true, Is.EqualTo(db.insertArticle("hacker", "bbb", "測試摘要", "ccc", "picture1")));
            Action delete = new Action();

            bool result = delete.deleteArticle(db, 0, db.accounts[0]);

            Assert.That(false, Is.EqualTo(result));
        }
        public void 新增评论_Action()
        {
            ForumDB db     = new ForumDB();
            Action  action = new Action();
            Article art    = new Article();

            db.insertArticle("teamD", "測試標題", "測試摘要", "測試內容", "picture1");
            db.insertComment("測試內容", "teamD", 0);
            List <Comment> match = db.getComment(0);

            Assert.That("測試內容", Is.EqualTo(match[0].getContent()));
            Assert.That("測試內容", Is.EqualTo(action.addComment(db, db.accounts[0], art, "測試內容")));
        }
        public void 非作者編輯文章內容_Action()
        {
            ForumDB db = new ForumDB();

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "文章標題", "測試摘要", "文章內容", "picture1")));
            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "文章標題22", "測試摘要22", "文章內容22", "picture1")));
            Action action = new Action();

            Account not_author = new Account(1);

            not_author.name     = "not_author";
            not_author.password = "******";

            bool result = action.modifyArticleContent(db, 0, not_author, "更新文章內容", "替換文章內圖片");

            Assert.That(false, Is.EqualTo(result));

            result = action.modifyArticleContent(db, 0, not_author, "更新第二次文章內容", "替換文章內圖片");
            Assert.That(false, Is.EqualTo(result));

            result = action.modifyArticleContent(db, 1, not_author, "更新文章內容22", "替換文章內圖片");
            Assert.That(false, Is.EqualTo(result));
        }
        public void 搜尋文章標題_Action()
        {
            ForumDB db = new ForumDB();

            db.insertArticle("teamD", "文章標題aa", "測試摘要", "文章內容", "picture1");
            db.insertArticle("teamD", "文章標題aa2", "測試摘要", "文章內容", "picture1");
            db.insertArticle("teamD", "文章標題bb", "測試摘要", "文章內容", "picture1");
            db.insertArticle("teamD", "文章標題bb22", "測試摘要", "文章內容", "picture1");
            db.insertArticle("teamD", "文章標題ccc", "測試摘要", "文章內容", "picture1");
            Action         action = new Action();
            List <Article> tmp    = action.searchArticleTitle(db, "aa");

            Assert.That("文章標題aa", Is.EqualTo(tmp[0].title));
            Assert.That("文章標題aa2", Is.EqualTo(tmp[1].title));

            tmp = action.searchArticleTitle(db, "c");
            Assert.That("文章標題ccc", Is.EqualTo(tmp[0].title));


            tmp = action.searchArticleTitle(db, "2");
            Assert.That("文章標題aa2", Is.EqualTo(tmp[0].title));
            Assert.That("文章標題bb22", Is.EqualTo(tmp[1].title));
        }
예제 #24
0
        public void 新增文章的類別屬性()
        {
            ForumDB db = new ForumDB();

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "diablo3", "abstract1", "content1", "picture1", "game")));
            Assert.That("teamD", Is.EqualTo(db.articles[0].account));
            Assert.That("diablo3", Is.EqualTo(db.articles[0].title));
            Assert.That("abstract1", Is.EqualTo(db.articles[0].summary));
            Assert.That("content1", Is.EqualTo(db.articles[0].content));
            Assert.That("picture1", Is.EqualTo(db.articles[0].patterns));
            Assert.That("game", Is.EqualTo(db.articles[0].type));
            Assert.That(0, Is.EqualTo(db.articles[0].articleID));
            Assert.That(DateTime.Now.ToLongDateString().ToString(), Is.EqualTo(db.articles[0].time));

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "flower", "abstract2", "content2", "picture2", "plant")));
            Assert.That("teamD", Is.EqualTo(db.articles[1].account));
            Assert.That("flower", Is.EqualTo(db.articles[1].title));
            Assert.That("abstract2", Is.EqualTo(db.articles[1].summary));
            Assert.That("content2", Is.EqualTo(db.articles[1].content));
            Assert.That("picture2", Is.EqualTo(db.articles[1].patterns));
            Assert.That("plant", Is.EqualTo(db.articles[1].type));
            Assert.That(1, Is.EqualTo(db.articles[1].articleID));
            Assert.That(DateTime.Now.ToLongDateString().ToString(), Is.EqualTo(db.articles[1].time));
        }
예제 #25
0
        public void 插入新文章()
        {
            ForumDB db = new ForumDB();

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "測試新文章標題", "測試摘要", "測試文章內容", "picture1")));
            Assert.That("teamD", Is.EqualTo(db.articles[0].account));
            Assert.That("測試新文章標題", Is.EqualTo(db.articles[0].title));
            Assert.That("測試摘要", Is.EqualTo(db.articles[0].summary));
            Assert.That("測試文章內容", Is.EqualTo(db.articles[0].content));
            Assert.That("picture1", Is.EqualTo(db.articles[0].patterns));
            Assert.That(0, Is.EqualTo(db.articles[0].articleID));
            //DateTime thisDay = DateTime.Today;
            Assert.That(DateTime.Now.ToLongDateString().ToString(), Is.EqualTo(db.articles[0].time));

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "測試新文章標題2", "測試摘要2", "測試文章內容2", "picture1")));
            Assert.That("teamD", Is.EqualTo(db.articles[1].account));
            Assert.That("測試新文章標題2", Is.EqualTo(db.articles[1].title));
            Assert.That("測試摘要2", Is.EqualTo(db.articles[1].summary));
            Assert.That("測試文章內容2", Is.EqualTo(db.articles[1].content));
            Assert.That("picture1", Is.EqualTo(db.articles[1].patterns));
            Assert.That(1, Is.EqualTo(db.articles[1].articleID));
            //thisDay = DateTime.Today;
            Assert.That(DateTime.Now.ToLongDateString().ToString(), Is.EqualTo(db.articles[1].time));
        }
        public void 向文章中插入圖片_Action()
        {
            ForumDB db = new ForumDB();

            Assert.That(true, Is.EqualTo(db.insertArticle("teamD", "文章標題", "測試摘要", "文章內容", "")));
            Action action = new Action();

            bool result = action.insert_Patterns_into_Article(db, 0, "向文章內插入圖片");

            Assert.That(true, Is.EqualTo(result));
            Assert.That("文章標題", Is.EqualTo(db.articles[0].title));
            Assert.That("測試摘要", Is.EqualTo(db.articles[0].summary));
            Assert.That("文章內容", Is.EqualTo(db.articles[0].content));
            Assert.That("向文章內插入圖片", Is.EqualTo(db.articles[0].patterns));
        }