unittest using externally managed database (#9400)
* MM-12083: unittest using externally managed database * cherry-pick Makefile changes from @cpanato * Jenkins changes (#9915) * add docker compose * udpate * when using minio dont need to set the region * update * add wait for it script * using old minio * add new jenkins file * update makefile * add dockerfile * rename the docker-compose proj to avoid colision (#9917) * rename the docker-compose proj to avoid colision * enable debug * enable debug to double checkt the branchs and fix docker-compose name (#9919) * add ee hash to check (#9920) * fix name (#9921) * update jenkins file to push from branch and prs * if a new push comes in stop the running build * split mysql and postgres variables * add script to run jenkins-like env in local dev env * update docker-compose project name to use uuid to make it more randon * fix DCNAME definition * update elasticsearch docker image * revert test * tidy up stages, and wait for mysql differently * update docker image and add check for postgres * checking if is ready * update docker compose to have a wait for deps * add readme and rename dockerfile * fix -unittest setup * using mm docker image * restore parallel unit tests at the package level Spin up a dedicated database for each package under test to avoid races in accessing the same tables. Simplify the interface for configuring the test database to just a DSN instead of multiple exports for each field. * try to work around root mysql access in CI * update local-test-env.sh too * MYSQL_ROOT_HOST: % * fix missing quotes * setting some memory limits for mysql * revert memory docker compose does not support * fix env name for postgres * expose errors in app/export_test.go * fix test label, better error checking on teardown * increase query timeout for tests * fix export_test * update local dev script * add configurable mysql root passwd
Этот коммит содержится в:
коммит произвёл
Carlos Tadeu Panato Junior
родитель
204dde9f48
Коммит
8374b6221e
@@ -88,7 +88,8 @@ func TestExportUserChannels(t *testing.T) {
|
||||
th.App.Srv.Store.Channel().SaveMember(&channelMember)
|
||||
th.App.Srv.Store.Preference().Save(&preferences)
|
||||
th.App.UpdateChannelMemberNotifyProps(notifyProps, channel.Id, user.Id)
|
||||
exportData, _ := th.App.buildUserChannelMemberships(user.Id, team.Id)
|
||||
exportData, err := th.App.buildUserChannelMemberships(user.Id, team.Id)
|
||||
require.Nil(t, err)
|
||||
assert.Equal(t, len(*exportData), 3)
|
||||
for _, data := range *exportData {
|
||||
if *data.Name == channelName {
|
||||
@@ -158,15 +159,15 @@ func TestExportCustomEmoji(t *testing.T) {
|
||||
|
||||
filePath := "../demo.json"
|
||||
|
||||
fileWriter, _ := os.Create(filePath)
|
||||
fileWriter, err := os.Create(filePath)
|
||||
require.Nil(t, err)
|
||||
defer os.Remove(filePath)
|
||||
|
||||
pathToEmojiDir := "../data/emoji/"
|
||||
dirNameToExportEmoji := "exported_emoji_test"
|
||||
|
||||
err := th.App.ExportCustomEmoji(fileWriter, filePath, pathToEmojiDir, dirNameToExportEmoji)
|
||||
defer os.RemoveAll("../" + dirNameToExportEmoji)
|
||||
if err != nil {
|
||||
|
||||
if err := th.App.ExportCustomEmoji(fileWriter, filePath, pathToEmojiDir, dirNameToExportEmoji); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
|
||||
Ссылка в новой задаче
Block a user