Esempio n. 1
0
    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)
Esempio n. 2
0
    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()
Esempio n. 3
0
    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)
Esempio n. 4
0
    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')
Esempio n. 5
0
    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)
Esempio n. 7
0
    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')