public async Task Post_NewInstall_Ok()
        {
            // Arrange
            var unitUnderTest = this.CreateAppStartupController();
            ColdRequestModel coldRequestModel = new ColdRequestModel
            {
                DeviceInfo = new DeviceRegisterModel
                {
                    Handle   = "some handle",
                    Platform = PlatFormId.WindowsPushNotificationService
                }
            };

            mockHubRegistrationService
            .Setup(hrs => hrs.CreateHubRegistration(It.IsAny <string>()))
            .ReturnsAsync(new HubRegistrationModel {
                RegistrationId = "RegistrationId"
            });
            _auto0ConfigProvider
            .SetupGet(acp => acp.CurrentValue)
            .Returns(new Auth0Config());

            // Act
            var result = (await unitUnderTest.Post(coldRequestModel)) as IStatusCodeActionResult;

            // Assert
            Assert.AreEqual((int)HttpStatusCode.OK, result?.StatusCode);
        }
        public async Task Post_NewInstall_ResponseHasRegId()
        {
            // Arrange
            var unitUnderTest = this.CreateAppStartupController();
            ColdRequestModel coldRequestModel = new ColdRequestModel
            {
                DeviceInfo = new DeviceRegisterModel
                {
                    Handle   = "some handle",
                    Platform = PlatFormId.WindowsPushNotificationService
                }
            };
            var expected = "RegistrationId";

            mockHubRegistrationService
            .Setup(hrs => hrs.CreateHubRegistration(It.IsAny <string>()))
            .ReturnsAsync(new HubRegistrationModel {
                RegistrationId = expected
            });
            _auto0ConfigProvider
            .SetupGet(acp => acp.CurrentValue)
            .Returns(new Auth0Config());

            // Act
            var result = ((await unitUnderTest.Post(coldRequestModel)) as ObjectResult)?.Value as StartupResponseModel;

            // Assert
            Assert.AreEqual(expected, result?.HubRegistration.RegistrationId);
        }
        public async Task Post_NoRequest_BadRequest()
        {
            // Arrange
            var unitUnderTest = this.CreateAppStartupController();
            ColdRequestModel coldRequestModel = null;

            // Act
            var result = (await unitUnderTest.Post(coldRequestModel)) as IStatusCodeActionResult;

            // Assert
            Assert.AreEqual((int)HttpStatusCode.BadRequest, result?.StatusCode);
        }