def test_delete_instance(self): """Tests basic delete instance functionality.""" watch = manifest_watch.ManifestWatch('/does/not/exist') watch = manifest_watch.ManifestWatch('/does/not/exist') watch._delete_instance('test.yml') self.assertEquals(1, treadmill.subproc.check_call.call_count) self.assertEquals(1, treadmill.subproc.check_call.call_count) self.assertEquals(1, time.sleep.call_count) self.assertEquals( 1, treadmill.spawn.manifest_watch.ManifestWatch._scan.call_count)
def watch_manifest_cmd(approot): """Spawn manifest watch process.""" watch = manifest_watch.ManifestWatch(approot) dirwatch = watch.get_dir_watch() watch.sync() while True: if dirwatch.wait_for_events(60): dirwatch.process_events()
def test_create_instance(self): """Tests basic create instance funtionality.""" watch = manifest_watch.ManifestWatch('/does/not/exist') watch._create_instance('test.yml') self.assertEquals(4, treadmill.fs.mkdir_safe.call_count) self.assertEquals(3, treadmill.utils.create_script.call_count) self.assertEquals( 1, treadmill.spawn.manifest_watch.ManifestWatch._scan.call_count)
def test_sync(self): """Tests the initial sync of the manifests.""" os.listdir.side_effect = [ ['.test1.yml', 'test4.yml', 'what'], ] watch = manifest_watch.ManifestWatch('/does/not/exist', 2) watch.sync() treadmill.spawn.manifest_watch.ManifestWatch._create_instance \ .assert_called_with('/does/not/exist/manifest/test4.yml')
def test_check_path(self): """Tests that the manifiest watch validates manifest filenames.""" watch = manifest_watch.ManifestWatch('/does/not/exist', 2) os.path.exists.return_value = False self.assertFalse(watch._check_path('test.yml')) os.path.exists.return_value = True self.assertFalse(watch._check_path('.test.yml')) self.assertFalse(watch._check_path('test')) self.assertTrue(watch._check_path('test.yml'))
def test_create_instance(self): """Tests basic create instance functionality.""" watch = manifest_watch.ManifestWatch('/does/not/exist', 2) watch._create_instance('test.yml') self.assertEqual(4, treadmill.fs.mkdir_safe.call_count) self.assertEqual(2, treadmill.utils.create_script.call_count) self.assertEqual(1, treadmill.fs.symlink_safe.call_count) io.open.assert_has_calls([ mock.call('/does/not/exist/apps/jobs/test/data/manifest', 'w'), mock.call('/does/not/exist/apps/jobs/test/timeout-finish', 'w') ], any_order=True) self.assertEqual( 1, treadmill.spawn.manifest_watch.ManifestWatch._scan.call_count)
def test_get_instance_path(self): """Tests that getting the instance path works correctly.""" watch = manifest_watch.ManifestWatch('/does/not/exist') path = watch._get_instance_path('test.yml') self.assertEqual(path, '/does/not/exist/init/tm.test')