1
mirror of https://gitlab.com/commento/commento.git synced 2025-06-29 22:56:37 -04:00

api: Add go files

I know this is a huge commit, but I can't be bothered to check
this in part by part.
This commit is contained in:
Adhityaa
2018-05-27 20:10:42 +05:30
parent 60e7e59841
commit a090770b73
95 changed files with 4203 additions and 0 deletions

58
api/comment_new_test.go Normal file
View File

@ -0,0 +1,58 @@
package main
import (
"testing"
"time"
)
func TestCommentNewBasics(t *testing.T) {
failTestOnError(t, setupTestEnv())
if _, err := commentNew("temp-commenter-hex", "example.com", "/path.html", "root", "**foo**", "approved", time.Now().UTC()); err != nil {
t.Errorf("unexpected error creating new comment: %v", err)
return
}
}
func TestCommentNewEmpty(t *testing.T) {
failTestOnError(t, setupTestEnv())
if _, err := commentNew("temp-commenter-hex", "example.com", "", "root", "**foo**", "approved", time.Now().UTC()); err != nil {
t.Errorf("empty path not allowed: %v", err)
return
}
if _, err := commentNew("temp-commenter-hex", "", "", "root", "**foo**", "approved", time.Now().UTC()); err == nil {
t.Errorf("expected error not found creatingn new comment with empty domain")
return
}
if _, err := commentNew("", "", "", "", "", "", time.Now().UTC()); err == nil {
t.Errorf("expected error not found creatingn new comment with empty everything")
return
}
}
func TestCommentNewUpvoted(t *testing.T) {
failTestOnError(t, setupTestEnv())
commentHex, _ := commentNew("temp-commenter-hex", "example.com", "/path.html", "root", "**foo**", "approved", time.Now().UTC())
statement := `
SELECT score
FROM comments
WHERE commentHex = $1;
`
row := db.QueryRow(statement, commentHex)
var score int
if err := row.Scan(&score); err != nil {
t.Errorf("error scanning score from comments table: %v", err)
return
}
if score != 1 {
t.Errorf("expected comment to be auto-upvoted")
return
}
}