コード例 #1
0
ファイル: CreditsTests.cs プロジェクト: formist/LinkMe
        private static void AssertCandidate(CandidateResponseModel model, CanContactStatus canContact, bool hasBeenAccessed, bool isResumeVisible, bool isPhoneNumberVisible, bool hasPhoneNumbers, ICollection <PhoneNumber> phoneNumbers)
        {
            // Cannot contact if they have hidden their resume.

            canContact = isResumeVisible ? canContact : CanContactStatus.No;

            // Cannot contact by phone if also they don't have phone numbers or have hidden them.

            var canContactByPhone = canContact == CanContactStatus.No
                ? CanContactStatus.No
                : !isPhoneNumberVisible
                    ? CanContactStatus.No
                    : phoneNumbers == null || phoneNumbers.Count == 0
                        ? CanContactStatus.No
                        : canContact;

            Assert.AreEqual(canContact, model.Candidate.CanContact);
            Assert.AreEqual(canContactByPhone, model.Candidate.CanContactByPhone);
            Assert.AreEqual(hasBeenAccessed, model.Candidate.HasBeenAccessed);

            // Must have phone numbers and be visible and also have been accessed.

            if (isResumeVisible && isPhoneNumberVisible && hasPhoneNumbers && hasBeenAccessed)
            {
                Assert.IsTrue(phoneNumbers != null && phoneNumbers.Count > 0);
                Assert.IsTrue((from p in phoneNumbers select p.Number).SequenceEqual(model.Candidate.PhoneNumbers));
            }
            else
            {
                Assert.IsNull(model.Candidate.PhoneNumbers);
            }
        }
コード例 #2
0
        /// <summary>
        /// Contacts the server for all candidates
        /// </summary>
        /// <returns>Returns the candidate data received from the server or a null result if it fails</returns>
        internal async Task <List <CandidateTable> > GetCandidates()
        {
            string url = this.resource.GetString("BaseUrl") + "/api/VoteData/GetCandidatesAsync";

            var get = new HttpRequestMessage(HttpMethod.Get, url);
            HttpResponseMessage response;

            using (HttpClient client = new HttpClient())
            {
                try
                {
                    response = await client.SendAsync(get);
                }
                catch
                {
                    return(null);
                }
            }

            if (response.IsSuccessStatusCode)
            {
                CandidateResponseModel result = JsonConvert.DeserializeObject <CandidateResponseModel>(response.Content.ReadAsStringAsync().Result);

                if (result.Success)
                {
                    return(result.Result);
                }
                else
                {
                    return(null);
                }
            }
            else
            {
                return(null);
            }
        }
コード例 #3
0
 protected void AssertCandidate(CandidateResponseModel model, EmployerMemberView member)
 {
     AssertJsonSuccess(model);
     AssertCandidate(model.Candidate, member);
 }