def testZExecuteAsync(self): pool = Midgard.ExecutionPool(max_n_threads=2) self.job_one.connect("execution-end", self.executionEndCallbackAsyncOne, None) self.job_two.connect("execution-end", self.executionEndCallbackAsyncTwo, None) pool.push(self.job_one) pool.push(self.job_two) time.sleep(1) pool = None self.assertEqual(self.async_callback_msg_end_one, "DONE END ASYNC ONE") self.assertEqual(self.async_callback_msg_end_two, "DONE END ASYNC TWO") deleted_one = self.bookstore_one.get_property("metadata").get_property("deleted") self.assertTrue(deleted_one) deleted_two = self.bookstore_two.get_property("metadata").get_property("deleted") self.assertTrue(deleted_two) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_one_name) self.assertEqual(len(bookstores), 0) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_two_name) self.assertEqual(len(bookstores), 0) self.assertEqual(self.job_one.is_running(), False) self.assertEqual(self.job_one.is_failed(), False) self.assertEqual(self.job_one.is_executed(), True) self.assertEqual(self.job_two.is_running(), False) self.assertEqual(self.job_two.is_failed(), False) self.assertEqual(self.job_two.is_executed(), True)
def testZExecuteAsync(self): pool = Midgard.ExecutionPool(max_n_threads = 2) self.job_one.connect("execution-end", self.executionEndCallbackAsyncOne, None) self.job_two.connect("execution-end", self.executionEndCallbackAsyncTwo, None) pool.push(self.job_one) pool.push(self.job_two) time.sleep(1) pool = None self.assertEqual(self.async_callback_msg_end_one, "DONE END ASYNC ONE") self.assertEqual(self.async_callback_msg_end_two, "DONE END ASYNC TWO") deleted_one = self.bookstore_one.get_property("metadata").get_property("deleted") self.assertTrue(deleted_one) deleted_two = self.bookstore_two.get_property("metadata").get_property("deleted") self.assertTrue(deleted_two) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_one_name) self.assertEqual(len(bookstores), 0) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_two_name) self.assertEqual(len(bookstores), 0) self.assertEqual(self.job_one.is_running(), False) self.assertEqual(self.job_one.is_failed(), False) self.assertEqual(self.job_one.is_executed(), True) self.assertEqual(self.job_two.is_running(), False) self.assertEqual(self.job_two.is_failed(), False) self.assertEqual(self.job_two.is_executed(), True)
def testZExecute(self): # job one self.job_one.connect("execution-start", self.executionStartCallback, None) self.job_one.connect("execution-end", self.executionEndCallback, None) self.job_one.execute() self.assertTrue(self.job_one.is_valid()) self.assertNotEqual(self.callback_msg_start, None) self.assertEqual(self.callback_msg_start, "DONE START") self.assertNotEqual(self.callback_msg_end, None) self.assertEqual(self.callback_msg_end, "DONE END") bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_one_name) self.assertEqual(len(bookstores), 0) self.assertEqual(self.job_one.is_running(), False) self.assertEqual(self.job_one.is_failed(), False) self.assertEqual(self.job_one.is_executed(), True) # job two self.job_two.connect("execution-start", self.executionStartCallback, None) self.job_two.connect("execution-end", self.executionEndCallback, None) self.job_two.execute() self.assertTrue(self.job_two.is_valid()) self.assertNotEqual(self.callback_msg_start, None) self.assertEqual(self.callback_msg_start, "DONE START") self.assertNotEqual(self.callback_msg_end, None) self.assertEqual(self.callback_msg_end, "DONE END") bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_two_name) self.assertEqual(len(bookstores), 0) self.assertEqual(self.job_two.is_running(), False) self.assertEqual(self.job_two.is_failed(), False) self.assertEqual(self.job_two.is_executed(), True) deleted_one = self.bookstore_one.get_property("metadata").get_property("deleted") self.assertTrue(deleted_one) deleted_two = self.bookstore_two.get_property("metadata").get_property("deleted") self.assertTrue(deleted_two)
def testZExecuteAsync(self): self.bookstore_one.set_property("name", self.bookstore_one_update_name) self.bookstore_two.set_property("name", self.bookstore_two_update_name) pool = Midgard.ExecutionPool(max_n_threads=2) self.job_one.connect("execution-end", self.executionEndCallbackAsync, None) self.job_two.connect("execution-end", self.executionEndCallbackAsync, None) pool.push(self.job_one) pool.push(self.job_two) time.sleep(1) pool = None time.sleep(1) self.assertEqual(self.async_callback_msg_end, "DONE END ASYNC") bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_one_update_name) self.assertEqual(len(bookstores), 1) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_two_update_name) self.assertEqual(len(bookstores), 1) self.assertEqual(self.job_one.is_running(), False) self.assertEqual(self.job_one.is_failed(), False) self.assertEqual(self.job_one.is_executed(), True) self.assertEqual(self.job_two.is_running(), False) self.assertEqual(self.job_two.is_failed(), False) self.assertEqual(self.job_two.is_executed(), True)
def testDelete_04_ObjectInWorkspace_FooBarFooBar(self): # set /Foo/Bar/FooBar workspace and get object workspace = Midgard.Workspace() self.manager.get_workspace_by_path(workspace, "/Foo/Bar/FooBar") self.mgd.set_workspace(workspace) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] # purge self.assertTrue(bookstore.purge(False)) # do not expect object from /Foo/Bar/FooBar bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 0) # expect object from /Foo/Bar workspace = Midgard.Workspace() self.manager.get_workspace_by_path(workspace, "/Foo/Bar") self.mgd.set_workspace(workspace) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) # expect object from /Foo workspace = Midgard.Workspace() self.manager.get_workspace_by_path(workspace, "/Foo") self.mgd.set_workspace(workspace) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1)
def testCreate_03_ObjectInWorkspace_FooBarFooBar(self): # set new workspace so we can query object from there workspace = Midgard.Workspace() self.manager.get_workspace_by_path(workspace, "/Foo/Bar/FooBar") self.mgd.set_workspace(workspace) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 0) bookstore = Midgard.Object.factory(self.mgd, "gir_test_book_store", None) bookstore.set_property("name", self.bookstoreName) bookstore.set_property("extra", self.extraFooBarFooBar) self.assertTrue(bookstore.create()) # test created object bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] self.assertEqual(bookstore.get_property("extra"), self.extraFooBarFooBar) # set default workspace and get object workspace = Midgard.Workspace() self.manager.get_workspace_by_path(workspace, "/Foo") self.mgd.set_workspace(workspace) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] self.assertEqual(bookstore.get_property("extra"), self.extraFoo)
def testZExecuteAsync(self): pool = Midgard.ExecutionPool(max_n_threads = 2) self.job_one.connect("execution-end", self.executionEndCallbackAsync, None) self.job_two.connect("execution-end", self.executionEndCallbackAsync, None) pool.push(self.job_one) pool.push(self.job_two) time.sleep(1) pool = None self.assertEqual(self.async_callback_msg_end, "DONE END ASYNC") bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_one_name) self.assertEqual(len(bookstores), 0) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstore_two_name) self.assertEqual(len(bookstores), 0) self.bookstore_one = None self.bookstore_two = None self.assertEqual(self.job_one.is_running(), False) self.assertEqual(self.job_one.is_failed(), False) self.assertEqual(self.job_one.is_executed(), True) self.assertEqual(self.job_two.is_running(), False) self.assertEqual(self.job_two.is_failed(), False) self.assertEqual(self.job_two.is_executed(), True)
def testDelete_06_ObjectInWorkspaceContext_FooBarFooBar(self): # set /Foo context and get object context = Midgard.WorkspaceContext() self.manager.get_workspace_by_path(context, "/Foo") self.mgd.set_workspace(context) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] self.assertTrue(bookstore.purge(False)) # expect object from /Foo/Bar bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 0)
def testCreate_01_ObjectInWorkspaceContext_Foo(self): bookstore = Midgard.Object.factory(self.mgd, "gir_test_book_store", None) bookstore.set_property("name", self.bookstoreName) bookstore.set_property("extra", self.extraFoo) self.assertTrue(bookstore.save()) # set new context so we can query object from there context = Midgard.WorkspaceContext() self.manager.get_workspace_by_path(context, "/Foo/Bar") self.mgd.set_workspace(context) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1)
def testCreate_02_ObjectInWorkspaceContext_FooBar(self): # set new context so we can query object from there context = Midgard.WorkspaceContext() self.manager.get_workspace_by_path(context, "/Foo/Bar") self.mgd.set_workspace(context) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] bookstore.set_property("extra", self.extraFooBar) self.assertTrue(bookstore.save()) # test updated object bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] self.assertEqual(bookstore.get_property("extra"), self.extraFooBar) # set default context and get object context = Midgard.WorkspaceContext() self.manager.get_workspace_by_path(context, "/Foo") self.mgd.set_workspace(context) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] self.assertEqual(bookstore.get_property("extra"), self.extraFoo)
def testCreate_03_ObjectInWorkspaceContext_FooBarFooBar(self): # set new context so we can query object from there context = Midgard.WorkspaceContext() self.manager.get_workspace_by_path(context, "/Foo/Bar/FooBar") self.mgd.set_workspace(context) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] bookstore.set_property("extra", self.extraFooBarFooBar) self.assertTrue(bookstore.save()) # test updated object bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] self.assertEqual(bookstore.get_property("extra"), self.extraFooBarFooBar) # set default context and get object context = Midgard.WorkspaceContext() self.manager.get_workspace_by_path(context, "/Foo") self.mgd.set_workspace(context) bookstores = BookStoreQuery.findByName(self.mgd, self.bookstoreName) self.assertEqual(len(bookstores), 1) bookstore = bookstores[0] self.assertEqual(bookstore.get_property("extra"), self.extraFoo)