Esempio n. 1
0
        private void OnPublish(object obj)
        {
            if (!model.IsLoggedIn)
            {
                model.Authenticate();
            }

            if (!model.IsLoggedIn)
            {
                return;
            }

            var workspaceProperties = new WorkspaceProperties
            {
                Name        = Name,
                Description = Description,
                Cameras     = Cameras
            };

            var workspace = CurrentWorkspaceModel as HomeWorkspaceModel;

            if (workspace == null)
            {
                throw new InvalidOperationException("The CurrentWorkspaceModel must be of type " + typeof(HomeWorkspaceModel).Name);
            }

            model.SendAsync(workspace, workspaceProperties);
        }
Esempio n. 2
0
        public void PublishModelStateTest()
        {
            string openPath = Path.Combine(TestDirectory, @"Libraries\DynamoPublishTests\PublishWorkspaceTestTwoDeps.dyn");

            OpenModel(openPath);

            var hws = CurrentDynamoModel.CurrentWorkspace as HomeWorkspaceModel;

            Assert.NotNull(hws, "The current workspace is not a " + typeof(HomeWorkspaceModel).FullName);

            publishModel.SendAsync(hws);
            Assert.AreEqual(PublishModel.UploadState.Uploading, publishModel.State);

            var startTime  = DateTime.Now;
            var halfMinute = new TimeSpan(0, 0, 30);

            // Wait until workspace is sent.
            while (publishModel.State == PublishModel.UploadState.Uploading)
            {
                var now = DateTime.Now;
                if (now - startTime > halfMinute)
                {
                    Assert.Fail("Couldn't send workspace to customizer in time.");
                }
            }

            Assert.AreEqual(PublishModel.UploadState.Succeeded, publishModel.State);
        }