56 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			56 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/usr/local/bin/zsh
 | |
| PROTO=https
 | |
| HOSTNAME=mempool.ninja
 | |
| URL_BASE=${PROTO}://${HOSTNAME}
 | |
| 
 | |
| curltest()
 | |
| {
 | |
|     read output
 | |
|     if [ "${output}" = "$1" ];then
 | |
|         echo "PASS: |${output}|"
 | |
|     else
 | |
|         echo "FAIL: |${output}|"
 | |
|         echo "WANT: |$1|"
 | |
|         exit 1
 | |
|     fi
 | |
| }
 | |
| 
 | |
| echo "Starting tests to ${URL_BASE}"
 | |
| 
 | |
| echo "Test locale for / with no header or cookie"
 | |
| curl -s ${URL_BASE}/ | grep '<html lang' | tr -d '\r\n' | curltest '<html lang="en-US">'
 | |
| 
 | |
| echo "Test locale for /ja with no header or cookie"
 | |
| curl -s ${URL_BASE}/ja | grep '<html lang' | tr -d '\r\n' | curltest '<html lang="ja">'
 | |
| 
 | |
| #echo "Test locale for /ja with 'ja' lang header and 'en' lang cookie"
 | |
| #curl -s -H 'Accept-Language: ja' --cookie 'lang=en' ${URL_BASE}/ja | grep '<html lang' | tr -d '\r\n' | curltest '<html lang="en-US">'
 | |
| 
 | |
| echo "Test redirect for / with 'ja' lang header and no cookie"
 | |
| curl -i -s -H 'Accept-Language: ja' ${URL_BASE}/ | grep '^location:' | tr -d '\r\n' | curltest "location: ${URL_BASE}/ja/"
 | |
| 
 | |
| echo "Test locale for / with 'ja' lang header and 'en' lang cookie"
 | |
| curl -s -H 'Accept-Language: ja' --cookie 'lang=en' ${URL_BASE}/ | grep '<html lang' | tr -d '\r\n' | curltest '<html lang="en-US">'
 | |
| 
 | |
| echo "Test redirect for / with 'ja' lang header and 'sv' lang cookie"
 | |
| curl -i -s -H 'Accept-Language: ja' --cookie 'lang=sv' ${URL_BASE}/ | grep '^location:' | tr -d '\r\n' | curltest "location: ${URL_BASE}/sv/"
 | |
| 
 | |
| echo "Test redirect for / with 'ja' lang header and 'foo' lang cookie"
 | |
| curl -i -s -H 'Accept-Language: ja' --cookie 'lang=foo' ${URL_BASE}/ | grep '^location:' | tr -d '\r\n' | curltest "location: ${URL_BASE}/ja/"
 | |
| 
 | |
| echo "Test rewrite for /resources/pools.json with no header and no cookie"
 | |
| curl -s -i ${URL_BASE}/resources/pools.json | grep -i content-type | tr -d '\r\n' | curltest 'content-type: application/json'
 | |
| 
 | |
| echo "Test rewrite for /sv/resources/pools.json with no header and no cookie"
 | |
| curl -s -i ${URL_BASE}/sv/resources/pools.json | grep -i content-type | tr -d '\r\n' | curltest 'content-type: application/json'
 | |
| 
 | |
| echo "Test rewrite for /resources/pools.json with 'ja' lang header and no cookie"
 | |
| curl -s -i -H 'Accept-Language: ja' ${URL_BASE}/resources/pools.json | grep -i content-type | tr -d '\r\n' | curltest 'content-type: application/json'
 | |
| 
 | |
| echo "Test rewrite for /ja/resources/pools.json with 'ja' lang header and no cookie"
 | |
| curl -s -i -H 'Accept-Language: ja' ${URL_BASE}/ja/resources/pools.json | grep -i content-type | tr -d '\r\n' | curltest 'content-type: application/json'
 | |
| 
 | |
| #curl -s -i -H 'Accept-Language: sv' ${URL_BASE}/ja/resources/pools.json | grep -i content-type
 | |
| #curl -s -i -H 'Accept-Language: foo' --cookie 'lang=sv' ${URL_BASE}/ja/resources/pools.json | grep -i content-type
 | |
| #curl -s -i -H 'Accept-Language: foo' --cookie 'lang=sv' ${URL_BASE}/sv/resources/pools.json | grep -i content-type
 |