Esempio n. 1
0
    def test_draw_conditionals(self):
        r = copy.copy(self.r)

        r.allowTimeOut = True
        r.timedOut = False
        r.maxTime = -1
        r.noResponse = False
        r.disappear = True
        r.draw()

        # miss lines: if self.myMouse.getPressed()[0]:

        r = copy.copy(self.r)
        r.beyondMinTime = True
        r.showAccept = True
        r.noResponse = False
        r.decisionTime = 0
        r.draw()

        r = RatingScale(self.win,
                        singleClick=True,
                        markerStart=1,
                        marker='glow',
                        markerExpansion=-10,
                        autoLog=False)
        r.draw()

        r = RatingScale(self.win,
                        singleClick=True,
                        markerStart=-1,
                        autoLog=False)
        r.draw()

        r = RatingScale(self.win,
                        showAccept=True,
                        choices=['a', 'b'],
                        autoLog=False)
        r.showValue = True
        r.markerPlacedAt = 1
        r.markerPlaced = True
        r.draw()
        r.showvalue = False
        r.draw()

        r = RatingScale(self.win, labels=['a', 'b', 'c'], autoLog=False)
        r = RatingScale(self.win,
                        tickMarks=[1, 2, 3],
                        labels=None,
                        autoLog=False)
        r = RatingScale(self.win, leftKeys=['s'], autoLog=False)
        r.markerPlaced = False
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
Esempio n. 2
0
    def test_draw_conditionals(self):
        r = copy.copy(self.r)

        r.allowTimeOut = True
        r.timedOut = False
        r.maxTime = -1
        r.noResponse = False
        r.disappear = True
        r.draw()

        # miss lines: if self.myMouse.getPressed()[0]:

        r = copy.copy(self.r)
        r.beyondMinTime = True
        r.showAccept = True
        r.noResponse = False
        r.decisionTime = 0
        r.draw()

        r = RatingScale(self.win, singleClick=True, markerStart=1, marker='glow', markerExpansion=-10, autoLog=False)
        r.draw()

        r = RatingScale(self.win, singleClick=True, markerStart=-1, autoLog=False)
        r.draw()

        r = RatingScale(self.win, showAccept=True, choices=['a', 'b'], autoLog=False)
        r.showValue = True
        r.markerPlacedAt = 1
        r.markerPlaced = True
        r.draw()
        r.showvalue = False
        r.draw()

        r = RatingScale(self.win, labels=['a', 'b', 'c'], autoLog=False)
        r = RatingScale(self.win, tickMarks=[1,2,3], labels=None, autoLog=False)
        r = RatingScale(self.win, leftKeys=['s'], autoLog=False)
        r.markerPlaced = False
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
Esempio n. 3
0
    def test_draw_conditionals(self):
        r = RatingScale(self.win)

        # 934-40, 944-45 if self.allowTimeOut ....:
        r.allowTimeOut = True
        r.timedOut = False
        r.maxTime = -1
        r.noResponse = False
        r.disappear = True
        r.draw()

        # 1049-1061  if self.myMouse.getPressed()[0]:

        # 1066-1072  if not self.noResponse and self.decisionTime == 0:
        r = RatingScale(self.win)
        r.beyondMinTime = True
        r.showAccept = True
        r.noResponse = False
        r.decisionTime = 0
        r.draw()

        r = RatingScale(self.win, singleClick=True, markerStyle='glow', markerExpansion=-10)
        r.draw()
        #del r.markerPlacedAt  # 989
        #r.draw()

        # 1006
        r = RatingScale(self.win, showAccept=True, choices=['a', 'b'])
        r.showValue = True
        r.markerPlacedAt = 1
        r.markerPlaced = True
        r.draw()
        r.showvalue = False
        r.draw()

        r = RatingScale(self.win, leftKeys=['s'])
        r.markerPlaced = False
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
Esempio n. 4
0
    def test_key_presses(self):
        r = RatingScale(self.win)
        r.markerPlaced = True
        r.allKeys = ['s']
        r.markerPlacedAt = 2

        # 1014-1042
        r.mouseOnly = False
        r.skipKeys = ['s']
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
        r.skipKeys = []

        r.respKeys = ['s']
        r.enableRespKeys = True
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
        r.respKeys = []

        r = RatingScale(self.win)
        r.markerPlaced = True
        r.allKeys = ['s']
        r.markerPlacedAt = 2
        r.leftKeys = ['s']
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
        r.leftKeys = []

        r.rightKeys = ['s']
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
        r.rightKeys = []

        r.acceptKeys = ['s']
        r.beyondMinTime = True
        event._onPygletKey(symbol='s', modifiers=None, emulated=True)
        r.draw()
Esempio n. 5
0
    def test_init_scales(self):
        # ideally: give default, non-default, and bad values for all params

        # defaults: ---------
        r = copy.copy(self.r)
        assert len(repr(r).split(',')) == 48
        assert (r.low, r.high, r.precision) == (1, 7, 1)
        assert (r.markerStyle, r.markerStart, r.markerPlaced) == ('triangle', None, False)

        # non-defaults and some bad: ---------
        r = RatingScale(self.win, low=-10., high=10., autoLog=False)
        assert (r.low, r.high) == (-10, 10)
        assert (type(r.low), type(r.high)) == (int, int)
        r = RatingScale(self.win, low='a', high='s', autoLog=False)  # bad vals
        assert (r.low, r.high) == (1, 2)
        r = RatingScale(self.win, low=10, high=2, autoLog=False)
        assert r.high == r.low + 1 == 11
        assert r.precision == 100

        ch = ['a', 'b']
        r = RatingScale(self.win, choices=ch, precision=10, autoLog=False)
        assert r.precision == 1  # because choices
        assert r.respKeys == map(str, range(len(ch)))
        r = RatingScale(self.win, choices=['a'], autoLog=False)

        r = RatingScale(self.win, tickMarks=[1,2,3], labels=['a','b'], autoLog=False)

        for i in [-1, 0.3, 1.2, 9, 12, 100, 1000]:
            r = RatingScale(self.win, precision=i, autoLog=False)
            assert r.precision in [1, 10, 100]
        r = RatingScale(self.win, textSize=3, textColor=0.3, autoLog=False)

        r = RatingScale(self.win, textFont=utils.TESTS_FONT, autoLog=False)
        assert r.accept.font == r.scaleDescription.font == utils.TESTS_FONT

        r = RatingScale(self.win, showValue=False, showAccept=False, acceptKeys=[], autoLog=False)
        r = RatingScale(self.win, showAccept=False, mouseOnly=True, singleClick=False, autoLog=False)
        assert r.mouseOnly == False

        r = RatingScale(self.win, acceptKeys='a', autoLog=False)
        r = RatingScale(self.win, acceptKeys=['a','b'], autoLog=False)
        r = RatingScale(self.win, acceptPreText='a', acceptText='a', acceptSize=2.1, autoLog=False)

        r = RatingScale(self.win, leftKeys=['a'], rightKeys=['a'], autoLog=False)
        assert r.respKeys == map(str, range(1,8))
        r = RatingScale(self.win, respKeys=['a'], acceptKeys=['a'], autoLog=False)
        r = RatingScale(self.win, acceptKeys=['1'], autoLog=False)
        r = RatingScale(self.win, tickHeight=-1, autoLog=False)

        r = RatingScale(self.win, markerStart=3, tickHeight=False, autoLog=False)
        r = RatingScale(self.win, markerStart='a', choices=['a','b'], autoLog=False)
        assert r.choices == ['a', 'b']
        r = RatingScale(self.win, markerColor='dark red', lineColor='Black', autoLog=False)
        assert r.marker.fillColor == r.marker.lineColor == 'darkred'
        assert r.line.lineColor == 'Black'
        r = RatingScale(self.win, marker='glow', markerExpansion=0, autoLog=False)
        r.markerPlaced = True
        r.draw()
        r.markerExpansion = 10
        r.draw()

        r = RatingScale(self.win, skipKeys=None, mouseOnly=True, singleClick=True, autoLog=False)
        r = RatingScale(self.win, pos=(0,.5), skipKeys='space', autoLog=False)
        r = RatingScale(self.winpix, pos=[1], autoLog=False)
        r = RatingScale(self.winpix, pos=['a','x'], autoLog=False)
        assert r.pos == [0.0, -50.0 / r.win.size[1]]
        x, y = -3, 17
        r = RatingScale(self.winpix, pos=(x, y), size=.2, stretch=2, autoLog=False)
        assert r.offsetHoriz == 2. * x / r.win.size[0]
        assert r.offsetVert == 2. * y / r.win.size[1]
        assert r.stretch == 2
        assert r.size == 0.2 * 0.6  # internal rescaling by 0.6

        r = RatingScale(self.win, stretch='foo', size='foo', autoLog=False)
        assert r.stretch == 1
        assert r.size == 0.6
        r = RatingScale(self.win, size=5, autoLog=False)
        assert r.size == 3

        r = RatingScale(self.win, minTime=0.001, maxTime=1, autoLog=False)
        assert r.minTime == 0.001 and r.maxTime == 1
        r = RatingScale(self.win, minTime='x', maxTime='s', name='name', autoLog=False)
        assert r.minTime == 1.0 and r.maxTime == 0.
        assert r.name == 'name' and r.autoLog == False
Esempio n. 6
0
    def test_init_scales(self):
        # ideally: give default, non-default, and bad values for all params

        # defaults: ---------
        r = copy.copy(self.r)
        assert len(repr(r).split(',')) == 49
        assert (r.low, r.high, r.precision) == (1, 7, 1)
        assert (r.markerStyle, r.markerStart, r.markerPlaced) == ('triangle',
                                                                  None, False)

        # non-defaults and some bad: ---------
        r = RatingScale(self.win, low=-10., high=10., autoLog=False)
        assert (r.low, r.high) == (-10, 10)
        assert (type(r.low), type(r.high)) == (int, int)
        r = RatingScale(self.win, low='a', high='s', autoLog=False)  # bad vals
        assert (r.low, r.high) == (1, 2)
        r = RatingScale(self.win, low=10, high=2, autoLog=False)
        assert r.high == r.low + 1 == 11
        assert r.precision == 100

        ch = ['a', 'b']
        r = RatingScale(self.win, choices=ch, precision=10, autoLog=False)
        assert r.precision == 1  # because choices
        assert r.respKeys == map(str, range(len(ch)))
        r = RatingScale(self.win, choices=['a'], autoLog=False)

        r = RatingScale(self.win,
                        tickMarks=[1, 2, 3],
                        labels=['a', 'b'],
                        autoLog=False)

        for i in [-1, 0.3, 1.2, 9, 12, 100, 1000]:
            r = RatingScale(self.win, precision=i, autoLog=False)
            assert r.precision in [1, 10, 100]
        r = RatingScale(self.win, textSize=3, textColor=0.3, autoLog=False)

        r = RatingScale(self.win, textFont=utils.TESTS_FONT, autoLog=False)
        assert r.accept.font == r.scaleDescription.font == utils.TESTS_FONT

        r = RatingScale(self.win,
                        showValue=False,
                        showAccept=False,
                        acceptKeys=[],
                        autoLog=False)
        r = RatingScale(self.win,
                        showAccept=False,
                        mouseOnly=True,
                        singleClick=False,
                        autoLog=False)
        assert r.mouseOnly == False

        r = RatingScale(self.win, acceptKeys='a', autoLog=False)
        r = RatingScale(self.win, acceptKeys=['a', 'b'], autoLog=False)
        r = RatingScale(self.win,
                        acceptPreText='a',
                        acceptText='a',
                        acceptSize=2.1,
                        autoLog=False)

        r = RatingScale(self.win,
                        leftKeys=['a'],
                        rightKeys=['a'],
                        autoLog=False)
        assert r.respKeys == map(str, range(1, 8))
        r = RatingScale(self.win,
                        respKeys=['a'],
                        acceptKeys=['a'],
                        autoLog=False)
        r = RatingScale(self.win, acceptKeys=['1'], autoLog=False)
        r = RatingScale(self.win, tickHeight=-1, autoLog=False)

        r = RatingScale(self.win,
                        markerStart=3,
                        tickHeight=False,
                        autoLog=False)
        r = RatingScale(self.win,
                        markerStart='a',
                        choices=['a', 'b'],
                        autoLog=False)
        assert r.choices == ['a', 'b']
        r = RatingScale(self.win,
                        markerColor='dark red',
                        lineColor='Black',
                        autoLog=False)
        assert r.marker.fillColor == r.marker.lineColor == 'darkred'
        assert r.line.lineColor == 'Black'
        r = RatingScale(self.win,
                        marker='glow',
                        markerExpansion=0,
                        autoLog=False)
        r.markerPlaced = True
        r.draw()
        r.markerExpansion = 10
        r.draw()

        r = RatingScale(self.win,
                        skipKeys=None,
                        mouseOnly=True,
                        singleClick=True,
                        autoLog=False)
        r = RatingScale(self.win, pos=(0, .5), skipKeys='space', autoLog=False)
        r = RatingScale(self.winpix, pos=[1], autoLog=False)
        r = RatingScale(self.winpix, pos=['a', 'x'], autoLog=False)
        assert r.pos == [0.0, -50.0 / r.win.size[1]]
        x, y = -3, 17
        r = RatingScale(self.winpix,
                        pos=(x, y),
                        size=.2,
                        stretch=2,
                        autoLog=False)
        assert r.offsetHoriz == 2. * x / r.win.size[0]
        assert r.offsetVert == 2. * y / r.win.size[1]
        assert r.stretch == 2
        assert r.size == 0.2 * 0.6  # internal rescaling by 0.6

        r = RatingScale(self.win, stretch='foo', size='foo', autoLog=False)
        assert r.stretch == 1
        assert r.size == 0.6
        r = RatingScale(self.win, size=5, autoLog=False)
        assert r.size == 3

        r = RatingScale(self.win, minTime=0.001, maxTime=1, autoLog=False)
        assert r.minTime == 0.001 and r.maxTime == 1
        r = RatingScale(self.win,
                        minTime='x',
                        maxTime='s',
                        name='name',
                        autoLog=False)
        assert r.minTime == 1.0 and r.maxTime == 0.
        assert r.name == 'name' and r.autoLog == False
Esempio n. 7
0
    def test_init_scales(self):
        # give non-default values for all params, give some bad values too

        r = RatingScale(self.win)
        r = RatingScale(self.win, low=0, high=1000)
        r = RatingScale(self.win, low='a', high='s')
        assert r.low == 1 and r.high == 2

        r = RatingScale(self.win, low=10, high=2)
        assert r.high == r.low + 1
        assert r.precision == 100

        r = RatingScale(self.win, scale='scale')
        r = RatingScale(self.win, choices=['a', 'b'])
        ch = ['a', 'b']
        r = RatingScale(self.win, choices=ch, precision=10)
        assert r.precision == 1
        assert r.respKeys == map(str, range(len(ch)))
        r = RatingScale(self.win, choices=['a'])

        r = RatingScale(self.win, lowAnchorText=1, highAnchorText='a lot')
        r = RatingScale(self.win, tickMarks=[1,2,3])
        r = RatingScale(self.win, tickMarks=[1,2,3], labels=['a','b'])

        r = RatingScale(self.win, labels=['a', 'b'])
        for i in [-1, 0.3, 1.2, 9, 12, 100, 1000]:
            r = RatingScale(self.win, precision=i)
            assert r.precision in [1, 10, 100]
        r = RatingScale(self.win, textSizeFactor=3, textColor=0.3)
        r = RatingScale(self.win, textSizeFactor='a')

        r = RatingScale(self.win, textFont=utils.TESTS_FONT)
        r = RatingScale(self.win, showValue=False)
        r = RatingScale(self.win, showScale=False)
        r = RatingScale(self.win, showAnchors=False)
        r = RatingScale(self.win, showAccept=False, acceptKeys=[])
        r = RatingScale(self.win, showAccept=False, mouseOnly=True, singleClick=False)
        assert r.mouseOnly == False

        r = RatingScale(self.win, acceptKeys='a')
        r = RatingScale(self.win, acceptKeys=['a','b'])
        r = RatingScale(self.win, acceptPreText='a')
        r = RatingScale(self.win, acceptText='a')
        r = RatingScale(self.win, acceptSize=2.1)

        r = RatingScale(self.win, leftKeys=['a'], rightKeys=['a'])
        assert r.respKeys == map(str, range(1,8))
        r = RatingScale(self.win, respKeys=['a'], acceptKeys=['a'])
        r = RatingScale(self.win, acceptKeys=['1'])

        r = RatingScale(self.win, lineColor='Black')
        r = RatingScale(self.win, ticksAboveLine=False)
        r = RatingScale(self.win, markerStart=3)
        r = RatingScale(self.win, markerStart='a', choices=['a','b'])
        r = RatingScale(self.win, markerColor='dark red')
        r = RatingScale(self.win, markerStyle='glow', markerExpansion=0, displaySizeFactor=2)
        r.markerPlaced = True
        r.draw()
        r.markerExpansion = 10
        r.draw()

        r = RatingScale(self.win, escapeKeys=['space'])
        r = RatingScale(self.win, escapeKeys='space')
        r = RatingScale(self.win, allowSkip=False)
        r = RatingScale(self.win, allowSkip=True, skipKeys=None)
        r = RatingScale(self.win, mouseOnly=True, singleClick=True)
        r = RatingScale(self.win, displaySizeFactor=.2, stretchHoriz=2)
        r = RatingScale(self.win, pos=(0,.5), skipKeys='space')
        r = RatingScale(self.winpix, pos=[1])
        r = RatingScale(self.winpix, pos=['a','x'])
        assert r.pos == [0.0, -50.0 / r.win.size[1]]
        x, y = -3, 17
        r = RatingScale(self.winpix, pos=(x, y))
        assert r.offsetHoriz == 2. * x / r.win.size[0]
        assert r.offsetVert == 2. * y / r.win.size[1]

        r = RatingScale(self.win, stretchHoriz='foo')
        assert r.stretchHoriz == 1
        r = RatingScale(self.win, displaySizeFactor='foo')
        assert r.displaySizeFactor == 0.6
        r = RatingScale(self.win, displaySizeFactor=5)

        r = RatingScale(self.win, minTime=0.001, maxTime=1)
        assert r.minTime == 0.001 and r.maxTime == 1
        r = RatingScale(self.win, minTime='x', maxTime='s')
        assert r.minTime == 1.0 and r.maxTime == 0.
        r = RatingScale(self.win, name='name', autoLog=False)
        assert r.name == 'name' and r.autoLog == False