Esempio n. 1
0
    def setup_method(self):
        self.dummyMainNamespace = namespace = {}
        namespace['notAScannable'] = 3.124
        namespace['scnA'] = SingleFieldDummyScannable('scnA')
        namespace['scnB'] = SingleFieldDummyScannable('scnB')
        namespace['scnC'] = SingleFieldDummyScannable('scnC')
        namespace['scnD'] = SingleFieldDummyScannable('scnD')
        namespace['scnNone'] = \
            NoneReturningSingleFieldDummyScannable('scnNone')
        namespace['scnBad'] = BadSingleFieldDummyScannable('scnBad')

        diffcalc.gdasupport.minigda.command.ROOT_NAMESPACE_DICT = \
            self.dummyMainNamespace
        self.pos = Pos()
Esempio n. 2
0
    def test__parseScanArgsIntoScannableArgGroups(self):
        scnA = SingleFieldDummyScannable('scnA')
        scnB = SingleFieldDummyScannable('scnB')
        scnC = SingleFieldDummyScannable('scnC')
        scnD = SingleFieldDummyScannable('scnD')

        scanargs = (scnA, 1, 2, 3, scnB, [4, 5, 6], scnC, scnD, 1.123456)
        r = self.scan._parseScanArgsIntoScannableArgGroups(scanargs)
        result = [
            r[0].scannable, r[0].args, r[1].scannable, r[1].args,
            r[2].scannable, r[2].args, r[3].scannable, r[3].args
        ]
        desired = [
            scnA, [1, 2, 3], scnB, [
                [4, 5, 6],
            ], scnC,
            list(), scnD, [1.123456]
        ]
        assert result == desired
 def testSomethingUnrelated(self):
     a = SingleFieldDummyScannable('a')
     print isinstance(a, Scannable)
Esempio n. 4
0
 def test__Call__(self):
     scn4 = SingleFieldDummyScannable('scn4')
     scn4.setLevel(4)
     scn5a = SingleFieldDummyScannable('scn5a')
     scn5a.setLevel(5)
     scn5b = SingleFieldDummyScannable('scn5b')
     scn5b.setLevel(5)
     scn6 = SingleFieldDummyScannable('scn6')
     scn6.setLevel(6)
     self.scan.__call__(scn5a, 1, 3, 1, scn6, 1, scn5b, scn4)
Esempio n. 5
0
    def test__reorderGroupsAccordingToLevel(self):
        scn4 = SingleFieldDummyScannable('scn4')
        scn4.setLevel(4)
        scn5a = SingleFieldDummyScannable('scn5a')
        scn5a.setLevel(5)
        scn5b = SingleFieldDummyScannable('scn5b')
        scn5b.setLevel(5)
        scn6 = SingleFieldDummyScannable('scn6')
        scn6.setLevel(6)

        def t(scanargs):
            groups = self.scan._parseScanArgsIntoScannableArgGroups(scanargs)
            r = self.scan._reorderInnerGroupsAccordingToLevel(groups)
            return [r[0].scannable, r[1].scannable, r[2].scannable,
                    r[3].scannable]

        assert (t((scn5a, 1, 2, 3, scn6, 1, scn5b, scn4))
                == [scn5a, scn4, scn5b, scn6])
        assert (t((scn5a, 1, 3, scn6, 1, scn5b, scn4))
                == [scn4, scn5a, scn5b, scn6])
Esempio n. 6
0
import diffcalc.util  # @UnusedImport

try:
    from numpy import matrix
except ImportError:
    from numjy import matrix

import diffcalc.gdasupport.minigda.command
from test.tools import mneq_

from diffcalc import settings
import diffcalc.hkl.you.calc
diffcalc.gdasupport.minigda.command.ROOT_NAMESPACE_DICT = globals()
pos = diffcalc.gdasupport.minigda.command.Pos()

en = SingleFieldDummyScannable('en')  # keV
mu = SingleFieldDummyScannable('mu')
delta = SingleFieldDummyScannable('delta')
gam = SingleFieldDummyScannable('gam')
eta = SingleFieldDummyScannable('eta')
chi = SingleFieldDummyScannable('chi')
phi = SingleFieldDummyScannable('phi')
sixc_group = ScannableGroup('sixc', (mu, delta, gam, eta, chi, phi))

ubcalc_no = 1

you = None
def setup_module():
    global you
    settings.hardware = ScannableHardwareAdapter(sixc_group, en)
    settings.geometry = SixCircle()
Esempio n. 7
0
#_demo.append("pos phi 90")
#_demo.append("addref 0 1 0 'ref2'")
#_demo.append("checkub")


print '=' * 80
print "Creating dummy scannables:"
print "   mu, delta, gam, eta, chi, phi and en"
mu = SingleFieldDummyScannable('mu')
delta = SingleFieldDummyScannable('delta')
gam = SingleFieldDummyScannable('gam')
eta = SingleFieldDummyScannable('eta')
chi = SingleFieldDummyScannable('chi')
phi = SingleFieldDummyScannable('phi')

en = SingleFieldDummyScannable('en')
en.level = 3

virtual_angles = ('theta', 'qaz', 'alpha', 'naz', 'tau', 'psi', 'beta')
_objects = create_objects(
    engine_name='you',
    geometry='sixc',
    axis_scannable_list=(mu, delta, gam, eta, chi, phi),
    energy_scannable=en,
    hklverbose_virtual_angles_to_report=virtual_angles,
    simulated_crystal_counter_name='ct',
#    demo_commands=_demo
    )

#_objects['diffcalcdemo'].commands = demoCommands
add_objects_to_namespace(_objects, globals())
Esempio n. 8
0
 def test__Call__(self):
     scn4 = SingleFieldDummyScannable('scn4')
     scn4.setLevel(4)
     scn5a = SingleFieldDummyScannable('scn5a')
     scn5a.setLevel(5)
     scn5b = SingleFieldDummyScannable('scn5b')
     scn5b.setLevel(5)
     scn6 = SingleFieldDummyScannable('scn6')
     scn6.setLevel(6)
     self.scan.__call__(scn5a, 1, 3, 1, scn6, 1, scn5b, scn4)
Esempio n. 9
0
    def test__reorderGroupsAccordingToLevel(self):
        scn4 = SingleFieldDummyScannable('scn4')
        scn4.setLevel(4)
        scn5a = SingleFieldDummyScannable('scn5a')
        scn5a.setLevel(5)
        scn5b = SingleFieldDummyScannable('scn5b')
        scn5b.setLevel(5)
        scn6 = SingleFieldDummyScannable('scn6')
        scn6.setLevel(6)

        def t(scanargs):
            groups = self.scan._parseScanArgsIntoScannableArgGroups(scanargs)
            r = self.scan._reorderInnerGroupsAccordingToLevel(groups)
            return [
                r[0].scannable, r[1].scannable, r[2].scannable, r[3].scannable
            ]

        assert (t((scn5a, 1, 2, 3, scn6, 1, scn5b,
                   scn4)) == [scn5a, scn4, scn5b, scn6])
        assert (t(
            (scn5a, 1, 3, scn6, 1, scn5b, scn4)) == [scn4, scn5a, scn5b, scn6])