def setup_method(self): self.tmpdir = tempfile.mkdtemp() print self.tmpdir self.persister = UBCalculationJSONPersister(self.tmpdir, UBCalcStateEncoder) f = open(os.path.join(self.tmpdir, 'unexpected_file'), 'w') f.close()
def _createPersister(self): self.tmpdir = tempfile.mkdtemp() print self.tmpdir self.persister = UBCalculationJSONPersister(self.tmpdir) f = open(os.path.join(self.tmpdir, 'unexpected_file'), 'w') f.close() return self.persister
def setup_method(self): self.tempdir = tempfile.mkdtemp() geometry = SixCircle() # pass through hardware = Mock() names = 'm', 'd', 'n', 'e', 'c', 'p' hardware.get_axes_names.return_value = names self.tmpdir = tempfile.mkdtemp() print self.tmpdir self.ubcalc = UBCalculation(hardware, geometry, UBCalculationJSONPersister(self.tmpdir), YouUbCalcStrategy())
class TestUBCalculationJSONPersister(object): def setup_method(self): self.tmpdir = tempfile.mkdtemp() print self.tmpdir self.persister = UBCalculationJSONPersister(self.tmpdir, UBCalcStateEncoder) f = open(os.path.join(self.tmpdir, 'unexpected_file'), 'w') f.close() def test_list_with_empty_dir(self): eq_(self.persister.list(), []) def test_save_load(self): d = {'a': 1, 'b': 2} self.persister.save(d, 'first') eq_(self.persister.load('first'), d) def test_save_overwites(self): d1 = {'a': 1, 'b': 2} self.persister.save(d1, 'first') eq_(self.persister.load('first'), d1) d2 = {'a': 3, 'b': 4, 'c': 5} self.persister.save(d2, 'first') eq_(self.persister.load('first'), d2) def test_list(self): d = {'a': 1, 'b': 2} self.persister.save(d, 'first') eq_(self.persister.list(), ['first']) def test_multiple_list(self): d = {'a': 1, 'b': 2} self.persister.save(d, 'first_written') time.sleep(1.) eq_(self.persister.list(), ['first_written']) self.persister.save(d, 'second_written') time.sleep(1.) eq_(self.persister.list(), ['second_written', 'first_written']) self.persister.save(d, 'third_written') time.sleep(1.) eq_(self.persister.list(), ['third_written', 'second_written', 'first_written']) def test_remove_list(self): d = {'a': 1, 'b': 2} self.persister.save(d, 'first') self.persister.remove('first') eq_(self.persister.list(), [])
except NameError: IPYTHON = False module_name = sys.argv[1] #3 if IPYTHON else 1] debug = sys.argv[2] == 'True' #4 if IPYTHON else 2]) print print bold('-' * 34 + ' DIFFCALC ' + '-' * 35) # configure persisentence DIFFCALC_VAR = os.path.join(os.path.expanduser('~'), '.diffcalc', module_name) if not os.path.exists(DIFFCALC_VAR): print "Making diffcalc var folder:'%s'" % DIFFCALC_VAR os.makedirs(DIFFCALC_VAR) diffcalc.settings.ubcalc_persister = UBCalculationJSONPersister(DIFFCALC_VAR) # configure debug diffcalc.util.DEBUG = debug if debug: print "WARNING: debug mode on; help for command syntax errors disabled." # import script script = os.path.join(DIFFCALC_ROOT, 'startup', module_name) + '.py' print "Startup script: '%s'" % script namespace = {} execfile(script, namespace) globals().update(namespace) diffcalc.gdasupport.minigda.command.ROOT_NAMESPACE_DICT = dict(namespace) print bold('-' * 36 + ' Help ' + '-' * 37)
IPYTHON = False try: from gda.device.scannable.scannablegroup import ScannableGroup from gdascripts.scannable.dummy import SingleInputDummy as Dummy from diffcmd.diffcmd_utils import alias_commands GDA = True except ImportError: # Not running in gda environment so fall back to minigda emulation from diffcalc.gdasupport.minigda.scannable import ScannableGroup from diffcalc.gdasupport.minigda.scannable import SingleFieldDummyScannable as Dummy GDA = False HELP_STRING = \ """Quick: https://github.com/DiamondLightSource/diffcalc/blob/master/README.rst Manual: http://diffcalc.readthedocs.io/en/latest/youmanual.html Type: > help ub > help hkl""" if GDA: from gda.configuration.properties import LocalProperties # @UnresolvedImport var_folder = LocalProperties.get("gda.var") diffcalc_persistance_path = os.path.join(var_folder, 'diffcalc') if not os.path.exists(diffcalc_persistance_path): print "Making diffcalc var folder:'%s'" % diffcalc_persistance_path os.makedirs(diffcalc_persistance_path) settings.ubcalc_persister = UBCalculationJSONPersister( diffcalc_persistance_path, YouStateEncoder) # else: should have been set if outside GDA
def setUp(self): self.tmpdir = tempfile.mkdtemp() print self.tmpdir self.persister = UBCalculationJSONPersister(self.tmpdir) f = open(os.path.join(self.tmpdir, 'unexpected_file'), 'w') f.close()
class TestUBCalculationJSONPersister(unittest.TestCase): def setUp(self): self.tmpdir = tempfile.mkdtemp() print self.tmpdir self.persister = UBCalculationJSONPersister(self.tmpdir) f = open(os.path.join(self.tmpdir, 'unexpected_file'), 'w') f.close() def test_list_with_empty_dir(self): eq_(self.persister.list(), []) def test_save_load(self): d = {'a' : 1, 'b': 2} self.persister.save(d, 'first') eq_(self.persister.load('first'), d) def test_save_overwites(self): d1 = {'a' : 1, 'b': 2} self.persister.save(d1, 'first') eq_(self.persister.load('first'), d1) d2 = {'a' : 3, 'b': 4, 'c' : 5} self.persister.save(d2, 'first') eq_(self.persister.load('first'), d2) def test_list(self): d = {'a' : 1, 'b': 2} self.persister.save(d, 'first') eq_(self.persister.list(), ['first']) def test_multiple_list(self): d = {'a' : 1, 'b': 2} self.persister.save(d, 'first') time.sleep(.5) self.persister.save(d, 'second') time.sleep(.5) self.persister.save(d, 'alphabetically_first') eq_(self.persister.list(), ['alphabetically_first', 'second', 'first']) def test_remove_list(self): d = {'a' : 1, 'b': 2} self.persister.save(d, 'first') self.persister.remove('first') eq_(self.persister.list(), [])
__IPYTHON__ # @UndefinedVariable IPYTHON = True except NameError: IPYTHON = False module_name = sys.argv[1] #3 if IPYTHON else 1] debug = sys.argv[2] == 'True' #4 if IPYTHON else 2]) print print(bold('-' * 34 + ' DIFFCALC ' + '-' * 35)) # configure persisentence DIFFCALC_VAR = os.path.join(os.path.expanduser('~'), '.diffcalc', module_name) if not os.path.exists(DIFFCALC_VAR): print("Making diffcalc var folder:'%s'" % DIFFCALC_VAR) os.makedirs(DIFFCALC_VAR) diffcalc.settings.ubcalc_persister = UBCalculationJSONPersister( DIFFCALC_VAR, UBCalcStateEncoder) # configure debug diffcalc.util.DEBUG = debug if debug: print("WARNING: debug mode on; help for command syntax errors disabled.") # import script script = os.path.join(DIFFCALC_ROOT, 'startup', module_name) + '.py' print("Startup script: '%s'" % script) namespace = {} exec(open(script).read(), namespace) globals().update(namespace) diffcalc.gdasupport.minigda.command.ROOT_NAMESPACE_DICT = dict(namespace) print(bold('-' * 36 + ' Help ' + '-' * 37))