Commit 91079fb0 authored by Marco Buttu's avatar Marco Buttu
Browse files

Fixed some bugs

* telescope -> self.telescope
* In setUpClass() only the operations required at the beginning
  of the test case
parent 0dc922b2
Loading
Loading
Loading
Loading
+11 −16
Original line number Diff line number Diff line
@@ -28,18 +28,13 @@ class CheckScanBaseTest(unittest2.TestCase):
    def setUpClass(cls):
        cls.client = PySimpleClient()
        cls.boss = cls.client.getComponent('MINORSERVO/Boss')
        if telescope == "SRT":
            axis_code = "SRP_TZ"
            recv_code = "KKG"
        else:
            axis_code = "Z"
            recv_code = "KKC"
               
    @classmethod
    def tearDownClass(cls):
        cls.client.releaseComponent('MINORSERVO/Boss')

    def setUp(self):

        self.antennaInfo = Antenna.TRunTimeParameters(
            targetName='dummy',
            azimuth=math.pi,
@@ -54,7 +49,7 @@ class CheckScanBaseTest(unittest2.TestCase):
        self.scan = MinorServo.MinorServoScan(
            range=50,
            total_time=500000000, # 50 seconds
            axis_code=self.axis_code,
            axis_code='SRP_TZ' if self.telescope == 'SRT' else 'Z',
            is_empty_scan=True)


@@ -62,7 +57,6 @@ class CheckScanTest(CheckScanBaseTest):

    def setUp(self):    
        super(CheckScanTest, self).setUp()
        code = self.recv_code

        # Wait (maximum one minute) in case the boss is parking
        if self.boss.isParking():
@@ -72,8 +66,9 @@ class CheckScanTest(CheckScanBaseTest):
            if self.boss.isParking():
                self.fail('The system can not exit form a parking state')

        if self.boss.getActualSetup() != code:
            self.boss.setup(code)
        setupCode = 'KKG' if self.telescope == 'SRT' else 'KKC'
        if self.boss.getActualSetup() != setupCode:
            self.boss.setup(setupCode)
            # Wait (maximum 5 minutes) in case the boss is starting
            t0 = datetime.now()
            while not self.boss.isReady() and (datetime.now() - t0).seconds < 60*5:
@@ -84,7 +79,7 @@ class CheckScanTest(CheckScanBaseTest):
        self.boss.setElevationTracking('OFF')
        self.boss.setASConfiguration('OFF')
        axes, units = self.boss.getAxesInfo()
        self.idx = axes.index(self.axis_code)
        self.idx = axes.index(self.scan.axis_code)

        getPosition = getattr(self, 'get%sPosition' %self.telescope)
        centerScanPosition = getPosition(
@@ -101,7 +96,7 @@ class CheckScanTest(CheckScanBaseTest):
        self.assertTrue(res)
        self.assertAlmostEqual(msInfo.centerScan, self.centerScan, delta=0.01)
        self.assertGreater(msInfo.startEpoch, getTimeStamp().value)
        self.assertEqual(msInfo.scanAxis, self.axis_code)
        self.assertEqual(msInfo.scanAxis, self.scan.axis_code)
        self.assertEqual(
                msInfo.timeToStop, 
                msInfo.startEpoch + self.scan.total_time)
@@ -116,7 +111,7 @@ class CheckScanTest(CheckScanBaseTest):
        self.assertAlmostEqual(msInfo.centerScan, self.centerScan, delta=0.01)
        self.assertTrue(msInfo.onTheFly)
        self.assertGreater(msInfo.startEpoch, getTimeStamp().value)
        self.assertEqual(msInfo.scanAxis, self.axis_code)
        self.assertEqual(msInfo.scanAxis, self.scan.axis_code)
        self.assertEqual(
                msInfo.timeToStop, 
                msInfo.startEpoch + self.scan.total_time)
@@ -130,7 +125,7 @@ class CheckScanTest(CheckScanBaseTest):
        self.assertAlmostEqual(msInfo.centerScan, self.centerScan, delta=0.01)
        self.assertFalse(msInfo.onTheFly)
        self.assertEqual(msInfo.startEpoch, startTime)
        self.assertEqual(msInfo.scanAxis, self.axis_code)
        self.assertEqual(msInfo.scanAxis, self.scan.axis_code)
        self.assertEqual(
                msInfo.timeToStop, 
                msInfo.startEpoch + self.scan.total_time)
@@ -145,7 +140,7 @@ class CheckScanTest(CheckScanBaseTest):
        self.assertAlmostEqual(msInfo.centerScan, self.centerScan, delta=0.01)
        self.assertTrue(msInfo.onTheFly)
        self.assertEqual(msInfo.startEpoch, startTime)
        self.assertEqual(msInfo.scanAxis, self.axis_code)
        self.assertEqual(msInfo.scanAxis, self.scan.axis_code)
        self.assertEqual(
                msInfo.timeToStop, 
                msInfo.startEpoch + self.scan.total_time)
+0 −52
Original line number Diff line number Diff line
from __future__ import with_statement

import os
import math
import unittest2

import MinorServo
import Management
import Antenna

from PyMinorServoTest import simunittest
from Acspy.Clients.SimpleClient import PySimpleClient
from MinorServoErrors import MinorServoErrorsEx
from Acspy.Common.TimeHelper import getTimeStamp

__author__ = "Marco Buttu <mbuttu@oa-cagliari.inaf.it>"

class TestStartScanInterface(unittest2.TestCase):
    """startScan() must raise the expected exceptions"""

    def setUp(self):
        client = PySimpleClient()
        self.boss = client.getComponent('MINORSERVO/Boss')

        self.scan = MinorServo.MinorServoScan(
            range=50,
            total_time=500000000, # 50 seconds
            axis_code='SRP_TZ',
            is_empty_scan=False)

        self.antennaInfo = Antenna.TRunTimeParameters(
            targetName='dummy',
            azimuth=math.pi,
            elevation=math.pi/8,
            startEpoch=getTimeStamp().value + 100000000,
            onTheFly=False,
            slewingTime=100000000,
            section=Antenna.ANT_SOUTH,
            axis=Management.MNG_TRACK,
            timeToStop=0)

    def test_not_ready(self):
        """Raise a MinorServoErrorsEx in case the system is not ready"""
        with self.assertRaises(MinorServoErrorsEx):
            self.boss.startScan(0, self.scan, self.antennaInfo) 


if __name__ == '__main__':
    if 'Configuration' in os.getenv('ACS_CDB'):
        unittest2.main() # Real test using the antenna CDB
    else:
        simunittest.run(TestStartScanInterface)