()
| 167 | } |
| 168 | |
| 169 | func (s *UserSuite) Test_CreateUser() { |
| 170 | s.loginAdmin() |
| 171 | |
| 172 | assert.False(s.T(), s.notifiedAdd) |
| 173 | s.ctx.Request = httptest.NewRequest("POST", "/user", strings.NewReader(`{"name": "tom", "pass": "mylittlepony", "admin": true}`)) |
| 174 | s.ctx.Request.Header.Set("Content-Type", "application/json") |
| 175 | |
| 176 | s.a.CreateUser(s.ctx) |
| 177 | |
| 178 | assert.Equal(s.T(), 200, s.recorder.Code) |
| 179 | user := &model.UserExternal{ID: 2, Name: "tom", Admin: true} |
| 180 | test.BodyEquals(s.T(), user, s.recorder) |
| 181 | |
| 182 | if created, err := s.db.GetUserByName("tom"); assert.NoError(s.T(), err) { |
| 183 | assert.NotNil(s.T(), created) |
| 184 | assert.True(s.T(), password.ComparePassword(created.Pass, []byte("mylittlepony"))) |
| 185 | } |
| 186 | assert.True(s.T(), s.notifiedAdd) |
| 187 | } |
| 188 | |
| 189 | func (s *UserSuite) Test_CreateUser_ByNonAdmin() { |
| 190 | s.loginUser() |
nothing calls this directly
no test coverage detected