made an api test for route setupcheck
This commit is contained in:
@@ -20,6 +20,7 @@ func SaveCharacterToDB(character *Char) error {
|
||||
}
|
||||
func MigrateStructure() error {
|
||||
err := database.DB.AutoMigrate(
|
||||
&Char{},
|
||||
&Eigenschaft{},
|
||||
&Lp{},
|
||||
&Ap{},
|
||||
@@ -27,7 +28,6 @@ func MigrateStructure() error {
|
||||
&Merkmale{},
|
||||
&Erfahrungsschatz{},
|
||||
&Bennies{},
|
||||
&Char{},
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
+21
-18
@@ -3,7 +3,7 @@ package main
|
||||
import (
|
||||
"bamort/character"
|
||||
"bamort/database"
|
||||
"bamort/equipment"
|
||||
"bamort/maintenance"
|
||||
"bamort/router"
|
||||
|
||||
"github.com/gin-gonic/gin"
|
||||
@@ -19,25 +19,28 @@ func main() {
|
||||
// Routes
|
||||
protected := router.BaseRouterGrp(r)
|
||||
// Character routes
|
||||
rCharGrp := router.CharRouterGrp(protected)
|
||||
//rCharGrp := router.CharRouterGrp(protected)
|
||||
router.CharRouterGrp(protected)
|
||||
|
||||
rCharGrp.GET("/{id}/equipment", equipment.ListAusruestung) // List equipment for a character
|
||||
//rCharGrp.POST("/{id}/equipment", equipment.AddAusruestung) // Add equipment to a character
|
||||
rCharGrp.PUT("/{id}/equipment/{id}", equipment.UpdateAusruestung) // List equipment for a character
|
||||
rCharGrp.DELETE("/{id}/equipment/{id}", equipment.DeleteAusruestung) // List equipment for a character
|
||||
//rCharGrp.GET("/{id}/spells", spells.ListAusruestung) // List equipment for a character
|
||||
//rCharGrp.POST("/{id}/spells", equipment.AddAusruestung) // Add equipment to a character
|
||||
rCharGrp.PUT("/{id}/spells/{id}", equipment.UpdateAusruestung) // List equipment for a character
|
||||
rCharGrp.DELETE("/{id}/spells/{id}", equipment.DeleteAusruestung) // List equipment for a character
|
||||
rCharGrp.POST("/{id}/spells", character.DeleteCharacter) // Add a spell to a character
|
||||
rCharGrp.GET("/{id}/spells", character.DeleteCharacter) // List spells for a character
|
||||
// Equipment routes
|
||||
protected.POST("/ausruestung", equipment.CreateAusruestung)
|
||||
//protected.GET("/ausruestung/:character_id", equipment.GetAusruestung)
|
||||
protected.PUT("/ausruestung/:ausruestung_id", equipment.UpdateAusruestung)
|
||||
protected.DELETE("/ausruestung/:ausruestung_id", equipment.DeleteAusruestung)
|
||||
/*
|
||||
rCharGrp.GET("/{id}/equipment", equipment.ListAusruestung) // List equipment for a character
|
||||
//rCharGrp.POST("/{id}/equipment", equipment.AddAusruestung) // Add equipment to a character
|
||||
rCharGrp.PUT("/{id}/equipment/{id}", equipment.UpdateAusruestung) // List equipment for a character
|
||||
rCharGrp.DELETE("/{id}/equipment/{id}", equipment.DeleteAusruestung) // List equipment for a character
|
||||
//rCharGrp.GET("/{id}/spells", spells.ListAusruestung) // List equipment for a character
|
||||
//rCharGrp.POST("/{id}/spells", equipment.AddAusruestung) // Add equipment to a character
|
||||
rCharGrp.PUT("/{id}/spells/{id}", equipment.UpdateAusruestung) // List equipment for a character
|
||||
rCharGrp.DELETE("/{id}/spells/{id}", equipment.DeleteAusruestung) // List equipment for a character
|
||||
rCharGrp.POST("/{id}/spells", character.DeleteCharacter) // Add a spell to a character
|
||||
rCharGrp.GET("/{id}/spells", character.DeleteCharacter) // List spells for a character
|
||||
// Equipment routes
|
||||
protected.POST("/ausruestung", equipment.CreateAusruestung)
|
||||
//protected.GET("/ausruestung/:character_id", equipment.GetAusruestung)
|
||||
protected.PUT("/ausruestung/:ausruestung_id", equipment.UpdateAusruestung)
|
||||
protected.DELETE("/ausruestung/:ausruestung_id", equipment.DeleteAusruestung)
|
||||
*/
|
||||
protected.POST("/upload", character.UploadFiles)
|
||||
protected.GET("/setupcheck", database.SetupCheck)
|
||||
protected.GET("/setupcheck", maintenance.SetupCheck)
|
||||
|
||||
r.Run(":8180") // Start server on port 8080
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package main
|
||||
package maintenance
|
||||
|
||||
import (
|
||||
"bamort/character"
|
||||
@@ -16,7 +16,7 @@ import (
|
||||
func SetupCheck(c *gin.Context) {
|
||||
db := database.ConnectDatabase()
|
||||
|
||||
if db != nil {
|
||||
if db == nil {
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "Failed to connect to DataBase"})
|
||||
return
|
||||
}
|
||||
@@ -29,6 +29,37 @@ func SetupCheck(c *gin.Context) {
|
||||
}
|
||||
|
||||
func migrateStructure() error {
|
||||
/*
|
||||
err := database.DB.AutoMigrate(
|
||||
&user.User{},
|
||||
&character.Char{},
|
||||
&character.Eigenschaft{},
|
||||
&character.Lp{},
|
||||
&character.Ap{},
|
||||
&character.B{},
|
||||
&character.Merkmale{},
|
||||
&character.Erfahrungsschatz{},
|
||||
&character.Bennies{},
|
||||
&gsmaster.Skill{},
|
||||
&gsmaster.WeaponSkill{},
|
||||
&gsmaster.Spell{},
|
||||
&gsmaster.Equipment{},
|
||||
&gsmaster.Weapon{},
|
||||
&gsmaster.Container{},
|
||||
&gsmaster.Transportation{},
|
||||
&gsmaster.Believe{},
|
||||
&equipment.Ausruestung{},
|
||||
&equipment.Waffe{},
|
||||
&equipment.Behaeltniss{},
|
||||
&equipment.Transportation{},
|
||||
&skills.Fertigkeit{},
|
||||
&skills.Waffenfertigkeit{},
|
||||
&skills.Zauber{},
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
*/
|
||||
err := database.MigrateStructure()
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -37,7 +68,7 @@ func migrateStructure() error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = equipment.MigrateStructure()
|
||||
err = user.MigrateStructure()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -45,7 +76,7 @@ func migrateStructure() error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = importer.MigrateStructure()
|
||||
err = equipment.MigrateStructure()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -53,7 +84,7 @@ func migrateStructure() error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
err = user.MigrateStructure()
|
||||
err = importer.MigrateStructure()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -2,6 +2,7 @@ package tests
|
||||
|
||||
import (
|
||||
"bamort/character"
|
||||
"bamort/maintenance"
|
||||
"bamort/router"
|
||||
"bytes"
|
||||
"encoding/json"
|
||||
@@ -33,6 +34,54 @@ type Character struct {
|
||||
Race string `json:"race"`
|
||||
}
|
||||
|
||||
func TestSetupCheck(t *testing.T) {
|
||||
//r := gin.Default()
|
||||
c := gin.Context{}
|
||||
maintenance.SetupCheck(&c)
|
||||
assert.Empty(t, nil, "expected NIL to be empty")
|
||||
/*
|
||||
SetupTestDB()
|
||||
TestCreateChar(t)
|
||||
// Initialize a Gin router
|
||||
r := gin.Default()
|
||||
router.SetupGin(r)
|
||||
|
||||
// Routes
|
||||
protected := router.BaseRouterGrp(r)
|
||||
// Character routes
|
||||
rCharGrp := router.CharRouterGrp(protected)
|
||||
rCharGrp.GET("/test", func(c *gin.Context) {
|
||||
c.JSON(http.StatusOK, gin.H{"status": "Test OK"})
|
||||
})
|
||||
|
||||
// Create a test HTTP request
|
||||
req, _ := http.NewRequest("GET", "/api/characters", nil)
|
||||
req.Header.Set("Content-Type", "application/json")
|
||||
req.Header.Set("Content-Type", "application/json")
|
||||
req.Header.Set("Authorization", "Bearer ${token}")
|
||||
|
||||
// Create a response recorder to capture the handler's response
|
||||
respRecorder := httptest.NewRecorder()
|
||||
|
||||
// Perform the test request
|
||||
r.ServeHTTP(respRecorder, req)
|
||||
|
||||
// Assert the response status code
|
||||
assert.Equal(t, http.StatusOK, respRecorder.Code)
|
||||
|
||||
// Assert the response body
|
||||
var listOfCharacter []*character.CharList
|
||||
err := json.Unmarshal(respRecorder.Body.Bytes(), &listOfCharacter)
|
||||
assert.NoError(t, err)
|
||||
assert.Equal(t, "Harsk Hammerhuter, Zen", listOfCharacter[0].Name)
|
||||
assert.Equal(t, "Zwerg", listOfCharacter[0].Rasse)
|
||||
assert.Equal(t, 1, int(listOfCharacter[0].ID)) // Check the simulated ID
|
||||
assert.Equal(t, "Krieger", listOfCharacter[0].Typ)
|
||||
assert.Equal(t, 3, listOfCharacter[0].Grad)
|
||||
assert.Equal(t, "test", listOfCharacter[0].Owner)
|
||||
assert.Equal(t, false, listOfCharacter[0].Public)
|
||||
*/
|
||||
}
|
||||
func TestListCharacters(t *testing.T) {
|
||||
SetupTestDB()
|
||||
TestCreateChar(t)
|
||||
|
||||
Reference in New Issue
Block a user