Small improvements to unit tests
This commit is contained in:
parent
70d6278540
commit
66b6dbf4f3
|
@ -35,6 +35,15 @@ func TestAddOrUpdateAuthor(t *testing.T) {
|
|||
assert.Equal(t, testauthor.Lastname, author.Lastname)
|
||||
}
|
||||
|
||||
// Should find something
|
||||
allauthors, err = ListAuthors("tst")
|
||||
assert.NoError(t, err)
|
||||
|
||||
for _, author := range allauthors {
|
||||
assert.Equal(t, testauthor.Forename, author.Forename)
|
||||
assert.Equal(t, testauthor.Lastname, author.Lastname)
|
||||
}
|
||||
|
||||
// Get the new author
|
||||
gotauthor, exists, err := GetAuthorByID(author1.ID)
|
||||
assert.NoError(t, err)
|
||||
|
|
|
@ -79,6 +79,14 @@ func TestAddOrUpdateBook(t *testing.T) {
|
|||
assert.Equal(t, book.Title, testbook.Title)
|
||||
}
|
||||
|
||||
// Search
|
||||
allbooks, err = ListBooks("est")
|
||||
assert.NoError(t, err)
|
||||
|
||||
for _, book := range allbooks {
|
||||
assert.Equal(t, book.Title, testbook.Title)
|
||||
}
|
||||
|
||||
// Get the new book
|
||||
gotBook, exists, err := GetBookByID(book1.ID)
|
||||
assert.NoError(t, err)
|
||||
|
|
|
@ -11,10 +11,39 @@ func TestSetConfig(t *testing.T) {
|
|||
// Create test database
|
||||
assert.NoError(t, PrepareTestDatabase())
|
||||
|
||||
// Write a fake config
|
||||
configString := `[General]
|
||||
// This should fail as it is looking for a nonexistent config
|
||||
err := SetConfig()
|
||||
assert.Error(t, err)
|
||||
|
||||
// Write an invalid config
|
||||
configString := `[General
|
||||
JWTSecret = Supersecret
|
||||
Interface = :8080
|
||||
Interface = ; This should make it automatically to :8080
|
||||
|
||||
[Database
|
||||
Type = sqlite
|
||||
Path = ./library.db
|
||||
|
||||
[User
|
||||
Name = nope
|
||||
Username = user
|
||||
Passw]ord = 1234
|
||||
Email = nope@none.com`
|
||||
err = ioutil.WriteFile("config.ini", []byte(configString), 0644)
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Test setConfig (should fail as we're trying to parse an invalid config)
|
||||
err = SetConfig()
|
||||
assert.Error(t, err)
|
||||
|
||||
// Delete the invalid file
|
||||
err = os.Remove("config.ini")
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Write a fake config
|
||||
configString = `[General]
|
||||
JWTSecret = Supersecret
|
||||
Interface = ; This should make it automatically to :8080
|
||||
|
||||
[Database]
|
||||
Type = sqlite
|
||||
|
@ -25,7 +54,7 @@ Name = nope
|
|||
Username = user
|
||||
Password = 1234
|
||||
Email = nope@none.com`
|
||||
err := ioutil.WriteFile("config.ini", []byte(configString), 0644)
|
||||
err = ioutil.WriteFile("config.ini", []byte(configString), 0644)
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Test setConfig
|
||||
|
|
|
@ -41,6 +41,17 @@ func TestAddOrUpdateItem(t *testing.T) {
|
|||
assert.Equal(t, testitem.Other, item.Other)
|
||||
}
|
||||
|
||||
// Search
|
||||
allitems, err = ListItems("esti")
|
||||
assert.NoError(t, err)
|
||||
|
||||
for _, item := range allitems {
|
||||
assert.Equal(t, testitem.Title, item.Title)
|
||||
assert.Equal(t, testitem.Price, item.Price)
|
||||
assert.Equal(t, testitem.Description, item.Description)
|
||||
assert.Equal(t, testitem.Other, item.Other)
|
||||
}
|
||||
|
||||
// Get the new item
|
||||
gotitem, exists, err := GetItemByID(item1.ID)
|
||||
assert.NoError(t, err)
|
||||
|
|
|
@ -65,9 +65,7 @@ func SetEngine() (err error) {
|
|||
|
||||
_, err = CreateUser(Config.FirstUser)
|
||||
if err != nil {
|
||||
if !IsErrUsernameExists(err) {
|
||||
return err
|
||||
}
|
||||
return err
|
||||
}
|
||||
|
||||
fmt.Println("Created new user " + Config.FirstUser.Username)
|
||||
|
|
|
@ -53,6 +53,11 @@ func TestAddOrUpdatePublisher(t *testing.T) {
|
|||
assert.NoError(t, err)
|
||||
assert.Equal(t, testpublisher.Name, publisher1updated.Name)
|
||||
|
||||
// Search
|
||||
allpublishers, err = ListPublishers("rem")
|
||||
assert.NoError(t, err)
|
||||
assert.NotNil(t, allpublishers[0])
|
||||
|
||||
// Delete the publisher
|
||||
err = DeletePublisherByID(publisher1.ID)
|
||||
assert.NoError(t, err)
|
||||
|
|
|
@ -43,9 +43,11 @@ func TestCreateUser(t *testing.T) {
|
|||
// Check if it fails to create a user without password and username
|
||||
createdUser, err = CreateUser(User{})
|
||||
assert.Error(t, err)
|
||||
assert.True(t, IsErrNoUsernamePassword(err))
|
||||
|
||||
createdUser, err = CreateUser(User{Name: "blub"})
|
||||
assert.Error(t, err)
|
||||
assert.True(t, IsErrNoUsernamePassword(err))
|
||||
|
||||
// Check if he exists
|
||||
_, exists, err := GetUser(createdUser)
|
||||
|
|
Loading…
Reference in New Issue