Beispiel #1
0
        public static void ConfigureHubToReturnEmptyPayload()
        {
            var result = new PayloadDTO(Guid.Empty);

            using (var storage = CrateManager.GetUpdatableStorage(result))
            {
                storage.Add(Crate.FromContent(string.Empty, new OperationalStateCM()));
            }
            ObjectFactory.Container.GetInstance <Mock <IHubCommunicator> >().Setup(x => x.GetPayload(It.IsAny <Guid>()))
            .Returns(Task.FromResult(result));
        }
Beispiel #2
0
        public override void SetUp()
        {
            base.SetUp();

            var payload = new PayloadDTO(Guid.Empty);

            using (var storage = CrateManager.GetUpdatableStorage(payload))
            {
                storage.Add(Crate.FromContent(string.Empty, new OperationalStateCM()));
            }

            var userDTO = new UserDTO {
                FirstName = "First Name", LastName = "Last Name"
            };

            var hubCommunicatorMock = new Mock <IHubCommunicator>();

            hubCommunicatorMock.Setup(h => h.GetPayload(It.IsAny <Guid>())).Returns(Task.FromResult(payload));
            hubCommunicatorMock.Setup(h => h.GetCurrentUser()).Returns(Task.FromResult(userDTO));
            ObjectFactory.Container.Inject(hubCommunicatorMock);
            ObjectFactory.Container.Inject(hubCommunicatorMock.Object);

            var emailPackagerMock = new Mock <IEmailPackager>();

            ObjectFactory.Container.Inject(emailPackagerMock.Object);
            ObjectFactory.Container.Inject(emailPackagerMock);
        }
        public async Task Send_Via_Twilio_Run_Send_SMS_With_Correct_Number()
        {
            //Arrange
            var configureUrl = GetTerminalConfigureUrl();
            var runUrl       = GetTerminalRunUrl();
            var dataDTO      = HealthMonitor_FixtureData.Send_Via_Twilio_v1_InitialConfiguration_Fr8DataDTO();
            //Act
            var responseActionDTO = await HttpPostAsync <Fr8DataDTO, ActivityDTO>(configureUrl, dataDTO);

            var crateManager = new CrateManager();

            using (var updatableStorage = crateManager.GetUpdatableStorage(responseActionDTO))
            {
                var curNumberTextSource =
                    (TextSource)
                    updatableStorage.CrateContentsOfType <StandardConfigurationControlsCM>().Single().Controls[0];
                curNumberTextSource.ValueSource = "specific";
                curNumberTextSource.TextValue   = ConfigurationManager.AppSettings["TestPhoneNumber"];

                var curBodyTextSource =
                    (TextSource)
                    updatableStorage.CrateContentsOfType <StandardConfigurationControlsCM>().Single().Controls[1];
                curBodyTextSource.ValueSource = "specific";
                curBodyTextSource.TextValue   = "That is the body of the message";
            }
            dataDTO.ActivityDTO = responseActionDTO;
            //OperationalStateCM crate is required to be added,
            //as upon return the Run method takes this crate and updates the status to "Success"
            AddOperationalStateCrate(dataDTO, new OperationalStateCM());

            var payloadDTO = await HttpPostAsync <Fr8DataDTO, PayloadDTO>(runUrl, dataDTO);

            //Assert
            //After Configure Test
            Assert.NotNull(responseActionDTO);
            Assert.NotNull(responseActionDTO.CrateStorage);
            var crateStorage = Crate.FromDto(responseActionDTO.CrateStorage);
            var controls     = crateStorage.CrateContentsOfType <StandardConfigurationControlsCM>().Single();

            Assert.NotNull(controls.Controls[0] is TextSource);
            Assert.NotNull(controls.Controls[1] is TextSource);
            Assert.AreEqual(false, controls.Controls[0].Selected);
            //After Run Test
            var payload = Crate.FromDto(payloadDTO.CrateStorage).CrateContentsOfType <StandardPayloadDataCM>().Single();

            Assert.AreEqual("Status", payload.PayloadObjects[0].PayloadObject[0].Key);
            Assert.AreNotEqual("failed", payload.PayloadObjects[0].PayloadObject[0].Value);
            Assert.AreNotEqual("undelivered", payload.PayloadObjects[0].PayloadObject[0].Value);
        }
Beispiel #4
0
        /// <summary>
        /// Lets you update activity UI control values without need to unpack and repack control crates
        /// </summary>
        public static ActivityDTO UpdateControls <TActivityUi>(this ActivityDTO activity, Action <TActivityUi> action) where TActivityUi : StandardConfigurationControlsCM, new()
        {
            if (activity == null)
            {
                throw new ArgumentNullException(nameof(activity));
            }

            var crateManager = new CrateManager();

            using (var storage = crateManager.GetUpdatableStorage(activity))
            {
                UpdateControls <TActivityUi>(storage, action);
            }

            return(activity);
        }
        public override void SetUp()
        {
            base.SetUp();

            TerminalBootstrapper.ConfigureTest();
            TerminalSalesforceStructureMapBootstrapper.ConfigureDependencies(TerminalSalesforceStructureMapBootstrapper.DependencyType.TEST);

            PayloadDTO testPayloadDTO = new PayloadDTO(new Guid());

            ObjectFactory.Configure(x => x.For <ICrateManager>().Use(CrateManager));
            using (var crateStorage = CrateManager.GetUpdatableStorage(testPayloadDTO))
            {
                crateStorage.Add(Crate.FromContent("Operational Status", new OperationalStateCM()));
            }

            Mock <IHubCommunicator> hubCommunicatorMock = new Mock <IHubCommunicator>(MockBehavior.Default);

            hubCommunicatorMock.Setup(h => h.GetPayload(It.IsAny <Guid>()))
            .Returns(() => Task.FromResult(testPayloadDTO));
            ObjectFactory.Container.Inject(typeof(IHubCommunicator), hubCommunicatorMock.Object);

            Mock <ISalesforceManager> salesforceIntegrationMock = Mock.Get(ObjectFactory.GetInstance <ISalesforceManager>());
            FieldDTO testField = new FieldDTO("Account")
            {
                Label = "TestAccount"
            };

            salesforceIntegrationMock.Setup(
                s => s.GetProperties(SalesforceObjectType.Account, It.IsAny <AuthorizationToken>(), false, null))
            .Returns(() => Task.FromResult(new List <FieldDTO> {
                testField
            }));

            salesforceIntegrationMock.Setup(
                s => s.Query(SalesforceObjectType.Account, It.IsAny <IList <FieldDTO> >(), It.IsAny <string>(), It.IsAny <AuthorizationToken>()))
            .Returns(() => Task.FromResult(new StandardTableDataCM()));

            _saveToSFDotCom_v1 = New <Save_To_SalesforceDotCom_v1>();
        }