package api_test import ( "database/sql" "net/http" "net/http/httptest" "os" "testing" "git.hatecomputers.club/hatecomputers/hatecomputers.club/api" "git.hatecomputers.club/hatecomputers/hatecomputers.club/args" "git.hatecomputers.club/hatecomputers/hatecomputers.club/database" "git.hatecomputers.club/hatecomputers/hatecomputers.club/utils" ) func setup() (*sql.DB, *api.RequestContext, func()) { randomDb := utils.RandomId() testDb := database.MakeConn(&randomDb) database.Migrate(testDb) context := &api.RequestContext{ DBConn: testDb, Args: &args.Arguments{}, TemplateData: &(map[string]interface{}{}), } return testDb, context, func() { testDb.Close() os.Remove(randomDb) } } func TestThatOwnerCanPutRecordInDomain(t *testing.T) { db, context, cleanup := setup() defer cleanup() testUser := &database.User{ ID: "test", Username: "test", } records, err := database.GetUserDNSRecords(db, context.User.ID) if err != nil { t.Fatal(err) } if len(records) > 0 { t.Errorf("expected no records, got records") } ts := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { api.PutDNSRecordContinuation(context, r, w)(api.IdContinuation, api.IdContinuation) })) defer ts.Close() }