public DfeSignInCommunicator(TestConfigReader config)
 {
     _dfeSignInDomain        = config.SignInHost;
     _redirectUriHostAndPort = config.SignInRedirectHost;
     _clientId     = config.SignInClientId;
     _clientSecret = config.SignInClientSecret;
 }
Exemple #2
0
        public void ConfigReaderlarDoğruCalisiyorMu()
        {
            TestConfigReader reader            = new TestConfigReader("DAI.Log,DAI.Log.TraceLogger", "DAI.Log,DAI.Log.HtmlLogFormatter");
            string           logSourceValue    = reader.ReadKey("LogSource");
            string           logFormatterValue = reader.ReadKey("LogFormatter");

            Assert.AreEqual(logSourceValue, "DAI.Log,DAI.Log.TraceLogger");
            Assert.AreEqual(logFormatterValue, "DAI.Log,DAI.Log.HtmlLogFormatter");
        }
        public void ConfigReaderlarDoğruCalisiyorMu()
        {
            TestConfigReader reader = new TestConfigReader("DAI.Log,DAI.Log.TraceLogger", "DAI.Log,DAI.Log.HtmlLogFormatter");
            string logSourceValue = reader.ReadKey("LogSource");
            string logFormatterValue = reader.ReadKey("LogFormatter");

            Assert.AreEqual(logSourceValue, "DAI.Log,DAI.Log.TraceLogger");
            Assert.AreEqual(logFormatterValue, "DAI.Log,DAI.Log.HtmlLogFormatter");
        }
Exemple #4
0
 public virtual void BaseOneTimeSetUp()
 {
     Config     = TestConfigBuilder.BuildTestConfig();
     Context    = ContextLoader.GetDbContext(Config, EnableRetryOnFailure);
     TestConfig = new TestConfigReader(Config);
     Context.Database.EnsureDeleted();
     Context.Database.EnsureCreated();
     MockClock = new Mock <IClock>();
     MockClock.SetupGet(c => c.UtcNow).Returns(() => MockTime);
     OneTimeSetup();
 }
        public async Task <string> GetAccessToken(TestConfigReader config)
        {
            var startUrl  = $"https://{_dfeSignInDomain}/auth?redirect_uri=https://{_redirectUriHostAndPort}/auth/cb&scope=openid profile email&response_type=code&state=1238&client_id={_clientId}";
            var loginPage = await GetUrl(startUrl, true);

            var form1 = await PostForm(loginPage, new Dictionary <string, string> {
                { "username", config.SignInUsername },
                { "password", config.SignInPassword },
            }, true);

            var form2 = await PostForm(form1, new Dictionary <string, string>(), false);

            var cb = await GetUrl(form2.Url, false);

            var authCode = new Regex(@"[?&]code=([^&]+)").Match(cb.Url).Groups[1].Value;

            var acHttpClient = await new HttpClient().PostAsync($"https://{_dfeSignInDomain}/token", new FormUrlEncodedContent(new Dictionary <string, string>()
            {
                { "client_id", _clientId },
                { "client_secret", _clientSecret },
                { "redirect_uri", $"https://{_redirectUriHostAndPort}/auth/cb" },
                { "grant_type", "authorization_code" },
                { "code", authCode }
            }));


            var json = await acHttpClient.Content.ReadAsStringAsync();

            try
            {
                var response = JObject.Parse(json);
                if (response["error"] != null)
                {
                    throw new Exception("Error response from sign-in service: " + response["error"]);
                }
                if (response["access_token"] == null)
                {
                    throw new Exception("access_token missing from sign-in response. Response was:\n" + json);
                }
                string accessToken = response["access_token"].Value <string>();
                if (string.IsNullOrEmpty(accessToken))
                {
                    throw new Exception($"could not get access_token with settings: {_clientId}, {config.SignInUsername}, {_clientSecret.Substring(0, 3)}, {config.SignInPassword.Substring(0, 3)}");
                }
                return(accessToken);
            }
            catch (JsonReaderException)
            {
                throw new Exception($"could not get access_token with settings: {_clientId}, {config.SignInUsername}, {_clientSecret.Substring(0, 3)}, {config.SignInPassword.Substring(0, 3)}");
            }
        }
Exemple #6
0
        private static List <TestDescription> ReadTests(ArgsProcessor argProc)
        {
            List <TestDescription> testsToRun;
            List <TestDescription> tests;

            {
                var reader = new TestConfigReader();
                var path   = argProc.GetArg(ArgsProcessor.Args.CSV_FILE_PATH);
                tests = reader.ReadFromFilePath(path);
                Outputter.Output(string.Format("Read {0} tests from Test Suite: {1}", tests.Count, path));
            }

            testsToRun = TestDescription.GetTestsByName(tests, argProc.GetArg(ArgsProcessor.Args.TEST_NAME));
            return(testsToRun);
        }
Exemple #7
0
        public Browser(string browserType)
        {
            var testConfig              = TestConfigReader.GetTestConfig(browserType);
            var desiredCapabilities     = new DesiredCapabilities();
            var internetExplorerOptions = new InternetExplorerOptions
            {
                IgnoreZoomLevel = true
            };

            switch (testConfig.BrowserType)
            {
            case BrowserType.InternetExplorer32:
                browser = new InternetExplorerDriver(DriverPath(BrowserType.InternetExplorer32), internetExplorerOptions);
                type    = BrowserType.InternetExplorer32;
                break;

            case BrowserType.Chrome:
                browser = new ChromeDriver(DriverPath(BrowserType.Chrome));
                type    = BrowserType.Chrome;
                break;

            case BrowserType.Firefox:
                browser = new FirefoxDriver();
                type    = BrowserType.Firefox;
                break;

            case BrowserType.RemoteChrome:
                desiredCapabilities.SetCapability(CapabilityType.BrowserName, "chrome");
                var address = new Uri(string.Format(TestRequestFormat, testConfig.MachineName, testConfig.Port));
                browser = new ExtendedRemoteWebDriver(address, desiredCapabilities);
                type    = BrowserType.RemoteChrome;
                break;

            case BrowserType.RemoteFirefox:
                desiredCapabilities.SetCapability(CapabilityType.BrowserName, "firefox");
                browser = new ExtendedRemoteWebDriver(new Uri(string.Format(TestRequestFormat, testConfig.MachineName, testConfig.Port)), desiredCapabilities);
                type    = BrowserType.RemoteFirefox;
                break;

            case BrowserType.RemoteIe:
                desiredCapabilities.SetCapability(CapabilityType.BrowserName, "ie");
                desiredCapabilities.SetCapability("ignoreProtectedModeSettings", true);
                browser = new ExtendedRemoteWebDriver(new Uri(string.Format(TestRequestFormat, testConfig.MachineName, testConfig.Port)), desiredCapabilities);
                type    = BrowserType.RemoteIe;
                break;
            }
            browser.Manage().Window.Maximize();
        }