public void TestSomething() { var client = new WorkableClient { AccountSubdomain = Helpers.Subdomain(), AuthToken = Helpers.AuthToken() }; var candidate = new WorkableCandidate { candidate = new CandidateInner { name = "Test name", firstname = "test", lastname = "name", headline = "a headline", summary = "some summary", address = "some address", phone = "21078987812", email = "*****@*****.**", cover_letter = null, skills = new List<string> { "Chef", "Pianist" } } }; candidate = client.AddCandidate(candidate, "trial", "97DE64CE38"); Assert.IsNotNull(candidate); }
public void TestJobsRetrieval() { var client = new WorkableClient { AccountSubdomain = Helpers.Subdomain(), AuthToken = Helpers.AuthToken() }; var jobs = client.GetJobs(); Assert.IsNotNull(jobs); Assert.IsNotNull(jobs.jobs); Assert.IsTrue(jobs.jobs.Count > 0); }
static void Main(string[] args) { if (args.Length < 2) { Console.WriteLine("Usage: Job:<Job id> Source:<Directory with preprocessed data> FromDate:[Starting viable date] ToDate:[Ending viable date] AuthToken:<Authentication token> Subdomain:<Account subdomain> <dir1> [dir2] [dir3] ....."); return; } var parameters = ParameterParser.Parse(args); if (string.IsNullOrEmpty(parameters.JobId)) { Console.WriteLine("No Job id was specified"); return; } if (string.IsNullOrEmpty(parameters.SourceDir)) { Console.WriteLine("No source directory was specified"); return; } if (parameters.Subdirs.Count == 0) { Console.WriteLine("At least one subdir must be specified"); return; } var fromDate = string.IsNullOrEmpty(parameters.FromDate) ? DateTime.MinValue : Convert.ToDateTime(parameters.FromDate); var toDate = string.IsNullOrEmpty(parameters.ToDate) ? DateTime.MaxValue : Convert.ToDateTime(parameters.ToDate); var client = new WorkableClient {AuthToken = parameters.AuthToken, AccountSubdomain = parameters.Subdomain}; var count = 0; var failed = 0; foreach (var dir in parameters.Subdirs) { Console.WriteLine(dir); var files = Directory.GetFiles(Path.Combine(parameters.SourceDir, dir), "*.json"); foreach (var file in files) { var classification = SimpleJson.DeserializeObject<Classification>(File.ReadAllText(file, System.Text.Encoding.Default)); if (classification.Submitted.CompareTo(fromDate) < 0 && toDate.CompareTo(classification.Submitted) < 0) { continue; } var candidate = new WorkableCandidate {candidate = new CandidateInner()}; candidate.candidate.cover_letter = classification.CoverLetter; candidate.candidate.email = classification.Mail; candidate.candidate.name = classification.Name; candidate.candidate.phone = classification.Phone; if (!string.IsNullOrEmpty(classification.AttachmentName)) { candidate.candidate.resume = new Resume { data = classification.Attachment, name = classification.AttachmentName }; } candidate.candidate.disqualified = false; try { client.AddCandidate(candidate, "sourced", parameters.JobId); count++; } catch (Exception) { failed++; } Console.Clear(); Console.SetCursorPosition(0, 0); Console.WriteLine("Uploaded {0}, failed {1}", count, failed); } } Console.Write("Press key to continue"); Console.ReadKey(); }