github.com/2lambda123/git-lfs@v2.5.2+incompatible/t/t-content-type.sh (about) 1 #!/usr/bin/env bash 2 3 . "$(dirname "$0")/testlib.sh" 4 5 begin_test "content-type: is enabled by default" 6 ( 7 set -e 8 9 reponame="content-type-enabled-default" 10 setup_remote_repo "$reponame" 11 clone_repo "$reponame" "$reponame" 12 13 git lfs track "*.tar.gz" 14 printf "aaaaaaaaaa" > a.txt 15 tar -czf a.tar.gz a.txt 16 rm a.txt 17 18 git add .gitattributes a.tar.gz 19 git commit -m "initial commit" 20 GIT_CURL_VERBOSE=1 git push origin master 2>&1 | tee push.log 21 22 [ 1 -eq "$(grep -c "Content-Type: application/x-gzip" push.log)" ] 23 [ 0 -eq "$(grep -c "Content-Type: application/octet-stream" push.log)" ] 24 ) 25 end_test 26 27 begin_test "content-type: is disabled by configuration" 28 ( 29 set -e 30 31 reponame="content-type-disabled-by-configuration" 32 setup_remote_repo "$reponame" 33 clone_repo "$reponame" "$reponame" 34 35 git lfs track "*.tar.gz" 36 printf "aaaaaaaaaa" > a.txt 37 tar -czf a.tar.gz a.txt 38 rm a.txt 39 40 git add .gitattributes a.tar.gz 41 git commit -m "initial commit" 42 git config "lfs.$GITSERVER.contenttype" 0 43 GIT_CURL_VERBOSE=1 git push origin master 2>&1 | tee push.log 44 45 [ 0 -eq "$(grep -c "Content-Type: application/x-gzip" push.log)" ] 46 [ 1 -eq "$(grep -c "Content-Type: application/octet-stream" push.log)" ] 47 ) 48 end_test 49 50 begin_test "content-type: warning message" 51 ( 52 set -e 53 54 reponame="content-type-warning-message" 55 setup_remote_repo "$reponame" 56 clone_repo "$reponame" "$reponame" 57 58 git lfs track "*.txt" 59 printf "status-storage-422" > a.txt 60 61 git add .gitattributes a.txt 62 git commit -m "initial commit" 63 git push origin master 2>&1 | tee push.log 64 65 grep "info: Uploading failed due to unsupported Content-Type header(s)." push.log 66 grep "info: Consider disabling Content-Type detection with:" push.log 67 grep "info: $ git config lfs.contenttype false" push.log 68 ) 69 end_test