Bazel系列-bazel test 使用https(二)

xctestrunner rules
logic_test_util.py

RunLogicTestOnSim方法新增 is_use_https=False 参数`
然后代码中, 指定架构打开模拟器

def RunLogicTestOnSim(sim_id,
                      test_bundle_path,
                      env_vars=None,
                      args=None,
                      tests_to_run=None,
                      is_use_https=False,
                      os_version=None,):

// 原实现

if is_use_https == "True":
    sim_list = os.popen('xcrun simctl list')
    content = sim_list.read()
    simulator_id_arr = re.findall(r"iPhone 13 [(](.*?)[)] [(].*?[)]",content)
    simulator_state_arr = re.findall(r"iPhone 13 [(].*?[)] [(](.*?)[)]",content)

    print("simulator_id_arr:",simulator_id_arr)
    print("simulator_state_arr:",simulator_state_arr)

    simulator_id = simulator_id_arr[0] if len(simulator_id_arr) else ""
    simulator_state = simulator_state_arr[0] if len(simulator_state_arr) else "unknow"

    print("simulator_state:",simulator_state)
    print("simulator_id",simulator_id)
    print("sim:",sim_id)
    if simulator_id == "":
      simulator_id = sim_id
    if simulator_state == "Shutdown":
      os.system("xcrun simctl boot %s"%(simulator_id))

    command = [
        'xcrun', 'simctl', 'spawn','-a','x86_64', simulator_id,
        xcode_info_util.GetXctestToolPath(ios_constants.SDK.IPHONESIMULATOR)]
    if args:
      command += args
    if not tests_to_run:
      tests_to_run_str = 'All'
    else:
      tests_to_run_str = ','.join(tests_to_run)

    return_code = subprocess.Popen(
        command + ['-XCTest', tests_to_run_str, test_bundle_path],
        env=simctl_env_vars, stdout=sys.stdout, stderr=subprocess.STDOUT).communicate()[0]

    if return_code != None:
      return runner_exit_codes.EXITCODE.FAILED
    return runner_exit_codes.EXITCODE.SUCCEEDED

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容