appinfo test fix is defective
You created a fixture that creates a new tmp dir for each test and relies on setenv. But g_get_user_data_dir() only reads XDG_DATA_HOME once, and there is no way to reset it. So I don't think this can work without running each test as a subprocess.