public static GitHub_CustomO2 open(this GitHub_CustomO2 gitHub, string url) { var uri = url.starts("http") ? url.uri() : ("https://gitHub.com/" + url).uri(); gitHub.IE.open(uri.str()); return(gitHub); }
public static GitHub_CustomO2 login(this GitHub_CustomO2 gitHub) { var gitHubLogin = @"C:\O2\_USERDATA\accounts.xml".credential("github"); if (gitHubLogin.isNull()) { gitHubLogin = ascx_AskUserForLoginDetails.ask(); } return(gitHub.login(gitHubLogin.username(), gitHubLogin.password())); }
public static GitHub_CustomO2 logout(this GitHub_CustomO2 gitHub) { "Logging out".info(); var ie = gitHub.IE; if (ie.hasLink("Log Out")) { ie.link("Log Out").click(); } return(gitHub); }
public static GitHub_CustomO2 newRepository(this GitHub_CustomO2 gitHub, string name, string description, string homepageUrl) { var ie = gitHub.IE; ie.open("https://github.com/repositories/new"); ie.field("repository[name]", name); ie.field("repository[description]", description); ie.field("repository[homepage]", homepageUrl); ie.radioButtons()[1].@checked(); ie.button("<SPAN>Create Repository</SPAN>").click(); return(gitHub); }
public static GitHub_CustomO2 login(this GitHub_CustomO2 gitHub, string username, string password) { if (username.inValid() || password.inValid()) { "No valid login credentials were provided".error(); return(null); } gitHub.logout(); var ie = gitHub.IE; ie.open("https://github.com/login"); ie.field("login").value(username); ie.field("password").value(password); ie.button("Log in").click(); return(gitHub); }
public static GitHub_CustomO2 add_SSH_PublicKey(this GitHub_CustomO2 gitHub) { var ie = gitHub.IE; var keyPath = "What is the path to the public key to use?".askUser(); if (keyPath.fileExists().isFalse()) { "no key file provided".error(); } else { var title = System.IO.Path.GetFileNameWithoutExtension(keyPath); var key = keyPath.fileContents(); gitHub.homePage(); gitHub.accountSettings(); ie.link("SSH Public Keys").click(); ie.link("Add another public key").click(); ie.field("public_key[title]").value(title); ie.field("public_key[key]").value(key); ie.button("<SPAN>Add key</SPAN>").click(); } return(gitHub); }
public static GitHub_CustomO2 accountSettings(this GitHub_CustomO2 gitHub) { return(gitHub.openLink("Account Settings")); }
public static GitHub_CustomO2 homePage(this GitHub_CustomO2 gitHub) { gitHub.IE.open("http://github.com"); return(gitHub); }
public static GitHub_CustomO2 loginAs(this GitHub_CustomO2 gitHub) { var gitHubLogin = ascx_AskUserForLoginDetails.ask(); return(gitHub.login(gitHubLogin.username(), gitHubLogin.password())); }
public static bool isLoggedIn(this GitHub_CustomO2 gitHub) { return(gitHub.inGitHub() && gitHub.IE.hasLink("Log Out")); }
public static bool inGitHub(this GitHub_CustomO2 gitHub) { return(gitHub.IE.url().contains("github.com")); }
public static GitHub_CustomO2 openLink(this GitHub_CustomO2 gitHub, string link) { gitHub.IE.link(link).click(); return(gitHub); }