示例#1
0
 public BarsController(BALIBARContext context, UserManager <ApplicationUser> userManager, IHostingEnvironment env)
 {
     _context     = context;
     _userManager = userManager;
     _env         = env;
     _rc          = new RecommendationService();
 }
        public void GetRecommendation()
        {
            var recommendationService = new RecommendationService();
            var recommendation        = recommendationService.GetRecommendation();

            Assert.False(String.IsNullOrEmpty(recommendation));
        }
示例#3
0
 public ExaminationController(ExaminationServiceProxy examinationService, RecommendationService recommendationService,
                              IExaminationSchedulingService examinationSchedulingService)
 {
     _examinationService           = examinationService;
     _recommendationService        = recommendationService;
     _examinationSchedulingService = examinationSchedulingService;
 }
示例#4
0
        public void TestSalarioERequisitosLigeiramenteDiferentes()
        {
            Usuario usuario = new Usuario
            {
                qualidades = new List <NivelQualificacao> {
                    new NivelQualificacao {
                        qualificacao = jQuery, Nivel = 70
                    },
                    new NivelQualificacao {
                        qualificacao = javascript, Nivel = 80
                    },
                    new NivelQualificacao {
                        qualificacao = CSharp, Nivel = 90
                    },
                }
            };

            List <Vaga> listaVagasInicial = new List <Vaga> {
                new Vaga {
                    Titulo = "Vaga2", Salario = 2100, qualidadesDesejadas = new List <NivelQualificacao> {
                        new NivelQualificacao {
                            qualificacao = jQuery, Nivel = 70
                        },
                        new NivelQualificacao {
                            qualificacao = javascript, Nivel = 80
                        },
                        new NivelQualificacao {
                            qualificacao = CSharp, Nivel = 90
                        },
                        new NivelQualificacao {
                            qualificacao = SerAutoDidata, Nivel = 50
                        },
                    }
                },
                new Vaga {
                    Titulo = "Vaga1", Salario = 2500, qualidadesDesejadas = new List <NivelQualificacao> {
                        new NivelQualificacao {
                            qualificacao = jQuery, Nivel = 80
                        },
                        new NivelQualificacao {
                            qualificacao = javascript, Nivel = 90
                        },
                        new NivelQualificacao {
                            qualificacao = CSharp, Nivel = 90
                        },
                        new NivelQualificacao {
                            qualificacao = SerAutoDidata, Nivel = 50
                        },
                    }
                }
            };

            RecommendationService rService = Factory.Instance.Get <RecommendationService>();

            List <Vaga> listaVagasRecomendadas = rService.OrdenaVagasPorRecomendacao(usuario, listaVagasInicial);

            Assert.IsTrue(listaVagasRecomendadas != null);
            Assert.IsTrue(listaVagasRecomendadas[0].Titulo == "Vaga1", "Esperada vaga1, vaga retornada = " + listaVagasRecomendadas[0].Titulo);
            Assert.IsTrue(listaVagasRecomendadas[1].Titulo == "Vaga2", "Esperada vaga2, vaga retornada = " + listaVagasRecomendadas[1].Titulo);
        }
示例#5
0
        public async Task HigherReviewsShouldBeRankedAboveLowerReviews()
        {
            _context.Add(new Review
            {
                FriendId = 2,
                TapeId   = 1,
                Rating   = 5
            });
            _context.Add(new Review
            {
                FriendId = 2,
                TapeId   = 2,
                Rating   = 4
            });
            _context.SaveChanges();

            var service         = new RecommendationService(_context);
            var recommendations = await service.GetRecommendations(1);

            var enumerable = recommendations as Tape[] ?? recommendations.ToArray();

            Assert.Equal(10, enumerable.Count());
            Assert.Equal(1, enumerable[0].Id);
            Assert.Equal(2, enumerable[1].Id);
        }
示例#6
0
        public void TestPorcentagem0Porcento()
        {
            Usuario usuario = new Usuario
            {
                qualidades = new List <NivelQualificacao>
                {
                }
            };

            Vaga vaga = new Vaga
            {
                Titulo              = "Vaga2",
                Salario             = 2100,
                qualidadesDesejadas = new List <NivelQualificacao> {
                    new NivelQualificacao {
                        qualificacao = jQuery, Nivel = 100
                    },
                    new NivelQualificacao {
                        qualificacao = javascript, Nivel = 100
                    },
                }
            };

            RecommendationService rService = Factory.Instance.Get <RecommendationService>();

            Assert.AreEqual(rService.CalculaPercentagemDeRequisitosAtendidos(usuario, vaga), 0);
        }
示例#7
0
        public void GetRecommendationsByUserID2Pages()
        {
            // Arrange
            var userID     = 1;
            var pageNumber = 1;
            int?pageSize   = 5;
            var numberOfRecommendations = 10;
            var recommendations         = MockDataGenerator.CreateRecommendations(numberOfRecommendations);
            var envelope = MockDataGenerator.CreateRecommendationsEnvelope(recommendations, pageNumber, pageSize);

            var mockReviewRepo = new Mock <IReviewRepository>();
            var mockMapper     = new Mock <IMapper>();

            mockReviewRepo.Setup(f => f.GetRecommendationsByUserID(userID, pageNumber, pageSize)).Returns(envelope);

            var service = new RecommendationService(mockReviewRepo.Object, mockMapper.Object);

            // Act
            var returnedRecommendations = service.GetRecommendationsByUserID(userID, pageNumber, pageSize);

            // Assert
            mockReviewRepo.Verify(f => f.GetRecommendationsByUserID(userID, pageNumber, pageSize), Times.Once());
            Assert.IsNotNull(returnedRecommendations);
            Assert.AreEqual(returnedRecommendations.Paging.PageNumber, pageNumber);
            Assert.AreEqual(returnedRecommendations.Paging.PageMaxSize, pageSize);
            Assert.AreEqual(returnedRecommendations.Paging.PageCount, 2);
            Assert.AreEqual(returnedRecommendations.Paging.TotalNumberOfItems, numberOfRecommendations);
            Assert.AreEqual(returnedRecommendations.Items.First().Book.ID, recommendations.First().Book.ID);
        }
        public void ConfigureServices(IServiceCollection services)
        {
            // Examinations
            IExaminationRepository        examinationRepository        = new ExaminationSqlRepository(GetContextFactory());
            IShiftRepository              shiftRepository              = new ShiftSqlRepository(GetContextFactory());
            IExaminationSchedulingService examinationSchedulingService =
                new ExaminationSchedulingService(examinationRepository, shiftRepository);

            DoctorAvailabilityService availabilityService = new DoctorAvailabilityService(shiftRepository, examinationRepository);
            ExaminationService        examinationService  = new ExaminationService(examinationRepository, shiftRepository);

            IConnection             patientConnection       = CreateConnection(UserUrl, "user/patient");
            IConnection             doctorConnection        = CreateConnection(UserUrl, "user/doctor");
            IConnection             roomConnection          = CreateConnection(HospitalUrl, "hospital/room");
            ExaminationServiceProxy examinationServiceProxy =
                new ExaminationServiceProxy(
                    examinationService,
                    roomConnection, doctorConnection, patientConnection);

            // Recommendations
            IRecommendationService recommendationService =
                new RecommendationService(examinationRepository, shiftRepository, doctorConnection);

            // Diagnoses
            IDiagnosisRepository diagnosisRepository = new DiagnosisSqlRepository(GetContextFactory());
            IDiagnosisService    diagnosisService    = new DiagnosisService(diagnosisRepository);

            services.Add(new ServiceDescriptor(typeof(IDiagnosisService), diagnosisService));
            services.Add(new ServiceDescriptor(typeof(ExaminationServiceProxy), examinationServiceProxy));
            services.Add(new ServiceDescriptor(typeof(RecommendationService), recommendationService));
            services.Add(new ServiceDescriptor(typeof(DoctorAvailabilityService), availabilityService));
            services.Add(new ServiceDescriptor(typeof(IExaminationSchedulingService), examinationSchedulingService));

            services.AddControllers().AddNewtonsoftJson(x => x.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore);
        }
示例#9
0
        public RootViewModel(IViewModelFactory viewModelFactory, DialogManager dialogManager,
                             SettingsService settingsService, UpdateService updateService, CacheService cacheService,
                             RecommendationService recommendationService)
        {
            _viewModelFactory      = viewModelFactory;
            _dialogManager         = dialogManager;
            _settingsService       = settingsService;
            _updateService         = updateService;
            _cacheService          = cacheService;
            _recommendationService = recommendationService;

            // Title
            var version = Assembly.GetExecutingAssembly().GetName().Version.ToString(3);

            DisplayName = $"OsuHelper v{version}";

            // Update busy state when progress manager changes
            ProgressManager.Bind(o => o.IsActive, (sender, args) => IsBusy = ProgressManager.IsActive);

            // Update recommendations view filter when recommendations change
            this.Bind(o => o.Recommendations, (sender, args) => UpdateRecommendationsViewFilter());

            // Update recommendations view filter when filters change
            this.Bind(o => o.IsNomodFilterEnabled, (sender, args) => UpdateRecommendationsViewFilter());
            this.Bind(o => o.IsHiddenFilterEnabled, (sender, args) => UpdateRecommendationsViewFilter());
            this.Bind(o => o.IsHardRockFilterEnabled, (sender, args) => UpdateRecommendationsViewFilter());
            this.Bind(o => o.IsDoubleTimeFilterEnabled, (sender, args) => UpdateRecommendationsViewFilter());
            this.Bind(o => o.IsOtherFilterEnabled, (sender, args) => UpdateRecommendationsViewFilter());
        }
        public IHttpActionResult GetSearchResults(int fanId)
        {
            var headers = Request.Headers;

            if (!headers.Contains("token"))
            {
                return(Ok(new { errorCode = "66", message = "unauthorized" }));
            }
            if (headers.Contains("token"))
            {
                var token = headers.GetValues("token").First();
                var jwt   = new JwtToken();
                if (!jwt.VerifyToken(token))
                {
                    return(Ok(new { errorCode = "66", message = "unauthorized" }));
                }
            }
            var service = new RecommendationService();
            var artists = service.GetRecommendedArtists(fanId);

            if (artists.Count == 0)
            {
                return(NotFound());
            }
            return(Ok(artists));
        }
示例#11
0
 public ConsultantRecommendationsController(RecommendationService recommendationService, ApplicationDbContext context, IIdentityService identityService, IMapper mapper)
 {
     this.recommendationService = recommendationService;
     _context             = context;
     this.identityService = identityService;
     this.mapper          = mapper;
 }
示例#12
0
        public async Task NoReviews_ShouldGet10Recommendations()
        {
            var service         = new RecommendationService(_context);
            var recommendations = await service.GetRecommendations(1);

            Assert.Equal(10, recommendations.Count());
        }
示例#13
0
 public PlacesService(IPlacesDao <DataAccess.Firestore.Model.Place> dao, IPlaceMapper <DataAccess.Firestore.Model.Place> mapper,
                      IPlaylistService playlistService, ISongService songService, RecommendationService recommendation, IUserService users, IRatingService ratingService, ILogger <PlacesService> log)
 {
     _dao    = dao;
     _mapper = mapper;
     this.playlistService  = playlistService;
     this.songService      = songService;
     recommendationService = recommendation;
     userService           = users;
     this.ratingService    = ratingService;
     this.log = log;
 }
示例#14
0
        public RecommendationServiceTests()
        {
            _trackingServiceMock     = new Mock <ITrackingService>();
            _trackingDataFactoryMock = new Mock <TrackingDataFactory>(null, null, null, null, null, null, null, null);
            _referenceConverterMock  = new Mock <ReferenceConverter>(null, null);
            _contentLoaderMock       = new Mock <IContentLoader>();

            _subject = new RecommendationService(
                _trackingServiceMock.Object,
                _trackingDataFactoryMock.Object,
                _referenceConverterMock.Object,
                _contentLoaderMock.Object);
        }
示例#15
0
        public void TestUmaSoQualidade2()
        {
            Usuario usuario = new Usuario
            {
                qualidades = new List <NivelQualificacao> {
                    new NivelQualificacao {
                        qualificacao = jQuery, Nivel = 80
                    },
                    new NivelQualificacao {
                        qualificacao = javascript, Nivel = 80
                    },
                    new NivelQualificacao {
                        qualificacao = CSharp, Nivel = 80
                    }
                }
            };

            List <Vaga> listaVagasInicial = new List <Vaga> {
                new Vaga {
                    Titulo = "Vaga1", qualidadesDesejadas = new List <NivelQualificacao> {
                        new NivelQualificacao {
                            qualificacao = javascript, Nivel = 75
                        }
                    }
                },
                new Vaga {
                    Titulo = "Vaga3", qualidadesDesejadas = new List <NivelQualificacao> {
                        new NivelQualificacao {
                            qualificacao = CSharp, Nivel = 85
                        }
                    }
                },
                new Vaga {
                    Titulo = "Vaga2", qualidadesDesejadas = new List <NivelQualificacao> {
                        new NivelQualificacao {
                            qualificacao = jQuery, Nivel = 81
                        }
                    }
                }
            };

            RecommendationService rService = Factory.Instance.Get <RecommendationService>();

            List <Vaga> listaVagasRecomendadas = rService.OrdenaVagasPorRecomendacao(usuario, listaVagasInicial);

            Assert.IsTrue(listaVagasRecomendadas != null);
            Assert.IsTrue(listaVagasRecomendadas[0].Titulo == "Vaga1", "Esperada vaga1, vaga retornada = " + listaVagasRecomendadas[0].Titulo);
            Assert.IsTrue(listaVagasRecomendadas[1].Titulo == "Vaga2", "Esperada vaga2, vaga retornada = " + listaVagasRecomendadas[1].Titulo);
            Assert.IsTrue(listaVagasRecomendadas[2].Titulo == "Vaga3", "Esperada vaga3, vaga retornada = " + listaVagasRecomendadas[2].Titulo);
        }
        public void ShouldReturnPositiveRatings()
        {
            var db = setupDb();

            var user    = db.Users.Single(u => u.Login == "user1");
            var service = new RecommendationService(db);

            var actual = service.GetPositivelyRated(user);

            Assert.Collection(actual,
                              r1 => Assert.Equal(0, r1.Id)
                              );
            db.Database.EnsureDeleted();
        }
        public RecommendationServiceTests()
        {
            _trackingServiceMock     = new Mock <ITrackingService>();
            _trackingDataFactoryMock = new Mock <TrackingDataFactory>(null, null, null, null, null, null, null, null, null, null);
            _productServiceMock      = new Mock <IProductService>();
            _contextModeResolverMock = new Mock <IContextModeResolver>();
            _contextModeResolverMock.SetupGet(x => x.CurrentMode).Returns(ContextMode.Default);

            _subject = new RecommendationService(
                _trackingServiceMock.Object,
                _trackingDataFactoryMock.Object,
                _productServiceMock.Object,
                _contextModeResolverMock.Object);
        }
示例#18
0
        protected override IProNet LoadProNet(string filename)
        {
            // load your implementation here
            var fileService           = new FileService();
            var networkValidator      = new NetworkValidator();
            var networkService        = new NetworkRepository(fileService, filename, networkValidator);
            var rankService           = new RankService(networkService);
            var skillsService         = new SkillsService(networkService);
            var separationService     = new SeparationService(networkService);
            var recommendationService = new RecommendationService(networkService);
            var teamStrengthService   = new TeamStrengthService(separationService, skillsService, rankService);
            var permutationService    = new PermutationService();
            var strongestTeamService  = new StrongestTeamService(networkService, teamStrengthService, permutationService);

            return(new ProNet(rankService, skillsService, separationService, recommendationService, teamStrengthService, strongestTeamService));
        }
示例#19
0
        public void TestDistanciaFundaoBarra()
        {
            //https://www.google.com.br/maps/dir/-22.8580108,-43.2322284/-22.9965259,-43.3564107

            RecommendationService rService = Factory.Instance.Get <RecommendationService>();

            Usuario usuario = new Usuario {
                Latitude = -22.8580108, Longitude = -43.2322284
            };
            Vaga vaga = new Vaga {
                Latitude = -22.9965259, Longitude = -43.3564107
            };

            double distancia = rService.CalculaDistanciaEntreUsuarioEVaga(usuario, vaga);

            Assert.IsTrue(distancia > 25 && distancia < 30, "Esperando entre 25 e 30, retornado: " + distancia);
        }
示例#20
0
        public void RecommendationTest()
        {
            RecommendationQueryArgs args = new RecommendationQueryArgs
            {
                Mood = new List <string>()
                {
                    "angry"
                }
            };

            var service = new RecommendationService(_dataProvider);
            var artists = service.GetArtists(args);
            var songs   = service.GetSongs(args);

            Assert.IsNotNull(artists);
            Assert.IsNotNull(songs);
        }
示例#21
0
        public void GetRecommendationsByUserIDException()
        {
            // Arrange
            var userID     = 1;
            var pageNumber = 1;
            int?pageSize   = null;

            var mockReviewRepo = new Mock <IReviewRepository>();
            var mockMapper     = new Mock <IMapper>();

            mockReviewRepo.Setup(f => f.GetRecommendationsByUserID(userID, pageNumber, pageSize)).Throws(new Exception());

            var service = new RecommendationService(mockReviewRepo.Object, mockMapper.Object);

            // Act
            service.GetRecommendationsByUserID(userID, pageNumber, pageSize);
        }
示例#22
0
        public async Task OneReview_ReviewedTapeShouldBeFirst()
        {
            _context.Add(new Review
            {
                FriendId = 2,
                TapeId   = 1,
                Rating   = 5
            });
            _context.SaveChanges();

            var service         = new RecommendationService(_context);
            var recommendations = await service.GetRecommendations(1);

            var enumerable = recommendations as Tape[] ?? recommendations.ToArray();

            Assert.Equal(10, enumerable.Count());
            Assert.Equal(1, enumerable.First().Id);
        }
        private async void createCard(IDialogContext context, string titl, string auth)
        {
            var resultMessage = context.MakeMessage();
            var GRser1        = await RecommendationService.GetBookDesc1(titl, auth);

            resultMessage.AttachmentLayout = AttachmentLayoutTypes.Carousel;
            resultMessage.Attachments      = new List <Attachment>();
            string desc = ((GRser1.book.description.Length < 300) ? GRser1.book.description : (GRser1.book.description.Substring(0, 300) + "..."));


            ThumbnailCard plCard1 = new ThumbnailCard()
            {
                Title    = GRser1.book.title,
                Subtitle = $"Author: \n{GRser1.book.authors.author.name}| \n\nRating: \n{GRser1.book.average_rating} \n\nDescription:  {desc}",
                Images   = new List <CardImage>()
                {
                    new CardImage()
                    {
                        Url = GRser1.book.image_url,
                    }
                },
                Buttons = new List <CardAction>()
                {
                    new CardAction()
                    {
                        Title = "Goodreads Link",
                        Type  = ActionTypes.OpenUrl,
                        Value = GRser1.book.link,
                    },
                    new CardAction()
                    {
                        Title = "Buy Book",
                        Type  = ActionTypes.OpenUrl,
                        Value = GRser1.book.buy_links[0].link,
                    }
                }
            };
            Attachment plAttachment1 = plCard1.ToAttachment();

            resultMessage.Attachments.Add(plAttachment1);
            await context.PostAsync(resultMessage);
        }
示例#24
0
        public ActionResult Recommend(int userId)
        {
            ViewBag.UserId = userId;
            var region = UserService.GetUserRegion(userId);

            ViewBag.Region = region?.Name;
            var picked = UserService.GetUsersPickedBeers(userId);

            ViewBag.PickedBeers = picked;
            ViewBag.PickedCount = picked.Count;
            var recommended = RecommendationService.Recommend(picked, 5, region);

            ViewBag.RecommendedBeers = recommended;
            ViewBag.RCount           = recommended.Count;
            ViewBag.RandomBeers      = RecommendationService.RecommendRandomBeers(5);
            var recommendedSingle = RecommendationService.ReccomendBeersSingle(picked, region);

            ViewBag.RecommendedSingle = recommendedSingle;
            ViewBag.RSCount           = recommendedSingle.Count;

            ViewBag.RecommendedIntersection = RecommendationService.RecommendBiggestIntersection(picked, region);

            return(View());
        }
示例#25
0
        public void Give_Adivce_Score_10(decimal score)
        {
            RecommendationService recommend = new RecommendationService();

            Assert.Equal <string>("This show is worth watching!", recommend.Recommendation(score));
        }
示例#26
0
        public void Give_Adivce_Score_2(decimal score)
        {
            RecommendationService recommend = new RecommendationService();

            Assert.Equal <string>("This show is the definition of trash!", recommend.Recommendation(score));
        }
示例#27
0
        public async Task <IActionResult> GetUserRecommendations([FromRoute] int friendId)
        {
            var recommendations = await RecommendationService.GetRecommendations(friendId);

            return(Ok(recommendations.ToDtos()));
        }
示例#28
0
        public void TestException(decimal score)
        {
            RecommendationService recommend = new RecommendationService();

            Assert.Throws <ArgumentException>(() => recommend.Recommendation(score));
        }
示例#29
0
 public IHttpActionResult GetRecommendationsOfProf([FromUri] int id)
 {
     return(Ok(RecommendationService.GetRecommendationsOfProf(id)));
 }
示例#30
0
        public void Give_Adivce_Score_6(decimal score)
        {
            RecommendationService recommend = new RecommendationService();

            Assert.Equal <string>("This show is mediocre at best, watch it when there's nothing else to watch!", recommend.Recommendation(score));
        }