public void DoesNotReturnsBands_WithoutIncludingGenre() { var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); var expectedResult = bands.Where(x => x.Genre.GenreName.Contains("Metal")).AsQueryable(); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var bandResultSet = bandService.GetAllBands(); CollectionAssert.AreNotEquivalent(expectedResult, bandResultSet.ToList()); }
private BandService CreateBandService() { var userId = Guid.Parse(User.Identity.GetUserId()); var service = new BandService(userId); return(service); }
public void ReturnedBands_AreAllInstancesOfBand() { var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); var expectedResult = bands.AsQueryable(); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); bandsSetMock.Include("Country"); bandsSetMock.Include("Genre"); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var bandResultSet = bandService.GetAllBands().ToList(); CollectionAssert.AllItemsAreInstancesOfType(bandResultSet, typeof(Band)); }
public void ReturnAllBands_WithIncludedCountryAndGenre() { var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); var expectedResult = bands.AsQueryable(); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); bandsSetMock.Include("Country"); bandsSetMock.Include("Genre"); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var bandResultSet = bandService.GetAllBands(); CollectionAssert.AreEquivalent(expectedResult, bandResultSet.ToList()); }
public void Returns_AnInstanceOf_Band() { var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bandMock = new Mock <IDbSet <Band> >(); contextMock.Setup(x => x.Bands).Returns(bandMock.Object); Guid bandId = Guid.NewGuid(); Band expectedBand = new Band() { Id = bandId }; bandMock.Setup(x => x.Find(bandId)).Returns(expectedBand); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); Band actualBand = bandService.GetById(bandId); Assert.IsInstanceOf <Band>(actualBand); }
public void ReturnAllBand_WithTheGivenLetter() { const string letter = "A"; var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); var expectedResult = bands.Where(x => x.BandName.Substring(0, 1) == letter).ToList(); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var actualResult = bandService.GetBands(letter); CollectionAssert.AreEquivalent(actualResult.ToList(), expectedResult); }
public void DoesNotReturnABand_WithDifferentStartingLetter() { const string letter = "A"; var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); var expectedResult = bands.AsQueryable(); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var actualResult = bandService.GetBands(letter); CollectionAssert.DoesNotContain(actualResult.ToList(), expectedResult.Where(x => x.BandName == "Behemoth")); }
public void ReturnTheRightCount_OfFoundBands_WithGivenGenre() { var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); string expectedGenre = "Metal"; var expectedResult = bands.Where(x => x.Genre.GenreName == expectedGenre).ToList(); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); bandsSetMock.Include("Country"); bandsSetMock.Include("Genre"); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var actualResult = bandService.GetBandsByGenre(expectedGenre).ToList(); Assert.That(expectedResult.Count == actualResult.Count); }
public void DoesNotReturnBands_WithNonExistingGenre() { var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); string expectedGenre = "Hop"; var expectedResult = bands.Where(x => x.Genre.GenreName == expectedGenre); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); bandsSetMock.Include("Country"); bandsSetMock.Include("Genre"); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var actualResult = bandService.GetBandsByGenre(expectedGenre); CollectionAssert.IsEmpty(actualResult); }
public void ReturnBands_WithInstanceOfBand() { var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); var bands = GetBands(); string expectedGenre = "Metal"; var expectedResult = bands.Where(x => x.Genre.GenreName == expectedGenre); var bandsSetMock = QueryableDbSetMock.GetQueryableMockDbSet(bands); bandsSetMock.Include("Country"); bandsSetMock.Include("Genre"); contextMock.Setup(x => x.Bands).Returns(bandsSetMock); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); var actualResult = bandService.GetBandsByGenre(expectedGenre); CollectionAssert.AllItemsAreInstancesOfType(actualResult, typeof(Band)); }
public void RegisterNewBand_CanAddBand() { var genreData = new Genre() { Id = Guid.NewGuid(), GenreName = "Metal" }; var countryData = new Country() { Id = Guid.NewGuid(), CountryName = "Bulgaria" }; var band = new Band(); var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); countryServiceMock.Setup(x => x.GetById(It.Is <Guid>(g => g == countryData.Id))).Returns(countryData); genreServiceMock.Setup(x => x.GetGenre(It.Is <Guid>(g => g == genreData.Id))).Returns(genreData); bandFactoryMock.Setup(x => x.CreateBandInstance()).Returns(band); var bandDbList = new List <Band>(); var bandDbSetMock = new Mock <IDbSet <Band> >(); bandDbSetMock.Setup(set => set.Add(It.IsAny <Band>())).Callback((Band b) => bandDbList.Add(b)); contextMock.Setup(x => x.Bands).Returns(bandDbSetMock.Object); string bandName = "SomeBandName"; int formationYear = 2016; Guid countryId = countryData.Id; Guid genreId = genreData.Id; var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); bandService.RegisterNewBand(bandName, formationYear, genreId, countryId); Assert.That(bandDbList.Count(), Is.EqualTo(1)); Assert.That(bandDbList[0].Genre, Is.SameAs(genreData)); Assert.That(bandDbList[0].Country, Is.SameAs(countryData)); }
public void RegisterNewBand_ShouldCallTheAddMethod() { var genreData = new Genre() { Id = Guid.NewGuid(), GenreName = "Metal" }; var countryData = new Country() { Id = Guid.NewGuid(), CountryName = "Bulgaria" }; var band = new Band(); var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); countryServiceMock.Setup(x => x.GetById(It.Is <Guid>(g => g == countryData.Id))).Returns(countryData); genreServiceMock.Setup(x => x.GetGenre(It.Is <Guid>(g => g == genreData.Id))).Returns(genreData); bandFactoryMock.Setup(x => x.CreateBandInstance()).Returns(band); var bandDbList = new List <Band>(); var bandDbSetMock = new Mock <IDbSet <Band> >(); bandDbSetMock.Setup(set => set.Add(It.IsAny <Band>())).Callback((Band b) => bandDbList.Add(b)); contextMock.Setup(x => x.Bands).Returns(bandDbSetMock.Object).Verifiable(); string bandName = "SomeBandName"; int formationYear = 2016; Guid countryId = countryData.Id; Guid genreId = genreData.Id; var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); bandService.RegisterNewBand(bandName, formationYear, genreId, countryId); bandDbSetMock.Verify(mock => mock.Add(It.IsAny <Band>()), Times.Once()); //contextMock.Verify(mock => mock.Bands.Add(It.IsAny<Band>()), Times.Once()); }
public void RegisterNewBand_ThrowsArgumentNullExceptionWhenNoGenreIsReturned() { var genreData = new Genre() { Id = Guid.NewGuid(), GenreName = "Metal" }; var countryData = new Country() { Id = Guid.NewGuid(), CountryName = "Bulgaria" }; var band = new Band(); var contextMock = new Mock <IMusicLibraryContext>(); var contextBaseMock = new Mock <IMusicLibraryBaseContext>(); var countryServiceMock = new Mock <ICountryService>(); var genreServiceMock = new Mock <IGenreService>(); var userServiceMock = new Mock <IUserService>(); var bandFactoryMock = new Mock <IBandFactory>(); countryServiceMock.Setup(x => x.GetById(It.Is <Guid>(g => g == countryData.Id))).Returns(countryData); genreServiceMock.Setup(x => x.GetGenre(It.Is <Guid>(g => g == genreData.Id))).Returns(genreData); bandFactoryMock.Setup(x => x.CreateBandInstance()).Returns(band); var bandDbList = new List <Band>(); var bandDbSetMock = new Mock <IDbSet <Band> >(); bandDbSetMock.Setup(set => set.Add(It.IsAny <Band>())).Callback((Band b) => bandDbList.Add(b)); contextMock.Setup(x => x.Bands).Returns(bandDbSetMock.Object); string bandName = "SomeBandName"; int formationYear = 2016; Guid countryId = countryData.Id; Guid genreId = Guid.NewGuid(); var bandService = new BandService( contextMock.Object, contextBaseMock.Object, countryServiceMock.Object, genreServiceMock.Object, userServiceMock.Object, bandFactoryMock.Object); Assert.That(() => bandService.RegisterNewBand(bandName, formationYear, genreId, countryId), Throws.Exception.TypeOf <ArgumentNullException>()); Assert.That(() => bandService.RegisterNewBand(bandName, formationYear, genreId, countryId), Throws.Exception.Message.Contains("Parameter name: genre")); }
public async void CanGetBand() { using (var setup = new SQLiteInMemorySetup()) { using (var context = new ConcertManagerContext(setup.ContextOptions)) { context.Database.EnsureCreated(); } using (var context = new ConcertManagerContext(setup.ContextOptions)) { var service = new BandService(context); Band band = await service.GetBandAsync(1); Assert.Equal("Sabaton", band.Name); } } }
public async void CanDeleteBand() { using (var setup = new SQLiteInMemorySetup()) { using (var context = new ConcertManagerContext(setup.ContextOptions)) { context.Database.EnsureCreated(); } using (var context = new ConcertManagerContext(setup.ContextOptions)) { var service = new BandService(context); await service.DeleteBandAsync(7); } using (var context = new ConcertManagerContext(setup.ContextOptions)) { Assert.Equal(6, context.Bands.Count()); } } }
public async void CanUpdateBand() { using (var setup = new SQLiteInMemorySetup()) { using (var context = new ConcertManagerContext(setup.ContextOptions)) { context.Database.EnsureCreated(); } using (var context = new ConcertManagerContext(setup.ContextOptions)) { var service = new BandService(context); await service.UpdateBandAsync(1, new Band { Name = "Teszt", Country = "Magyarország", FormedIn = 2020 }); } using (var context = new ConcertManagerContext(setup.ContextOptions)) { Assert.Equal(7, context.Bands.Count()); Assert.Equal("Teszt", context.Bands.Find(1).Name); } } }
public MainPageViewModelNew() { //TODO set page title as group name pageTitle = "Hydrapp"; currentStatus = "Current Status"; connectButtonText = "Connect to Band"; readHR = "Not Active"; readSkinTemp = "Not Active"; readAmbientLight = "Not Active";; readGSR = "Not Active"; readUV = "Not Active"; readPedometer = "Not Active"; readCalories = "Not Active"; readFluidLoss = "Not Active"; connectButtonEnabled = true; bandService = new BandService(); getBandList(); //getBands(); }
public async void CanGetBands() { using (var setup = new SQLiteInMemorySetup()) { using (var context = new ConcertManagerContext(setup.ContextOptions)) { context.Database.EnsureCreated(); } using (var context = new ConcertManagerContext(setup.ContextOptions)) { var service = new BandService(context); List <Band> bands = (await service.GetBandsAsync()).ToList(); Assert.Equal(7, bands.Count); Assert.Equal("Sabaton", bands[0].Name); Assert.Equal("Beast in Black", bands[1].Name); Assert.Equal("Hammerfall", bands[2].Name); Assert.Equal("Powerwolf", bands[3].Name); Assert.Equal("Nightwish", bands[4].Name); Assert.Equal("Depresszió", bands[5].Name); Assert.Equal("UnitTest", bands[6].Name); } } }
public BandController(BandService service) { _service = service; }
private async Task InitializeAsync() { TelemetryService.Default.MessageReceived += OnMessageReceived; await BandService.InitializeAsync(); }