Пример #1
0
def test_params_doppler_sine2():
    '''
  Sine doppler parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l2c',
        '--doppler-type',
        'sine',
        '--doppler-value',
        '100',
        '--doppler-amplitude',
        '50',
        '--doppler-period',
        '3',
    ]
    args = parser.parse_args(params)
    doppler = args.gps_sv[0].getDoppler()
    assert isinstance(doppler, DopplerSine)
    speed_mps = -C / float(GPS.L2C.CENTER_FREQUENCY_HZ) * 100.
    assert doppler.distance0_m == 0.
    assert doppler.tec_epm2 == 50.
    assert doppler.period_s == 3.
    assert doppler.amplutude_mps == speed_mps / 2.
    assert doppler.speed0_mps == speed_mps
Пример #2
0
def test_params_doppler_linear():
    '''
  Linear doppler parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l1ca',
        '--doppler-type',
        'linear',
        '--doppler-value',
        '100',
        '--doppler-speed',
        '50',
    ]
    args = parser.parse_args(params)
    doppler = args.gps_sv[0].getDoppler()
    speed_mps = -C / float(GPS.L1CA.CENTER_FREQUENCY_HZ) * 100.
    accel_mps2 = -C / float(GPS.L1CA.CENTER_FREQUENCY_HZ) * 50.
    assert isinstance(doppler, DopplerPoly)
    assert doppler.distance0_m == 0.
    assert doppler.tec_epm2 == 50.
    assert doppler.coeffs == (accel_mps2, speed_mps)
Пример #3
0
def test_params_amplitude_sine():
    '''
  Sine amplitude parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l1ca',
        '--amplitude-type',
        'sine',
        '--amplitude-a0',
        '1',
        '--amplitude-a1',
        '2',
        '--amplitude-period',
        '3',
    ]
    args = parser.parse_args(params)
    amplitude = args.gps_sv[0].getAmplitude()
    assert isinstance(amplitude, AmplitudeSine)
    assert amplitude.amplitude == 2.
    assert amplitude.initial == 1.
    assert amplitude.period_s == 3.
Пример #4
0
def test_params_amplitude_poly_3():
    '''
  Polynomial amplitude parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l1ca',
        '--amplitude-type',
        'poly',
        '--amplitude-a0',
        '1',
        '--amplitude-a3',
        '2',
    ]
    args = parser.parse_args(params)
    amplitude = args.gps_sv[0].getAmplitude()
    assert isinstance(amplitude, AmplitudePoly)
    assert amplitude.coeffs == (
        2.,
        0.,
        0.,
        1.,
    )
Пример #5
0
def test_parameters_msgtype2():
    '''
  Zero+One message test
  '''
    parser = prepareArgsParser()
    params = ['--gps-sv', '1', '--message-type', 'zero+one']
    args = parser.parse_args(params)
    assert isinstance(args.gps_sv[0].getL1CAMessage(), ZeroOneMessage)
Пример #6
0
def test_parameters_msgtype4():
    '''
  GLONASS CRC message test
  '''
    parser = prepareArgsParser()
    params = ['--glo-sv', '0', '--message-type', 'crc']
    args = parser.parse_args(params)
    assert isinstance(args.gps_sv[0].getL1Message(), GLOMessage)
Пример #7
0
def test_parameters_TCXO1():
    '''
  TCXO parameter test
  '''
    parser = prepareArgsParser()
    params = ['--tcxo-type', 'poly', '--tcxo-a1', '1']
    args = parser.parse_args(params)
    assert isinstance(args.tcxo, TCXOPoly)
Пример #8
0
def test_parameters_msgtype1():
    '''
  All One message test
  '''
    parser = prepareArgsParser()
    params = ['--gps-sv', '1', '--message-type', 'one']
    args = parser.parse_args(params)
    assert isinstance(args.gps_sv[0].getL1CAMessage(), ConstMessage)
    assert args.gps_sv[0].getL1CAMessage().bitValue == -1
Пример #9
0
def test_parameters_msgtype3():
    '''
  GPS CRC messages test
  '''
    parser = prepareArgsParser()
    params = ['--gps-sv', '1', '--message-type', 'crc']
    args = parser.parse_args(params)
    assert isinstance(args.gps_sv[0].getL1CAMessage(), LNavMessage)
    assert isinstance(args.gps_sv[0].getL2CMessage(), CNavMessage)
Пример #10
0
def test_params_doppler_code_tracking_1():
    '''
  Doppler code tracking flag test
  '''
    parser = prepareArgsParser()
    params = ['--gps-sv', '1', '--bands', 'l1ca', '--ignore-code-doppler', '1']
    args = parser.parse_args(params)
    doppler = args.gps_sv[0].getDoppler()
    assert doppler.isCodeDopplerIgnored() == True
Пример #11
0
def test_parameters_TCXO2():
    '''
  TCXO parameter error test
  '''
    parser = prepareArgsParser()
    params = ['--tcxo-type', 'abc', '--tcxo-a0', '0', '--tcxo-a1', '1']
    try:
        parser.parse_args(params)
        assert False
    except:
        pass
Пример #12
0
def test_parameters_TCXO0():
    '''
  TCXO parameter test
  '''
    parser = prepareArgsParser()
    params = [
        '--tcxo-type', 'sine', '--tcxo-a0', '0', '--tcxo-a1', '1',
        '--tcxo-period', '3'
    ]
    args = parser.parse_args(params)
    assert isinstance(args.tcxo, TCXOSine)
Пример #13
0
def test_params_gps():
    '''
  GPS SV parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
    ]
    args = parser.parse_args(params)
    assert isinstance(args.gps_sv, list)
    assert isinstance(args.gps_sv[0], GPSSatellite)
    assert args.gps_sv[0].prn == 1
Пример #14
0
def test_params_glo():
    '''
  GLONASS SV parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--glo-sv',
        '0',
    ]
    args = parser.parse_args(params)
    assert isinstance(args.gps_sv, list)
    assert isinstance(args.gps_sv[0], GLOSatellite)
    assert args.gps_sv[0].prn == 0
Пример #15
0
def test_params_band_l1ca_l2c():
    '''
  GPS dual band parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l1ca+l2c',
    ]
    args = parser.parse_args(params)
    assert args.gps_sv[0].isL1CAEnabled() == True
    assert args.gps_sv[0].isL2CEnabled() == True
Пример #16
0
def test_params_band_l1_l2():
    '''
  GLONASS dual band parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--glo-sv',
        '1',
        '--bands',
        'l1+l2',
    ]
    args = parser.parse_args(params)
    # GLONASS and GPS satellites are all added to the same parameter list: gps_sv
    assert args.gps_sv[0].isL1Enabled() == True
    assert args.gps_sv[0].isL2Enabled() == True
Пример #17
0
def test_params_doppler_const():
    '''
  Constant doppler parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv', '1', '--bands', 'l1ca', '--doppler-type', 'const',
        '--doppler-value', '100'
    ]
    args = parser.parse_args(params)
    doppler = args.gps_sv[0].getDoppler()
    assert isinstance(doppler, DopplerPoly)
    assert doppler.distance0_m == 0.
    assert doppler.tec_epm2 == 50.

    speed_mps = -C / float(GPS.L1CA.CENTER_FREQUENCY_HZ) * 100.
    assert doppler.coeffs == (speed_mps, )
Пример #18
0
def test_printOutput():
    '''
  Plain configuration output test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l1ca+l2c',
        '--glo-sv',
        '1',
        '--bands',
        'l1+l2',
    ]
    args = parser.parse_args(params)
    # Sanity check: the function shall execute without errors with all possible
    # SV types
    printOutputConfig(NormalRateConfig, args)
Пример #19
0
def test_params_doppler_zero():
    '''
  Zero doppler parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l1ca',
        '--doppler-type',
        'zero',
    ]
    args = parser.parse_args(params)
    doppler = args.gps_sv[0].getDoppler()
    assert isinstance(doppler, DopplerPoly)
    assert doppler.distance0_m == 0.
    assert doppler.tec_epm2 == 50.
    assert doppler.coeffs == ()
Пример #20
0
def test_params_amplitude_poly_power():
    '''
  Amplitude unit parameters test
  '''
    parser = prepareArgsParser()
    params = [
        '--gps-sv',
        '1',
        '--bands',
        'l1ca',
        '--amplitude-type',
        'poly',
        '--amplitude-units',
        'power',
    ]
    args = parser.parse_args(params)
    amplitude = args.gps_sv[0].getAmplitude()
    assert isinstance(amplitude, AmplitudePoly)
    assert amplitude.coeffs == ()
    assert amplitude.units == AmplitudePoly.UNITS_POWER
Пример #21
0
def test_config():
  '''
  Test config
  '''
  try:
    CONFIG_FILE = 'test.conf'
    parser = prepareArgsParser()
    saved = parser.parse_args('--save-config {0}'.format(CONFIG_FILE).split())
    loaded = parser.parse_args('--load-config {0}'.format(CONFIG_FILE).split())

  finally:
    if os.path.isfile(CONFIG_FILE):
      os.remove(CONFIG_FILE)

  assert saved.__dict__['tcxo'].__dict__ == loaded.__dict__['tcxo'].__dict__

  for key, value in saved.__dict__.iteritems():
    if key == 'no_run' or key == 'tcxo':
      continue
    assert saved.__dict__[key] == loaded.__dict__[key]
Пример #22
0
def test_config():
    '''
  Test config
  '''
    try:
        CONFIG_FILE = 'test.conf'
        parser = prepareArgsParser()
        saved = parser.parse_args(
            '--save-config {0}'.format(CONFIG_FILE).split())
        loaded = parser.parse_args(
            '--load-config {0}'.format(CONFIG_FILE).split())

    finally:
        if os.path.isfile(CONFIG_FILE):
            os.remove(CONFIG_FILE)

    assert saved.__dict__['tcxo'].__dict__ == loaded.__dict__['tcxo'].__dict__

    for key, value in saved.__dict__.iteritems():
        if key == 'no_run' or key == 'tcxo':
            continue
        assert saved.__dict__[key] == loaded.__dict__[key]
Пример #23
0
def test_argparser_init():
    '''
  Argument parser initialization test
  '''
    parser = prepareArgsParser()
    assert isinstance(parser, argparse.ArgumentParser)