1
Fork 0

Fix API tests

This commit is contained in:
viktorstrate 2022-07-08 17:44:03 +02:00
parent 214aa389fb
commit 831e24f654
No known key found for this signature in database
GPG Key ID: 3F855605109C1E8A
5 changed files with 22 additions and 6 deletions

View File

@ -19,6 +19,7 @@ jobs:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
target_platform:
- "linux/amd64"
@ -134,7 +135,7 @@ jobs:
docker manifest create ${DOCKER_IMAGE}:${TAG} ${DOCKER_IMAGES}
docker manifest push ${DOCKER_IMAGE}:${TAG}
done
- name: Cleanup tags
run: |
ACCESS_TOKEN=$(curl -X POST \
@ -142,18 +143,18 @@ jobs:
-H "Accept: application/json" \
-d "{\"username\":\"${DOCKER_USERNAME}\",\"password\":\"${DOCKER_PASSWORD}\"}" \
https://hub.docker.com/v2/users/login/ | jq --raw-output '.token')
PLATFORMS=("amd64" "arm64" "arm-v7" "arm-v6")
for PLATFORM in ${PLATFORMS[@]}; do
TAG="linux-${PLATFORM}-${GITHUB_SHA::8}-${{ github.event_name }}"
echo "Deleting tag: ${DOCKER_IMAGE}:${TAG}"
curl -X DELETE \
-H "Accept: application/json" \
-H "Authorization: JWT ${ACCESS_TOKEN}" \
https://hub.docker.com/v2/repositories/${DOCKER_IMAGE}/tags/${TAG}/
done
- name: Clear
if: always()
run: |

3
.gitignore vendored
View File

@ -1,7 +1,8 @@
# See https://help.github.com/ignore-files/ for more about ignoring files.
cache/
media_cache/
/media_cache/
/api/media_cache/
/photos_path
photoview.db
photoview.db-journal

View File

@ -2,6 +2,7 @@ package scanner_queue
import (
"context"
"flag"
"testing"
"github.com/photoview/photoview/api/graphql/models"
@ -9,6 +10,9 @@ import (
"github.com/photoview/photoview/api/scanner/scanner_task"
)
var _ = flag.Bool("database", false, "run database integration tests")
var _ = flag.Bool("filesystem", false, "run filesystem integration tests")
func makeAlbumWithID(id int) *models.Album {
var album models.Album
album.ID = id

View File

@ -3,6 +3,7 @@ package scanner_task
import (
"context"
"database/sql"
"flag"
"io/fs"
"github.com/photoview/photoview/api/graphql/models"
@ -84,6 +85,11 @@ func (c TaskContext) Value(key interface{}) interface{} {
}
func (c TaskContext) WithDB(db *gorm.DB) TaskContext {
// Allow db to be nil in tests
if db == nil && flag.Lookup("test.v") != nil {
return c
}
return c.WithValue(taskCtxKeyDatabase, db.WithContext(c.ctx))
}

View File

@ -13,6 +13,10 @@ import (
"github.com/stretchr/testify/assert"
)
func TestMain(m *testing.M) {
os.Exit(test_utils.IntegrationTestRun(m))
}
func TestCleanupMedia(t *testing.T) {
test_utils.FilesystemTest(t)
db := test_utils.DatabaseTest(t)
@ -27,7 +31,7 @@ func TestCleanupMedia(t *testing.T) {
}
test_dir := t.TempDir()
copy.Copy("./test_data", test_dir)
assert.NoError(t, copy.Copy("../../test_data", test_dir))
countAllMedia := func() int {
var all_media []*models.Media