def set(self, key, value): """Set key to the specified value. :param key: The key to look in the object data. :param value: The value to set. """ set_value(self.data, key, value)
def invoke(self): full_path = os.path.abspath(self.args.JOB) job_file = self.retrieve_file(full_path, JOB_FILE_EXTENSIONS) job_dir = os.path.dirname(job_file) tests_dir = os.path.join(job_dir, TESTS_DIR) if os.path.isdir(tests_dir): tar_repo = None try: tar_repo = create_tar(tests_dir) encoded_tests = base64_encode(tar_repo) json_data = None with open(job_file, "r") as json_file: try: json_data = json.load(json_file) set_value(json_data, LAVA_TEST_SHELL_TAR_REPO_KEY, encoded_tests) except Exception: raise CommandError("Cannot read job file " "'{0}'.".format(job_file)) content = json.dumps(json_data, indent=4) write_file(job_file, content) print >> sys.stdout, "Job definition updated." finally: if tar_repo and os.path.isfile(tar_repo): os.unlink(tar_repo) else: raise CommandError("Cannot find tests directory.")
def test_set_value_2(self): data = copy.deepcopy(TEST_TEMPLATE) expected = "foo" set_value(data, "key11", expected) obtained = get_key(data, "key11") self.assertEquals(expected, obtained)