Example #1
0
    def test_specific_target(self, INotifyRecursive, SyncWorker):
        INotifyRecursive.return_value = FakeINotify(
            events={
                Event(wd=1, mask=flags.CREATE, cookie=None, name="hello.txt"),
                Event(wd=2, mask=flags.CREATE, cookie=None, name="bar.txt"),
            },
            wd_map={
                1: "/home/jon/code/",
                2: "/home/jon/code/hoot"
            },
        )

        args = argparse.Namespace(targets=["foo"],
                                  conflicts="ignore",
                                  read_delay=0)
        config = {
            "targets": {
                "foo": {
                    "local_folder": "/home/jon/code",
                    "s3_uri": "s3://bucket/code",
                    "aws_secret_access_key": "23232323",
                    "aws_access_key_id": "########",
                    "region_name": "eu-west-2",
                },
                "bar": {},
            }
        }
        command = DaemonCommand(args, config, create_logger())
        command.run(terminator=self.single_term)

        assert SyncWorker.call_count == 2
        assert INotifyRecursive.call_count == 1
Example #2
0
    def test_specific_target(self, INotifyRecursive, SyncWorker):
        INotifyRecursive.return_value = FakeINotify(events={
            Event(wd=1, mask=flags.CREATE, cookie=None, name="hello.txt"),
            Event(wd=2, mask=flags.CREATE, cookie=None, name="bar.txt"),
        },
                                                    wd_map={
                                                        1: '/home/jon/code/',
                                                        2:
                                                        '/home/jon/code/hoot',
                                                    })

        args = argparse.Namespace(targets=['foo'],
                                  conflicts='ignore',
                                  read_delay=0)
        config = {
            'targets': {
                'foo': {
                    'local_folder': '/home/jon/code',
                    's3_uri': 's3://bucket/code',
                    'aws_secret_access_key': '23232323',
                    'aws_access_key_id': '########',
                    'region_name': 'eu-west-2',
                },
                'bar': {},
            }
        }
        command = DaemonCommand(args, config, create_logger())
        command.run(terminator=self.single_term)

        assert SyncWorker.call_count == 2
        assert INotifyRecursive.call_count == 1
Example #3
0
    def test_no_targets(self, INotifyRecursive, SyncWorker, capsys):
        args = argparse.Namespace(targets=None,
                                  conflicts="ignore",
                                  read_delay=0)

        command = DaemonCommand(args, {"targets": {}}, create_logger())
        command.run(terminator=self.single_term)

        out, err = capsys.readouterr()
        assert out == ""
        assert err == ("No targets available\n" 'Use "add" command first\n')
        assert SyncWorker.call_count == 0
        assert INotifyRecursive.call_count == 0
Example #4
0
    def test_wrong_target(self, INotifyRecursive, SyncWorker, capsys):
        args = argparse.Namespace(targets=["foo"],
                                  conflicts="ignore",
                                  read_delay=0)

        command = DaemonCommand(args, {"targets": {
            "bar": {}
        }}, create_logger())
        command.run(terminator=self.single_term)

        out, err = capsys.readouterr()
        assert out == ""
        assert err == ("Unknown target: foo\n")
        assert SyncWorker.call_count == 0
        assert INotifyRecursive.call_count == 0
Example #5
0
    def test_os_not_supported(self, INotifyRecursive, SyncWorker, capsys):
        args = argparse.Namespace(targets=None,
                                  conflicts="ignore",
                                  read_delay=0)

        command = DaemonCommand(args, {}, create_logger())
        command.run(terminator=self.single_term)

        out, err = capsys.readouterr()
        assert out == ""
        assert err == (
            "Cannot run INotify on your operating system\n"
            "Only Linux machines are officially supported for this command\n")
        assert SyncWorker.call_count == 0
        assert INotifyRecursive.call_count == 0
Example #6
0
    def test_wrong_target(self, INotifyRecursive, SyncWorker, capsys):
        args = argparse.Namespace(targets=['foo'],
                                  conflicts='ignore',
                                  read_delay=0)

        command = DaemonCommand(
            args,
            {'targets': {
                'bar': {}
            }},
            create_logger(),
        )
        command.run(terminator=self.single_term)

        out, err = capsys.readouterr()
        assert out == ''
        assert err == ('Unknown target: foo\n')
        assert SyncWorker.call_count == 0
        assert INotifyRecursive.call_count == 0