def initialise_test(v,rheobase):
    v = switch_logic([v])
    v = v[0]
    k = v.name
    if not hasattr(v,'params'):
        v.params = {}
    if not 'injected_square_current' in v.params.keys():    
        v.params['injected_square_current'] = {}
    if v.passive == False and v.active == True:
        keyed = v.params['injected_square_current']
        v.params = active_values(keyed,rheobase)
        v.params['injected_square_current']['delay'] = DELAY
        v.params['injected_square_current']['duration'] = DURATION
    if v.passive == True and v.active == False:

        v.params['injected_square_current']['amplitude'] =  -10*pq.pA
        v.params['injected_square_current']['delay'] = PASSIVE_DELAY
        v.params['injected_square_current']['duration'] = PASSIVE_DURATION

    if v.name in str('RestingPotentialTest'):
        v.params['injected_square_current']['delay'] = PASSIVE_DELAY
        v.params['injected_square_current']['duration'] = PASSIVE_DURATION
        v.params['injected_square_current']['amplitude'] = 0.0*pq.pA    
        
    return v
    def format_test(self):
        from neuronunit.optimisation.optimization_management import switch_logic, active_values, passive_values
        # pre format the current injection dictionary based on pre computed
        # rheobase values of current injection.
        # This is much like the hooked method from the old get neab file.
        self.protocols = {}
        if not hasattr(self,'tests'):
            self.tests = copy.copy(self.tests)
        if hasattr(self.tests,'keys'):# is type(dict):
            tests = [key for key in self.tests.values()]
            self.tests = switch_logic(tests)#,self.tests.use_rheobase_score)
        else:
            self.tests = switch_logic(self.tests)



        for v in self.tests:
            k = v.name
            self.protocols[k] = {}
            if hasattr(v,'passive'):#['protocol']:
                if v.passive == False and v.active == True:
                    keyed = self.protocols[k]#.params
                    self.protocols[k] = active_values(keyed,self.rheobase)
                elif v.passive == True and v.active == False:
                    keyed = self.protocols[k]#.params
                    self.protocols[k] = passive_values(keyed)

            if v.name in str('RestingPotentialTest'):
                self.protocols[k]['injected_square_current'] = {}
                self.protocols[k]['injected_square_current']['amplitude'] = 0.0*qt.pA
            keyed = v.params['injected_square_current']
            v.params['t_max'] = keyed['delay']+keyed['duration'] + 200.0*pq.ms
        return self.tests