fdroidserver/tests
Hans-Christoph Steiner 4e7bda736c update: never execute VCS e.g. git
Package repos come from untrusted sources, in terms of the buildserver. They
should be handled in VMs and containers as much as possible to avoid
vulnerabilities.  As far as I could tell, `fdroid update` only has a single
place where it executes any VCS system: if there is .fdroid.yml present in
a package repo, then it will fetch the commit ID using git.

For better security properties, this implements a simple function to just
read the files to get that commit ID.  The function that executes git to do
the same thing is relabeled "unsafe".  That is used for status JSON
everywhere, but that runs on fdroiddata.git and fdroidserver.git, which are
trusted repos.

The unsafe version is also used in places where git.Repo() is needed for
other things.
2025-05-12 18:30:03 +02:00
..
build/info.guardianproject.urzip gitlab-ci: add yamllint job 2025-02-26 17:28:01 +01:00
build-tools Added test aapt output files for build-tools 28.0.3 2019-01-13 19:27:02 +01:00
builder build: read VM CPUs/RAM from builder/Vagrantfile 2022-11-15 08:57:41 +01:00
config add 'non-changeable' to NonFreeNet description 2024-02-21 17:13:58 +01:00
extra disable pylint no-member on tests/extra/manual-vmtools-test.py 2023-03-20 17:38:10 +01:00
get_android_tools_versions common.get_android_tools_versions() for modern NDK dir layout 2023-04-11 13:54:17 +02:00
gnupghome
metadata APK for testing maxSdkVersion handling 2025-03-25 10:23:00 +00:00
metadata-rewrite-yml Remove all mentions of Flattr 2024-09-23 07:59:08 +00:00
repo APK for testing maxSdkVersion handling 2025-03-25 10:23:00 +00:00
signindex
source-files scanner: catalog: relax VERSION_CATALOG_REGEX 2024-10-20 21:21:28 +08:00
triple-t-2 update: parse Triple-T v2.x layout 2019-10-04 14:11:40 +02:00
triple-t-anysoftkeyboard install openjdk 11 from bullseye repo instead in the test cases 2024-03-14 13:14:41 +01:00
triple-t-flutter Add test case for Triple-T metadata in a Flutter project 2022-03-07 12:40:37 +01:00
triple-t-multiple update test_insert_triple_t_multiple_metadata() test data 2021-08-03 20:53:56 +02:00
valid-package-names move all test metadata files to .yml format 2020-06-10 09:56:31 +02:00
__init__.py Refactor TestCase files into python modules 2024-11-20 10:37:52 +01:00
aosp_testkey_debug.keystore nightly: support OpenSSL 3.0 with Paramiko 2022-11-16 14:40:08 +01:00
apk.embedded_1.apk Add apk.embedded_1.apk test 2022-05-03 14:59:52 +00:00
bad-unicode-πÇÇ现代通用字-български-عربي1.apk
check-fdroid-apk use standard User-Agent in check-fdroid-apk 2018-01-26 10:18:41 +01:00
com.fake.IpaApp_1000000000001.ipa 🥔 add strapped IPA file and test for parse_ipa 2024-01-11 11:34:21 +01:00
config.yml gitlab-ci: "PUBLISH" job to test in the signing server's setup 2025-03-12 17:27:26 +01:00
corrupt-featureGraphic.png update: log errors on bad graphics, and then ignore the file 2019-09-26 22:06:21 +02:00
dummy-keystore.jks
dump_internal_metadata_format.py split out options from read_config() 2024-05-08 16:26:46 +02:00
funding-usernames.yaml Remove all mentions of Flattr 2024-09-23 07:59:08 +00:00
get-country-region-data.py lint: check syntax of countryCode: fields for mirrors 2024-01-09 09:32:37 +00:00
gradle-maven-blocks.yaml scanner: update maven repo regex 2024-03-12 07:57:11 +00:00
gradle-release-checksums.py Add support for Python 3.12 2023-12-07 18:15:05 -05:00
IsMD5Disabled.java
issue-1128-min-sdk-30-poc.apk also handle APKs entirely without JAR/v1 signatures 2024-05-07 16:22:59 +02:00
issue-1128-poc1.apk include @obfusk's proof-of-concept APKs in test suite 2024-05-07 16:22:59 +02:00
issue-1128-poc2.apk include @obfusk's proof-of-concept APKs in test suite 2024-05-07 16:22:59 +02:00
issue-1128-poc3a.apk include @obfusk's proof-of-concept APKs in test suite 2024-05-07 16:22:59 +02:00
issue-1128-poc3b.apk include @obfusk's proof-of-concept APKs in test suite 2024-05-07 16:22:59 +02:00
janus.apk update: reject APKs with invalid file sig, probably Janus exploits 2017-12-14 16:57:22 +01:00
key-tricks.py split out options from read_config() 2024-05-08 16:26:46 +02:00
keystore.jks tests: add test for correctly handling CVC when archiving 2019-12-24 17:35:54 +01:00
minimal_targetsdk_30_unsigned.apk publish: use apksigner for signing apks with targetSDK>=30 2020-09-09 18:09:28 +02:00
no_targetsdk_minsdk1_unsigned.apk fallback to minsdk when targetsdk isn't set 2020-09-14 14:12:18 +02:00
no_targetsdk_minsdk30_unsigned.apk fallback to minsdk when targetsdk isn't set 2020-09-14 14:12:18 +02:00
Norway_bouvet_europe_2.obf.zip use smallest possible valid .obf.zip file in tests 2020-12-03 21:48:37 +01:00
openssl-version-check-test.py Add timeout argument to requests.(get,post) 2022-09-05 17:50:10 +02:00
org.bitbucket.tickytacky.mirrormirror_1.apk
org.bitbucket.tickytacky.mirrormirror_2.apk
org.bitbucket.tickytacky.mirrormirror_3.apk
org.bitbucket.tickytacky.mirrormirror_4.apk
org.dyndns.fules.ck_20.apk
org.fdroid.fdroid_1019051.apk.json verify: handle corrupt verified.json 2025-01-20 09:48:20 +00:00
org.sajeg.fallingblocks_3.apk update: handle messed up namespaces in AndroidManifest.xml 2023-03-20 13:24:59 +00:00
refresh-SUSS_DEFAULT.py scanner: script to update default rules from SUSS 2024-01-25 11:51:22 +01:00
run-tests Fix usage of removed $WORKSPACE variable in run-tests 2025-02-13 17:56:30 +01:00
SANAPPSI.RSA test APK signatures with a cert chain are parsed like apksigner 2024-05-07 16:22:59 +02:00
SANAPPSI.SF test APK signatures with a cert chain are parsed like apksigner 2024-05-07 16:22:59 +02:00
shared_test_code.py use shared test function to replicate .testfiles setup 2025-02-13 17:56:30 +01:00
SpeedoMeterApp.main_1.apk update: do not crash with androguard when working with apps without icons 2018-03-12 17:55:45 +01:00
SystemWebView-repack.apk update: add test with APK for icon_id related exceptions 2021-10-01 16:44:14 +02:00
test_api.py tests: rename testcommon module to shared_test_code 2025-01-27 10:11:19 +00:00
test_build.py skip tests that won't run on a given CPU architecture 2025-03-19 15:47:06 +01:00
test_checkupdates.py checkupdates: skip test_get_upstream_main_branch on macOS 2025-01-20 15:37:54 +01:00
test_common.py update: never execute VCS e.g. git 2025-05-12 18:30:03 +02:00
test_deploy.py publish: remove last use of stats/ dir 2025-03-20 15:08:32 +01:00
test_exception.py Refactor TestCase files into python modules 2024-11-20 10:37:52 +01:00
test_github.py tests: rename testcommon module to shared_test_code 2025-01-27 10:11:19 +00:00
test_gpgsign.py Refactor TestCase files into python modules 2024-11-20 10:37:52 +01:00
test_gradlew-fdroid rename to test_gradlew-fdroid to match Python unittest naming 2024-11-19 20:27:29 +01:00
test_import_subcommand.py tests: rename testcommon module to shared_test_code 2025-01-27 10:11:19 +00:00
test_index.py publish: remove last use of stats/ dir 2025-03-20 15:08:32 +01:00
test_init.py use common var for 'config.yml', standarize on UTF-8 2025-03-05 12:20:32 +01:00
test_install.py skip tests that won't run on a given CPU architecture 2025-03-19 15:47:06 +01:00
test_integration.py publish: remove last use of stats/ dir 2025-03-20 15:08:32 +01:00
test_lint.py AbstractBaseTest class for sharing setUp and tearDown in tests 2025-03-12 13:37:17 +01:00
test_main.py tests: rename testcommon module to shared_test_code 2025-01-27 10:11:19 +00:00
test_metadata.py standardize config on ruamel.yaml with a YAML 1.2 config 2025-03-10 08:48:58 +01:00
test_net.py test_net: figure out the proper IP protocol for localhost 2025-01-20 10:33:49 +00:00
test_nightly.py use common var for 'config.yml', standarize on UTF-8 2025-03-05 12:20:32 +01:00
test_publish.py publish: convert to black code format 2025-03-25 10:23:00 +00:00
test_rewritemeta.py tests: rename testcommon module to shared_test_code 2025-01-27 10:11:19 +00:00
test_scanner.py fix _dexdump_found() in test_scanner.py !1621 2025-03-24 08:24:01 +00:00
test_signatures.py test_signatures: remove unneeded config from tests 2025-03-25 10:23:00 +00:00
test_signindex.py Refactor TestCase files into python modules 2024-11-20 10:37:52 +01:00
test_update.py update: include stages timing info in update.json 2025-04-23 19:26:50 +02:00
test_vcs.py tests: rename testcommon module to shared_test_code 2025-01-27 10:11:19 +00:00
test_verify.py verify: generate <appid>.json files that list all reports 2025-04-10 15:41:46 +00:00
urzip-badcert.apk
urzip-badsig.apk
urzip-release-unsigned.apk
urzip-release.apk
urzip.apk
v2.only.sig_2.apk support APK Signature V2 when apksigner is installed 2019-02-01 09:17:56 +01:00