def set_preferences(profile, prefs, enable_default_prefs=True): """Set all the preferences from dict in the profile's prefs.py""" from windmill.dep import mozrunner prefs_file = os.path.join(profile, 'user.js') f = open(prefs_file, 'w+') f.write('\n#MozRunner Prefs Start\n') if enable_default_prefs and hasattr(mozrunner, 'settings'): default_prefs = mozrunner.settings.get('MOZILLA_DEFAULT_PREFS') pref_lines = [ 'user_pref(%s, %s);' % (json.dumps(k), json.dumps(v)) for k, v in default_prefs.items() ] f.write('#MozRunner Default Prefs\n') for line in pref_lines: f.write(line + '\n') pref_lines = [ 'user_pref(%s, %s);' % (json.dumps(k), json.dumps(v)) for k, v in prefs.items() ] f.write('#MozRunner Preferences\n') for line in pref_lines: f.write(line + '\n') f.write('#MozRunner Prefs End\n') f.flush() f.close()
def test_object_transform_to_javascript(test): """Transform test object in to controller call in javascript.""" test = dict([( k, v, ) for k, v in test.items() if k == 'method' or k == 'params']) return json.dumps(test)
def create_json_test_file(suite_name, tests, location=None): """Transform and create a json test file.""" if location is None: location = os.path.join(windmill.settings['SAVES_PATH'], suite_name+'.json') f = open(location, 'w') for test in tests: # Strip keys that aren't part of the api test.pop('suite_name', None) ; test.pop('version', None) f.write(json.dumps(test)) f.write('\n') f.flush() f.close() return get_save_url(suite_name, 'json')
def set_preferences(profile, prefs, enable_default_prefs=True): """Set all the preferences from dict in the profile's prefs.py""" from windmill.dep import mozrunner prefs_file = os.path.join(profile, 'user.js') f = open(prefs_file, 'w+') f.write('\n#MozRunner Prefs Start\n') if enable_default_prefs and hasattr(mozrunner, 'settings'): default_prefs = mozrunner.settings.get('MOZILLA_DEFAULT_PREFS') pref_lines = ['user_pref(%s, %s);' % (json.dumps(k), json.dumps(v) ) for k, v in default_prefs.items()] f.write('#MozRunner Default Prefs\n') for line in pref_lines: f.write(line+'\n') pref_lines = ['user_pref(%s, %s);' % (json.dumps(k), json.dumps(v) ) for k, v in prefs.items()] f.write('#MozRunner Preferences\n') for line in pref_lines: f.write(line+'\n') f.write('#MozRunner Prefs End\n') f.flush() ; f.close()
def create_json_test_file(suite_name, tests, location=None): """Transform and create a json test file.""" if location is None: location = os.path.join(windmill.settings['SAVES_PATH'], suite_name + '.json') f = open(location, 'w') for test in tests: # Strip keys that aren't part of the api test.pop('suite_name', None) test.pop('version', None) f.write(json.dumps(test)) f.write('\n') f.flush() f.close() return get_save_url(suite_name, 'json')
def __call__(self, *args, **kwargs): # Need to handle keyword arguments per 1.1 spec request = {} request['version'] = '1.1' request['method'] = self.name if len(kwargs) is not 0: params = copy.copy(kwargs) index = 0 for arg in args: params[str(index)] = arg index = index + 1 elif len(args) is not 0: params = copy.copy(args) else: params = None request['params'] = params logger.debug('Created python request object %s' % str(request)) return self.call(json.dumps(request))
def _encode(self, result=None, error=None, jsonrpc_id=None): """Internal encoder method, handles error formatting, id persistence, and encoding via simplejson""" response = {} response['result'] = result if jsonrpc_id is not None: response['id'] = jsonrpc_id if error is not None: if hasattr(error, 'type'): error_type = str(error.type) error_message = str(error) else: error_type = 'JSONRPCError' error_message = str(error).strip('JSONRPC Error in: ') response['error'] = {'type':error_type, 'message':error_message} logger.debug('serializing %s' % str(response)) return json.dumps(response)
def test_object_transform_to_javascript(test): """Transform test object in to controller call in javascript.""" test = dict([(k, v,) for k, v in test.items() if k == 'method' or k == 'params']) return json.dumps(test)