def test_tracking(): prn = 15 init_doppler = 1234 init_code_phase = 0 file_format = '2bits_x2' freq_profile = 'low_rate' skip_param = '--skip-ms' skip_val = 0 samples_filename = generate_sample_file(prn, init_doppler, init_code_phase, file_format, freq_profile) run_peregrine(samples_filename, file_format, freq_profile, skip_param, skip_val, False) # Comparison not working on Travis at the moment, needs further debugging. # Simply make sure tracking runs successfully for now. #with open(NEW_TRK_RES, 'rb') as f: # new_trk_results = cPickle.load(f) #with open(OLD_TRK_RES, 'rb') as f: # old_trk_results = cPickle.load(f) #assert new_trk_results == old_trk_results # Clean-up. os.remove(samples_filename)
def run_acq_test(init_doppler, init_code_phase, prns, file_format, freq_profile='low_rate', skip_samples=None, skip_ms=None): if skip_samples is not None: skip_param = '--skip-samples' skip_val = skip_samples elif skip_ms is not None: skip_param = '--skip-ms' skip_val = skip_ms else: skip_param = '--skip-ms' skip_val = 0 for prn in prns: samples_filename = generate_sample_file(prn, init_doppler, init_code_phase, file_format, freq_profile) run_peregrine(samples_filename, file_format, freq_profile, skip_param, skip_val) code_phase = propagate_code_phase(init_code_phase, get_sampling_freq(freq_profile), skip_param, skip_val) if skip_val == 0: check_acq_results(samples_filename, prn, init_doppler, code_phase) # Clean-up. os.remove(get_acq_result_file_name(samples_filename)) os.remove(samples_filename)
def run_track_test(samples_file, expected_lock_ratio, init_doppler, init_code_phase, prn, file_format, freq_profile, skip_samples=None, skip_ms=None, pipelining=None, short_long_cycles=None): bands = fileformat_to_bands(file_format) skip_param, skip_val = get_skip_params(skip_samples, skip_ms) run_peregrine(samples_file, file_format, freq_profile, skip_param, skip_val, skip_tracking=False, pipelining=pipelining, short_long_cycles=short_long_cycles) for band in bands: dopp_ratio = 1 if band == "l2c": dopp_ratio = l2 / l1 run_tracking_loop(prn, band, init_doppler * dopp_ratio, init_code_phase, samples_file, file_format, freq_profile, 0, pipelining=pipelining, short_long_cycles=short_long_cycles) #code_phase = propagate_code_phase(init_code_phase, #get_sampling_freq(freq_profile), #skip_param, skip_val) check_per_track_results(expected_lock_ratio, samples_file, prn, bands, pipelining, short_long_cycles) check_tr_loop_track(expected_lock_ratio, samples_file, prn, bands, pipelining, short_long_cycles) # Clean-up. os.remove(get_acq_result_file_name(samples_file)) for band in bands: os.remove(get_peregrine_tr_res_file_name(samples_file, prn, band)) os.remove(get_tr_loop_res_file_name(samples_file, prn, band))