def setup(self):
     axis_names = ('mu', 'delta', 'gam', 'eta', 'chi', 'phi')
     virtual_angles = ('theta', 'qaz', 'alpha', 'naz', 'tau', 'psi', 'beta')
     self.objects = create_objects(
         engine_name='you',
         geometry='sixc',
         dummy_axis_names=axis_names,
         dummy_energy_name='en',
         hklverbose_virtual_angles_to_report=virtual_angles,
         simulated_crystal_counter_name='ct'
         )
     for name, obj in self.objects.iteritems():
         if inspect.ismethod(obj):
             globals()[name] = wrap_command_to_print_calls(
                                   obj, PRINT_WITH_USER_SYNTAX)
         else:
             globals()[name] = obj
                     'a_eq_b', 'mu', 'setu', 'eta', 'editref', 'con', 'setub', 'c2th',
                    'calcub', 'chi_par', 'hklverbose', 'allhkl'])

# Placeholders for names to be added to globals (for benefit of IDE)
delref = en = uncon = showref = l = hardware = checkub = listub = None
mu_par = saveubas = eta_par = ct = setmin = ub = setcut = chi = setlat = None
qaz = addref = swapref = newub = naz = sixc = gam = sim = None
phi = psi = sigtau = wl = setmax = dc = loadub = beta = hkl = delta = None
alpha = gam_par = trialub = delta_par = h = k = phi_par = a_eq_b = mu = setu = eta = None
editref = con = setub = c2th = calcub = chi_par = hklverbose = None


PRINT_WITH_USER_SYNTAX = True
diffcalc.gdasupport.factory.VERBOSE = False

pos = wrap_command_to_print_calls(Pos(globals()), PRINT_WITH_USER_SYNTAX)


def call_scannable(scn):
    print '\n>>> %s' % scn.name
    print scn.__str__()


class TestDiffcalcFactorySixc():
    """
    All the components used here are well tested. This integration test is
    mainly to get output for the manual, to help when tweaking the user
    interface, and to make sure it all works together.
    """

    def setup(self):