public static void Main()
        {
            var webJobsDashboard = CloudConfigurationManager.GetSetting("AzureWebJobsDashboard");
            var webJobsStorage   = CloudConfigurationManager.GetSetting("AzureWebJobsStorage");
            var storageAcc       = CloudConfigurationManager.GetSetting("StorageAccount");

            if (string.IsNullOrWhiteSpace(webJobsStorage) || string.IsNullOrWhiteSpace(storageAcc) || string.IsNullOrWhiteSpace(webJobsDashboard))
            {
                Console.WriteLine("Please add the Azure Storage account credentials ['StorageAccount' & 'AzureWebJobsStorage' & 'AzureWebJobsDashboard'] in App.config");
                Console.Read();
                return;
            }
            else
            {
                var config = new TaskConfiguration()
                {
                    ConnectionString = storageAcc,
                    StorageElements  = new StorageElements(),
                };

                var factory = new ImageTaskFactory();
                foreach (var task in factory.Initialize(config))
                {
                    task.Start();
                }

                var host = new JobHost();
                host.RunAndBlock();
            }
        }
示例#2
0
        public static void Main()
        {
            var webJobsDashboard = CloudConfigurationManager.GetSetting("AzureWebJobsDashboard");
            var webJobsStorage = CloudConfigurationManager.GetSetting("AzureWebJobsStorage");
            var storageAcc = CloudConfigurationManager.GetSetting("StorageAccount");

            if (string.IsNullOrWhiteSpace(webJobsStorage) || string.IsNullOrWhiteSpace(storageAcc) || string.IsNullOrWhiteSpace(webJobsDashboard))
            {
                Console.WriteLine("Please add the Azure Storage account credentials ['StorageAccount' & 'AzureWebJobsStorage' & 'AzureWebJobsDashboard'] in App.config");
                Console.Read();
                return;
            }
            else
            {
                var config = new TaskConfiguration()
                {
                    ConnectionString = storageAcc,
                    StorageElements = new StorageElements(),
                };

                var factory = new ImageTaskFactory();
                foreach (var task in factory.Initialize(config))
                {
                    task.Start();
                }

                var host = new JobHost();
                host.RunAndBlock();
            }
        }
        public void InitializeStorageTask()
        {
            var elements = Substitute.For <IStorageElements>();

            elements.Container.Returns(Guid.NewGuid().ToString());
            elements.Table.Returns(Guid.NewGuid().ToString());
            elements.Queue.Returns(Guid.NewGuid().ToString());
            var config = new TaskConfiguration
            {
                StorageElements  = elements,
                Versions         = Substitute.For <IVersions>(),
                ConnectionString = connectionString,
            };

            var factory = new ImageTaskFactory();
            var tasks   = factory.Tasks(config);

            Assert.IsNotNull(tasks);
            var inits = from t in tasks
                        where t.GetType() == typeof(InitializeStorageTask)
                        select t;

            Assert.IsNotNull(inits);
            Assert.AreEqual(4, inits.Count());
        }
        public void TasksNull()
        {
            var elements = Substitute.For<IStorageElements>();
            elements.Container.Returns(Guid.NewGuid().ToString());
            elements.Table.Returns(Guid.NewGuid().ToString());
            elements.Queue.Returns(Guid.NewGuid().ToString());
            var config = new TaskConfiguration
            {
                StorageElements = elements,
                Versions = Substitute.For<IVersions>(),
                ConnectionString = connectionString,
            };

            var factory = new ImageTaskFactory();
            var tasks = factory.Tasks(config);

            Assert.IsNotNull(tasks);
        }
        public void TasksNull()
        {
            var elements = Substitute.For <IStorageElements>();

            elements.Container.Returns(Guid.NewGuid().ToString());
            elements.Table.Returns(Guid.NewGuid().ToString());
            elements.Queue.Returns(Guid.NewGuid().ToString());
            var config = new TaskConfiguration
            {
                StorageElements  = elements,
                Versions         = Substitute.For <IVersions>(),
                ConnectionString = connectionString,
            };

            var factory = new ImageTaskFactory();
            var tasks   = factory.Tasks(config);

            Assert.IsNotNull(tasks);
        }
        public void HasStorageQueueAutoScaler()
        {
            var elements = Substitute.For<IStorageElements>();
            elements.Container.Returns(Guid.NewGuid().ToString());
            elements.Table.Returns(Guid.NewGuid().ToString());
            elements.Queue.Returns(Guid.NewGuid().ToString());
            var config = new TaskConfiguration
            {
                StorageElements = elements,
                Versions = Substitute.For<IVersions>(),
                ConnectionString = connectionString,
            };

            var factory = new ImageTaskFactory();
            var tasks = factory.Tasks(config);

            Assert.IsNotNull(tasks);
            var task = (from t in tasks
                        where t.GetType() == typeof(StorageQueueAutoScaler<ImageQueued>)
                        select t).FirstOrDefault();

            Assert.IsNotNull(task);
        }
        public void HasStorageQueueAutoScaler()
        {
            var elements = Substitute.For <IStorageElements>();

            elements.Container.Returns(Guid.NewGuid().ToString());
            elements.Table.Returns(Guid.NewGuid().ToString());
            elements.Queue.Returns(Guid.NewGuid().ToString());
            var config = new TaskConfiguration
            {
                StorageElements  = elements,
                Versions         = Substitute.For <IVersions>(),
                ConnectionString = connectionString,
            };

            var factory = new ImageTaskFactory();
            var tasks   = factory.Tasks(config);

            Assert.IsNotNull(tasks);
            var task = (from t in tasks
                        where t.GetType() == typeof(StorageQueueAutoScaler <ImageQueued>)
                        select t).FirstOrDefault();

            Assert.IsNotNull(task);
        }
        public void InitializeStorageTask()
        {
            var elements = Substitute.For<IStorageElements>();
            elements.Container.Returns(Guid.NewGuid().ToString());
            elements.Table.Returns(Guid.NewGuid().ToString());
            elements.Queue.Returns(Guid.NewGuid().ToString());
            var config = new TaskConfiguration
            {
                StorageElements = elements,
                Versions = Substitute.For<IVersions>(),
                ConnectionString = connectionString,
            };

            var factory = new ImageTaskFactory();
            var tasks = factory.Tasks(config);

            Assert.IsNotNull(tasks);
            var inits = from t in tasks
                        where t.GetType() == typeof(InitializeStorageTask)
                        select t;

            Assert.IsNotNull(inits);
            Assert.AreEqual(4, inits.Count());
        }