MCPcopy
hub / github.com/gotify/server / TestApplication

Method TestApplication

database/application_test.go:10–70  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

8)
9
10func (s *DatabaseSuite) TestApplication() {
11 if app, err := s.db.GetApplicationByToken("asdasdf"); assert.NoError(s.T(), err) {
12 assert.Nil(s.T(), app, "not existing app")
13 }
14
15 if app, err := s.db.GetApplicationByID(uint(1)); assert.NoError(s.T(), err) {
16 assert.Nil(s.T(), app, "not existing app")
17 }
18
19 user := &model.User{Name: "test", Pass: []byte{1}}
20 s.db.CreateUser(user)
21 assert.NotEqual(s.T(), 0, user.ID)
22
23 if apps, err := s.db.GetApplicationsByUser(user.ID); assert.NoError(s.T(), err) {
24 assert.Empty(s.T(), apps)
25 }
26
27 app := &model.Application{UserID: user.ID, Token: "C0000000000", Name: "backupserver"}
28 s.db.CreateApplication(app)
29
30 if apps, err := s.db.GetApplicationsByUser(user.ID); assert.NoError(s.T(), err) {
31 assert.Len(s.T(), apps, 1)
32 assert.Contains(s.T(), apps, app)
33 }
34
35 newApp, err := s.db.GetApplicationByToken(app.Token)
36 if assert.NoError(s.T(), err) {
37 assert.Equal(s.T(), app, newApp)
38 }
39
40 newApp, err = s.db.GetApplicationByID(app.ID)
41 if assert.NoError(s.T(), err) {
42 assert.Equal(s.T(), app, newApp)
43 }
44
45 lastUsed := time.Now().Add(-time.Hour)
46 s.db.UpdateApplicationTokenLastUsed(app.Token, &lastUsed)
47 newApp, err = s.db.GetApplicationByID(app.ID)
48 if assert.NoError(s.T(), err) {
49 assert.Equal(s.T(), lastUsed.Unix(), newApp.LastUsed.Unix())
50 }
51 app.LastUsed = &lastUsed
52
53 newApp.Image = "asdasd"
54 assert.NoError(s.T(), s.db.UpdateApplication(newApp))
55
56 newApp, err = s.db.GetApplicationByID(app.ID)
57 if assert.NoError(s.T(), err) {
58 assert.Equal(s.T(), "asdasd", newApp.Image)
59 }
60
61 assert.NoError(s.T(), s.db.DeleteApplicationByID(app.ID))
62
63 if apps, err := s.db.GetApplicationsByUser(user.ID); assert.NoError(s.T(), err) {
64 assert.Empty(s.T(), apps)
65 }
66
67 if app, err := s.db.GetApplicationByID(app.ID); assert.NoError(s.T(), err) {

Callers

nothing calls this directly

Calls 8

GetApplicationByTokenMethod · 0.65
GetApplicationByIDMethod · 0.65
CreateUserMethod · 0.65
GetApplicationsByUserMethod · 0.65
CreateApplicationMethod · 0.65
UpdateApplicationMethod · 0.65
DeleteApplicationByIDMethod · 0.65

Tested by

no test coverage detected