Пример #1
0
 protected void AssertNoView(Guid jobAdId, Guid viewerId)
 {
     Assert.IsFalse(_jobAdViewsQuery.HasViewedJobAd(viewerId, jobAdId));
     Assert.AreEqual(0, _jobAdViewsQuery.GetViewedJobAdIds(viewerId, new List <Guid> {
         jobAdId
     }).Count);
 }
Пример #2
0
        private IList <Guid> GetIncludeJobAdIds(IMember member, JobAdSearchQuery query, IEnumerable <Guid> jobAdIds)
        {
            // These filters only apply for logged in users.

            if (member != null)
            {
                // Include filters.

                if (query.IsFlagged != null && query.IsFlagged.Value)
                {
                    jobAdIds = GetIncludeList(jobAdIds, _jobAdFlagListsQuery.GetFlaggedJobAdIds(member));
                }

                if (query.HasNotes != null && query.HasNotes.Value)
                {
                    jobAdIds = GetIncludeList(jobAdIds, _memberJobAdNotesQuery.GetHasNotesJobAdIds(member));
                }

                if (query.HasViewed != null && query.HasViewed.Value)
                {
                    jobAdIds = GetIncludeList(jobAdIds, _jobAdViewsQuery.GetViewedJobAdIds(member.Id));
                }

                if (query.HasApplied != null && query.HasApplied.Value)
                {
                    jobAdIds = GetIncludeList(jobAdIds, _jobAdApplicationSubmissionsQuery.GetSubmittedApplicationJobAdIds(member.Id));
                }
            }

            return(jobAdIds == null ? null : jobAdIds.ToList());
        }
Пример #3
0
        IList <MemberJobAdView> IMemberJobAdViewsQuery.GetMemberJobAdViews(IMember member, IEnumerable <Guid> jobAdIds)
        {
            var jobAdIdList = jobAdIds.ToList();
            var jobAds      = _jobAdsQuery.GetJobAds <JobAd>(jobAdIdList);

            var employers = _employersQuery.GetEmployers(from j in jobAds select j.PosterId).ToDictionary(e => e.Id, e => e);
            var viewed    = member == null
                ? new List <Guid>()
                : _jobAdViewsQuery.GetViewedJobAdIds(member.Id, jobAdIdList);
            var applied = member == null
                ? new List <Guid>()
                : _jobAdApplicationSubmissionsQuery.GetSubmittedApplicationJobAdIds(member.Id, jobAdIdList);
            var flagged = member == null
                ? new List <Guid>()
                : _jobAdFlagListsQuery.GetFlaggedJobAdIds(member, jobAdIdList);
            var inMobileFolder = member == null
                ? new List <Guid>()
                : _jobAdFoldersQuery.GetInMobileFolderJobAdIds(member, jobAdIdList);

            return((from j in jobAds
                    select new MemberJobAdView(
                        j,
                        _jobAdProcessingQuery.GetJobAdProcessing(j),
                        GetContactDetails(employers[j.PosterId], j),
                        GetEmployerCompanyName(j),
                        viewed.Contains(j.Id),
                        applied.Contains(j.Id),
                        flagged.Contains(j.Id),
                        inMobileFolder.Contains(j.Id))).ToList());
        }
Пример #4
0
        public void TestAnonymous()
        {
            var employer = CreateEmployer();
            var jobAd    = employer.CreateTestJobAd();

            _jobAdsCommand.CreateJobAd(jobAd);
            _jobAdsCommand.OpenJobAd(jobAd);

            Get(HomeUrl);
            var anonymousId = GetAnonymousId();

            Assert.IsTrue(_jobAdViewsQuery.GetViewedJobAdIds(anonymousId, new[] { jobAd.Id }).CollectionEqual(new Guid[0]));
            Assert.AreEqual(0, _jobAdViewsQuery.GetViewedCount(jobAd.Id));

            // View.

            AssertJsonSuccess(Deserialize <JsonResponseModel>(Post(GetViewedUrl(jobAd.Id))));
            Assert.IsTrue(_jobAdViewsQuery.GetViewedJobAdIds(anonymousId, new[] { jobAd.Id }).CollectionEqual(new[] { jobAd.Id }));
            Assert.IsTrue(_jobAdViewsQuery.HasViewedJobAd(anonymousId, jobAd.Id));
        }
Пример #5
0
        public void TestNoViewings()
        {
            var jobAdId = Guid.NewGuid();

            Assert.AreEqual(0, _jobAdViewsQuery.GetViewedCount(jobAdId));
            Assert.AreEqual(0, _jobAdViewsQuery.GetDistinctViewedCount(jobAdId));

            Assert.IsFalse(_jobAdViewsQuery.HasViewedJobAd(Guid.NewGuid(), jobAdId));

            Assert.AreEqual(0, _jobAdViewsQuery.GetViewedJobAdIds(Guid.NewGuid(), new[] { jobAdId }).Count);
            Assert.AreEqual(0, _jobAdViewsQuery.GetViewedJobAdIds(Guid.NewGuid()).Count);
        }