Beispiel #1
0
        public void TestGenreDelete()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Genre g = new Genre();
                g.GenreID   = 0; // auto incremented and set by add
                g.GenreName = "Test Genre W6YderKT";
                //add it to the context and save to database
                ctx.Genres.Add(g);
                ctx.SaveChanges();

                //Find the list of "Test Genre"
                //in case duplicates were added in the previous tests, delete them all
                var list = ctx.Genres
                           .Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt"))
                           .Where(n => n.GenreID > 1000);

                ctx.Genres.RemoveRange(list);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0, "No Record Deleted");

                //Test clean-up (none)
            }
        }
Beispiel #2
0
        public void TestAlbumDelete()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("kaskade")).FirstOrDefault();
                //Get a genre we know exists -- Electronic
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("electronic")).FirstOrDefault();
                //create a test album
                Album i = new Album();
                i.AlbumID = 0; // autogenerated on add
                i.AlbumYear = 2014;
                i.ArtistID = A.ArtistID;
                i.AlbumTitle = "The KqxKAW Test Album";
                i.AlbumRating = 5;
                i.GenreID = G.GenreID;
                //add it to the context, then database
                ctx.Albums.Add(i);
                ctx.SaveChanges();

                //find the list of "Testing Artists"
                //in case duplicates were added in the previous tests, delete them all
                var list = ctx.Albums
                    .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"));

                ctx.Albums.RemoveRange(list);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0, "No Record Deleted");

                //Test clean-up (none)

            }
        }
Beispiel #3
0
        public void TestGenreAdd()
        {
            //create a new context
            using (var ctx = new CDCatalogEntities())
            {
                //Test init

                //Create a test genre
                Genre g = new Genre();
                g.GenreID   = 0; // auto incremented and set by add
                g.GenreName = "Test Genre W6YderKT";
                //add it to the context
                ctx.Genres.Add(g);
                //verify that records were changed
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0 && g.GenreID > 0, "No Records Changed");

                //Test clean-up
                if (count > 0)
                {
                    var list = ctx.Genres
                               .Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt"))
                               .Where(n => n.GenreID > 0);

                    ctx.Genres.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
        public void TestArtistFetch()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Artist i = new Artist();
                i.ArtistID   = 0; // autogenerated on add
                i.ArtistName = "Testing Artist 7yJLirjI";
                //add it to the context and make changes in the database
                ctx.Artists.Add(i);
                ctx.SaveChanges();

                //Find the test artist in the database
                Artist a = ctx.Artists
                           .Where(n => n.ArtistName.ToLower().Equals("testing artist 7yjlirji"))
                           .FirstOrDefault();
                Assert.IsTrue(a != null, "No Record Found");

                //Test clean-up
                if (a != null)
                {
                    var list = ctx.Artists
                               .Where(n => n.ArtistName.ToLower().Equals("testing artist 7yjlirji"));

                    ctx.Artists.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #5
0
        public void TestGenreAdd()
        {
            //create a new context
            using (var ctx = new CDCatalogEntities())
            {
                //Test init

                //Create a test genre
                Genre g = new Genre();
                g.GenreID = 0;  // auto incremented and set by add
                g.GenreName = "Test Genre W6YderKT";
                //add it to the context
                ctx.Genres.Add(g);
                //verify that records were changed
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0 && g.GenreID > 0, "No Records Changed");

                //Test clean-up
                if (count > 0)
                {
                    var list = ctx.Genres
                        .Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt"))
                        .Where(n => n.GenreID > 0);

                    ctx.Genres.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #6
0
        public void TestGenreDelete()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Genre g = new Genre();
                g.GenreID = 0;  // auto incremented and set by add
                g.GenreName = "Test Genre W6YderKT";
                //add it to the context and save to database
                ctx.Genres.Add(g);
                ctx.SaveChanges();

                //Find the list of "Test Genre"
                //in case duplicates were added in the previous tests, delete them all
                var list = ctx.Genres
                .Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt"))
                .Where(n => n.GenreID > 1000);

                ctx.Genres.RemoveRange(list);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0, "No Record Deleted");

                //Test clean-up (none)

            }
        }
Beispiel #7
0
        public void TestAlbumDelete()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("kaskade")).FirstOrDefault();
                //Get a genre we know exists -- Electronic
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("electronic")).FirstOrDefault();
                //create a test album
                Album i = new Album();
                i.AlbumID     = 0; // autogenerated on add
                i.AlbumYear   = 2014;
                i.ArtistID    = A.ArtistID;
                i.AlbumTitle  = "The KqxKAW Test Album";
                i.AlbumRating = 5;
                i.GenreID     = G.GenreID;
                //add it to the context, then database
                ctx.Albums.Add(i);
                ctx.SaveChanges();


                //find the list of "Testing Artists"
                //in case duplicates were added in the previous tests, delete them all
                var list = ctx.Albums
                           .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"));

                ctx.Albums.RemoveRange(list);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0, "No Record Deleted");

                //Test clean-up (none)
            }
        }
Beispiel #8
0
        public void TestAlbumAdd()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init (none)

                //Get an artist we know exists -- Kaskade
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("kaskade")).FirstOrDefault();
                //Get a genre we know exists -- Electronic
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("electronic")).FirstOrDefault();
                //create a test album
                Album m = new Album();
                m.AlbumID = 0; // autogenerated on add
                m.AlbumYear = 2014;
                m.ArtistID = A.ArtistID;
                m.AlbumTitle = "The KqxKAW Test Album";
                m.AlbumRating = 5;
                m.GenreID = G.GenreID;
                //add it to the database
                ctx.Albums.Add(m);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0 && m.AlbumID > 0, "No Record Added");

                //Test clean-up
                if (count > 0)
                {
                    var list = ctx.Albums
                        .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"));

                    ctx.Albums.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #9
0
        public void TestAlbumAdd()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init (none)

                //Get an artist we know exists -- Kaskade
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("kaskade")).FirstOrDefault();
                //Get a genre we know exists -- Electronic
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("electronic")).FirstOrDefault();
                //create a test album
                Album m = new Album();
                m.AlbumID     = 0; // autogenerated on add
                m.AlbumYear   = 2014;
                m.ArtistID    = A.ArtistID;
                m.AlbumTitle  = "The KqxKAW Test Album";
                m.AlbumRating = 5;
                m.GenreID     = G.GenreID;
                //add it to the database
                ctx.Albums.Add(m);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0 && m.AlbumID > 0, "No Record Added");

                //Test clean-up
                if (count > 0)
                {
                    var list = ctx.Albums
                               .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"));

                    ctx.Albums.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #10
0
        public void TestGenreFetch()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Genre i = new Genre();
                i.GenreID   = 0; // auto incremented and set by add
                i.GenreName = "Test Genre W6YderKT";
                //add it to the context and save to database
                ctx.Genres.Add(i);
                ctx.SaveChanges();

                //Find the test genre in the database
                Genre g = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt")).FirstOrDefault();
                Assert.IsTrue(g != null, "No Record Found");

                //Test clean-up
                if (g != null)
                {
                    var list = ctx.Genres
                               .Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt"))
                               .Where(n => n.GenreID > 0);

                    ctx.Genres.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #11
0
        public void TestArtistAdd()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init (none)

                //Create a test artist
                Artist a = new Artist();
                a.ArtistID   = 0; // autogenerated on add
                a.ArtistName = "Testing Artist 7yJLirjI";
                //add it to the context
                ctx.Artists.Add(a);
                //verify that .. records were changed
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0 && a.ArtistID > 0, "No Records Changed");

                //Test clean-up
                if (count > 0)
                {
                    var list = ctx.Artists
                               .Where(n => n.ArtistName.ToLower().Equals("testing artist 7yjlirji"));

                    ctx.Artists.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #12
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="title"></param>
        /// <param name="artistId"></param>
        /// <param name="albumId"></param>
        /// <param name="trackNumber"></param>
        /// <param name="songRating"></param>
        /// <param name="trackLength"></param>
        /// <param name="genreId"></param>
        /// <returns></returns>
        public static bool UpdateSong(int songId, string title, int artistId, int albumId, int trackNumber, int songRating, int trackLength, int genreId)
        {
            var song = new CDCatalogEF.Song();

            try
            {
                song.SongTitle       = title;
                song.ArtistID        = artistId;
                song.AlbumID         = albumId;
                song.SongTrackNumber = trackNumber;
                song.SongRating      = songRating;
                song.SongTrackLength = trackLength;
                song.GenreID         = genreId;

                using (var db = new CDCatalogEntities())
                {
                    db.Songs.First(i => i.SongID == songId);
                    int resultCount = db.SaveChanges();
                    return(true); // Executes only if no exception
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Adding the Song failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            return(false);
        }
Beispiel #13
0
        public static int AddArtist(string artistName)
        {
            var artist = new CDCatalogEF.Artist();

            try
            {
                artist.ArtistName = artistName;

                using (var db = new CDCatalogEntities())
                {
                    db.Artists.Add(artist);                  //faults here
                    var resultCount = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Adding the Artist by Name failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            var artistId = artist.ArtistID;

            return(artistId);
        }
Beispiel #14
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="albumId"></param>
        /// <param name="albumYear"></param>
        /// <param name="artistId"></param>
        /// <param name="albumTitle"></param>
        /// <param name="albumRating"></param>
        /// <param name="genreId"></param>
        /// <returns></returns>
        public static bool ChangeAlbum(int albumId, int albumYear, int artistId, string albumTitle, int albumRating, int genreId)
        {
            var album = new CDCatalogEF.Album();

            try
            {
                album.AlbumID = albumId;
                album.AlbumYear = albumYear;
                album.ArtistID = artistId;
                album.AlbumTitle = albumTitle;
                album.AlbumRating = albumRating;
                album.GenreID = genreId;

                using (var db = new CDCatalogEntities())
                {
                    db.Albums.First(i => i.AlbumID == albumId);
                    int resultCount = db.SaveChanges();
                    return true;  // if there is an exception, this won't run
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Changing the Album failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            var songId = album.ArtistID; // The song.ArtistID gets updated in the context as its saved
            return true;
        }
Beispiel #15
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="albumYear"></param>
        /// <param name="artistId"></param>
        /// <param name="albumTitle"></param>
        /// <param name="albumRating"></param>
        /// <param name="genreId"></param>
        /// <returns></returns>
        public static int AddAlbum(int albumYear, int artistId, string albumTitle, int albumRating, int genreId)
        {
            var album = new CDCatalogEF.Album();

            try
            {
                album.AlbumYear = albumYear;
                album.ArtistID = artistId;
                album.AlbumTitle = albumTitle;
                album.AlbumRating = albumRating;
                album.GenreID = genreId;

                using (var db = new CDCatalogEntities())
                {
                    db.Albums.Add(album);
                    var resultCount = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Adding the Album failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            var songId = album.ArtistID; // The song.ArtistID gets updated in the context as its saved
            return artistId;
        }
Beispiel #16
0
        public void TestSongDelete()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                //Get an artist we know exists -- Avicii
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("avicii")).FirstOrDefault();
                //Get an album we know exists --
                Album M = ctx.Albums.Where(n => n.AlbumTitle.ToLower().Equals("true")).FirstOrDefault();
                //Get a genre we know exists -- Dance
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("dance")).FirstOrDefault();
                Song  s = new Song();
                s.SongID          = 0; // autogenerated on add
                s.SongTitle       = "Test Song GMwRYZ";
                s.ArtistID        = A.ArtistID;
                s.AlbumID         = M.AlbumID;
                s.GenreID         = G.GenreID;
                s.SongTrackNumber = 15;
                s.SongTrackLength = 350;
                s.SongRating      = 3;
                //add it to the database
                ctx.Songs.Add(s);

                //find the list of "Test Song GMwRYZ"
                //in case duplicates were added in the previous tests
                var list = ctx.Songs
                           .Where(n => n.SongTitle.ToLower().Equals("test song gmwryz"));

                ctx.Songs.RemoveRange(list);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0, "No Record Deleted");

                //Test clean-up (none)
            }
        }
Beispiel #17
0
        public static CDCatalogEF.Genre AddGenre(string genreName)
        {
            if (genreName == null)
            {
                // Define a new top-level error message.
                string str = "You did not enter a Genre Name.  Cancel this operation?";

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
                return(null);
            }
            var genre = new CDCatalogEF.Genre();

            try
            {
                genre.GenreName = genreName;

                using (var db = new CDCatalogEntities())
                {
                    db.Genres.Add(genre);
                    var resultCount = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Adding the Genre by Name failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            return(genre);
        }
Beispiel #18
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="title"></param>
        /// <param name="artistId"></param>
        /// <param name="albumId"></param>
        /// <param name="trackNumber"></param>
        /// <param name="songRating"></param>
        /// <param name="trackLength"></param>
        /// <param name="genreId"></param>
        /// <returns></returns>
        public static int AddSong(string title, int artistId, int albumId, int trackNumber, int songRating, int trackLength, int genreId)
        {
            var song = new CDCatalogEF.Song();

            try
            {
                song.SongTitle       = title;
                song.ArtistID        = artistId;
                song.AlbumID         = albumId;
                song.SongTrackNumber = trackNumber;
                song.SongRating      = songRating;
                song.SongTrackLength = trackLength;
                song.GenreID         = genreId;

                using (var db = new CDCatalogEntities())
                {
                    db.Songs.Add(song);
                    var resultCount = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Adding the Song failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            var songId = song.ArtistID; //The song.ArtistID gets updated in the context as its saved

            return(songId);
        }
Beispiel #19
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="albumId"></param>
        /// <param name="albumYear"></param>
        /// <param name="artistId"></param>
        /// <param name="albumTitle"></param>
        /// <param name="albumRating"></param>
        /// <param name="genreId"></param>
        /// <returns></returns>
        public static bool ChangeAlbum(int albumId, int albumYear, int artistId, string albumTitle, int albumRating, int genreId)
        {
            var album = new CDCatalogEF.Album();

            try
            {
                album.AlbumID     = albumId;
                album.AlbumYear   = albumYear;
                album.ArtistID    = artistId;
                album.AlbumTitle  = albumTitle;
                album.AlbumRating = albumRating;
                album.GenreID     = genreId;

                using (var db = new CDCatalogEntities())
                {
                    db.Albums.First(i => i.AlbumID == albumId);
                    int resultCount = db.SaveChanges();
                    return(true);  // if there is an exception, this won't run
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Changing the Album failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            var songId = album.ArtistID; // The song.ArtistID gets updated in the context as its saved

            return(true);
        }
Beispiel #20
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="albumYear"></param>
        /// <param name="artistId"></param>
        /// <param name="albumTitle"></param>
        /// <param name="albumRating"></param>
        /// <param name="genreId"></param>
        /// <returns></returns>
        public static int AddAlbum(int albumYear, int artistId, string albumTitle, int albumRating, int genreId)
        {
            var album = new CDCatalogEF.Album();

            try
            {
                album.AlbumYear   = albumYear;
                album.ArtistID    = artistId;
                album.AlbumTitle  = albumTitle;
                album.AlbumRating = albumRating;
                album.GenreID     = genreId;

                using (var db = new CDCatalogEntities())
                {
                    db.Albums.Add(album);
                    var resultCount = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Adding the Album failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            var songId = album.ArtistID; // The song.ArtistID gets updated in the context as its saved

            return(artistId);
        }
Beispiel #21
0
        public static int AddArtist(string artistName)
        {
            var artist = new CDCatalogEF.Artist();

            try
            {
                artist.ArtistName = artistName;

                using (var db = new CDCatalogEntities())
                {
                    db.Artists.Add(artist);                  //faults here
                    var resultCount = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                // Define a new top-level error message.
                string str = "Adding the Artist by Name failed. " + ex.Message;

                // Pop-up a messagebox with the message
                MessageBox.Show(str);
            }
            var artistId = artist.ArtistID;
            return artistId;
        }
Beispiel #22
0
        public void TestSongAdd()
        {
            //Test init (none)

            //Add a song to the database
            using (var ctx = new CDCatalogEntities())
            {
                //Get an artist we know exists -- Avicii
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("avicii")).FirstOrDefault();
                //Get an album we know exists --
                Album M = ctx.Albums.Where(n => n.AlbumTitle.ToLower().Equals("true")).FirstOrDefault();
                //Get a genre we know exists -- Dance
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("dance")).FirstOrDefault();
                //Creat a new song and add it to the context
                Song s = new Song();
                s.SongID          = 0; // autogenerated on add
                s.SongTitle       = "Test Song GMwRYZ";
                s.ArtistID        = A.ArtistID;
                s.AlbumID         = M.AlbumID;
                s.GenreID         = G.GenreID;
                s.SongTrackNumber = 15;
                s.SongTrackLength = 350;
                s.SongRating      = 3;
                //add it to the database
                ctx.Songs.Add(s);
                //verify that only one record was changed
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0 && s.SongID > 0, "No Records Added");

                //Test clean-up
                if (count > 0)
                {
                    //find all the test songs
                    var list = ctx.Songs
                               .Where(n => n.SongTitle.ToLower().Equals("test song gmwryz"));

                    //Remove the songs from the context and database
                    ctx.Songs.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #23
0
        public void TestSongAdd()
        {
            //Test init (none)

            //Add a song to the database
            using (var ctx = new CDCatalogEntities())
            {
                //Get an artist we know exists -- Avicii
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("avicii")).FirstOrDefault();
                //Get an album we know exists --
                Album M = ctx.Albums.Where(n => n.AlbumTitle.ToLower().Equals("true")).FirstOrDefault();
                //Get a genre we know exists -- Dance
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("dance")).FirstOrDefault();
                //Creat a new song and add it to the context
                Song s = new Song();
                s.SongID = 0;  // autogenerated on add
                s.SongTitle = "Test Song GMwRYZ";
                s.ArtistID = A.ArtistID;
                s.AlbumID = M.AlbumID;
                s.GenreID = G.GenreID;
                s.SongTrackNumber = 15;
                s.SongTrackLength = 350;
                s.SongRating = 3;
                //add it to the database
                ctx.Songs.Add(s);
                //verify that only one record was changed
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0 && s.SongID > 0, "No Records Added");

                //Test clean-up
                if (count > 0)
                {
                    //find all the test songs
                    var list = ctx.Songs
                        .Where(n => n.SongTitle.ToLower().Equals("test song gmwryz"));

                    //Remove the songs from the context and database
                    ctx.Songs.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
 public Genre CreateGenre(string name)
 {
     using (CDCatalogEntities context = new CDCatalogEntities())
     {
         var genre = new Genre();
         genre.GenreName = name;
         context.Genres.Add(genre);
         context.SaveChanges();
         return genre;
     }
 }
 public Artist CreateArtist(string artistName)
 {
     using (CDCatalogEntities context = new CDCatalogEntities())
     {
         var artist = new Artist();
         artist.ArtistName = artistName;
         context.Artists.Add(artist);
         context.SaveChanges();
         return artist;
     }
 }
Beispiel #26
0
 private void button3_Click(object sender, EventArgs e)
 {
     using (CDCatalogEntities db = new CDCatalogEntities())
     {
         List <Song> songList = db.Songs.OrderBy(s => s.SongTitle).ToList();
         foreach (Song s in songList)
         {
             s.TrackLength -= 300;
             db.SaveChanges();
         }
     }
 }
Beispiel #27
0
        public void TestAlbumFetch()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                //Get an artist we know exists -- Kaskade
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("kaskade")).FirstOrDefault();
                //Get a genre we know exists -- Electronic
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("electronic")).FirstOrDefault();
                //create a test album
                Album i = new Album();
                i.AlbumID     = 0; // autogenerated on add
                i.AlbumYear   = 2014;
                i.ArtistID    = A.ArtistID;
                i.AlbumTitle  = "The KqxKAW Test Album";
                i.AlbumRating = 5;
                i.GenreID     = G.GenreID;
                //add it to the context, then database
                ctx.Albums.Add(i);
                ctx.SaveChanges();


                //Find the test album in the database
                Album m = ctx.Albums
                          .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"))
                          .FirstOrDefault();
                Assert.IsTrue(m != null, "No Record Found");

                //Test clean-up
                if (m != null)
                {
                    var list = ctx.Albums
                               .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"));

                    ctx.Albums.RemoveRange(list);
                    int count = ctx.SaveChanges();
                }
            }
        }
 public Album CreateAlbum(string albumTitle, Artist albumArtist, int albumYear, int albumRating)
 {
     using (CDCatalogEntities context = new CDCatalogEntities())
     {
         var album = new Album();
         album.Title = albumTitle;
         album.Year = albumYear;
         album.Rating = albumRating;
         album.ArtistId = albumArtist.ArtistId;
         context.Albums.Add(album);
         context.SaveChanges();
         return album;
     }
 }
Beispiel #29
0
        public void TestArtistDelete()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Artist i = new Artist();
                i.ArtistID   = 0; // autogenerated on add
                i.ArtistName = "Testing Artist 7yJLirjI";
                //add it to the context and make changes in the database
                ctx.Artists.Add(i);
                ctx.SaveChanges();

                //find the list of "Testing Artists"
                //in case duplicates were added in the previous tests
                var list = ctx.Artists
                           .Where(n => n.ArtistName.ToLower().Equals("testing artist 7yjlirji"));

                ctx.Artists.RemoveRange(list);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0, "No Record Deleted");

                //Test clean-up (none)
            }
        }
        public Song CreateSong(string songTitle, Artist artist, Genre genre, int songLengthSeconds, int songRating, Album album = null, int albumTrackNumber = 0)
        {
            using (CDCatalogEntities context = new CDCatalogEntities())
            {
                var song = new Song();
                song.Title = songTitle;
                song.ArtistId = artist.ArtistId;
                song.GenreId = genre.GenreId;
                song.TrackLengthSeconds = songLengthSeconds;
                song.Rating = songRating;
                song.AlbumId = album?.AlbumId;
                song.TrackNumber = albumTrackNumber;

                context.Songs.Add(song);
                context.SaveChanges();
                return song;
            }
        }
Beispiel #31
0
        public void TestSongFetch()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                //Get an artist we know exists -- Avicii
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("avicii")).FirstOrDefault();
                //Get an album we know exists --
                Album M = ctx.Albums.Where(n => n.AlbumTitle.ToLower().Equals("true")).FirstOrDefault();
                //Get a genre we know exists -- Dance
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("dance")).FirstOrDefault();
                //Build a context
                Song i = new Song();
                i.SongID          = 0; // autogenerated on add
                i.SongTitle       = "Test Song GMwRYZ";
                i.ArtistID        = A.ArtistID;
                i.AlbumID         = M.AlbumID;
                i.GenreID         = G.GenreID;
                i.SongTrackNumber = 15;
                i.SongTrackLength = 300;
                i.SongRating      = 3;
                //add it to the database
                ctx.Songs.Add(i);

                //find a the test song in the database
                Song s = ctx.Songs.Where(n => n.SongTitle.ToLower().Equals("test song gmwryz")).FirstOrDefault();
                Assert.IsTrue(s != null, "No Record Deleted");

                //Test clean-up
                if (s != null)
                {
                    //find all the test songs in the context
                    var list = ctx.Songs
                               .Where(n => n.SongTitle.ToLower().Equals("test song gmwryz"));

                    //delete them from the context and database
                    ctx.Songs.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #32
0
        public static int AddArtist(string artistName)
        {
            CDCatalogEF.Artist artist = new Artist();

            try
            {
                artist.ArtistName = artistName;

                using (var db = new CDCatalogEntities())
                {
                    db.Artists.Add(artist);
                    int resultCount = db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                string s = ex.Message;
            }
            int artistId = artist.ArtistID;

            return(artistId);
        }
Beispiel #33
0
        private List <PlaylistSong> RandomPlaylist(List <Song> sourceList, int targetSeconds, Playlist playList)
        {
            ///Algorithm needs to:
            ///1) Check playlist length against target--while totalLength less than or equal to targetSeconds + 60?
            ///
            ///2) Reduce available songs to those that will fit in the time.
            ///3) Add a song, add song length to totalLength
            ///
            Random rand = new Random();
            List <PlaylistSong> playlistSongList = new List <PlaylistSong>();
            PlaylistSong        newPLS           = new PlaylistSong();

            bool keepGoing      = true;
            bool isFull         = false;
            bool notEnoughSongs = false;
            int  iterator       = 0;
            int  index          = 0;
            int  songOrder      = 1;
            int  totalLength    = 0;

            List <Song> songList     = sourceList.OrderBy(s => s.SongID).ToList();
            List <Song> filteredList = songList.Where(s => s.TrackLength <= ((targetSeconds + 60) - totalLength)).ToList();
            List <Song> workingList  = new List <Song>();

            //checking the iterator keeps this from becoming an infinite loop,
            //but all testing, even with fairly small datasets, has so far found
            //a solution before the iterator iterates out.
            while (iterator < 1000000000 && keepGoing == true)
            {
                while (totalLength <= (targetSeconds + 60) && isFull == false && notEnoughSongs == false)
                {
                    //reduce the available songs to only those which will not exceed the specifid playlist length plus one minute.
                    filteredList = songList.Where(s => s.TrackLength <= ((targetSeconds + 60) - totalLength)).ToList();

                    if (filteredList.Count > 0) //If we're out of songs, we can't add any more to the playlist
                    {
                        index = rand.Next(0, filteredList.Count);
                        workingList.Add(songList[index]);
                        totalLength += songList[index].TrackLength;
                        songList.RemoveAt(index);
                    }
                    else
                    {
                        notEnoughSongs = true;
                        keepGoing      = false;
                    }

                    if (totalLength >= (targetSeconds - 60))
                    {
                        isFull = true;
                    }
                }

                if (totalLength >= (targetSeconds - 60) && totalLength <= (targetSeconds + 60))
                {
                    using (CDCatalogEntities db = new CDCatalogEntities())
                    {
                        songOrder = 1;
                        foreach (Song s in workingList)
                        {
                            newPLS            = new PlaylistSong();
                            newPLS.PlaylistID = playList.PlaylistID;
                            newPLS.SongID     = s.SongID;
                            newPLS.SongOrder  = songOrder;
                            db.PlaylistSongs.Add(newPLS);
                            db.SaveChanges();
                            playlistSongList.Add(newPLS);
                            songOrder++;
                        }
                    }
                    keepGoing = false;
                }
                else
                {
                    workingList.Clear();
                    totalLength  = 0;
                    isFull       = false;
                    songList     = sourceList.OrderBy(s => s.SongID).ToList();
                    filteredList = songList.Where(s => s.TrackLength <= ((targetSeconds + 60) - totalLength)).ToList();
                    iterator++;
                }
            }

            return(playlistSongList);
        }
Beispiel #34
0
        private void button1_Click(object sender, EventArgs e)
        {
            using (CDCatalogEntities db = new CDCatalogEntities())
            {
                Genre genre = db.Genres.Where(g => g.GenreName.Equals("Alternative")).First();
                //Album album = db.Albums.Where(a => a.AlbumTitle.Equals("Ramones [Expanded]")).First();
                Album album = new Album();
                album.AlbumTitle = "Apollo 18";
                album.ArtistID   = db.Artists.Where(a => a.ArtistName.Equals("They Might Be Giants")).First().ArtistID;
                album.Year       = 2015;

                db.Albums.Add(album);
                db.SaveChanges();

                Song song = new Song();
                song.SongTitle   = "Dig My Grave";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 1;
                song.TrackLength = 68;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "I Palindrome I";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 2;
                song.TrackLength = 142;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "She's Actual Size";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 3;
                song.TrackLength = 125;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "My Evil Twin";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 4;
                song.TrackLength = 157;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Mammal";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 5;
                song.TrackLength = 134;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "The Statue Got Me High";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 6;
                song.TrackLength = 186;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Spider";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 7;
                song.TrackLength = 50;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "The Guitar";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 8;
                song.TrackLength = 228;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Dinner Bell";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 9;
                song.TrackLength = 131;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Narrow Your Eyes";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 10;
                song.TrackLength = 166;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Hall of Heads";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 11;
                song.TrackLength = 173;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Which Describes How You're Feeling";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 12;
                song.TrackLength = 73;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "See the Constellation";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 13;
                song.TrackLength = 207;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "If I Wasn't Shy";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 14;
                song.TrackLength = 103;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Turn Around";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 15;
                song.TrackLength = 173;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Hypnotist of Ladies";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 16;
                song.TrackLength = 101;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Catching on Fire";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 17;
                song.TrackLength = 12;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Fingertips I";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 18;
                song.TrackLength = 6;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "I Hear the Wind Blow";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 19;
                song.TrackLength = 10;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Hey Now, Everybody";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 20;
                song.TrackLength = 5;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Standin'";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 21;
                song.TrackLength = 6;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "A New Friend";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 22;
                song.TrackLength = 7;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Wreck My Car";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 23;
                song.TrackLength = 11;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Aren't You the Guy";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 24;
                song.TrackLength = 6;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Pass the Milk";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 25;
                song.TrackLength = 8;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Leave Me Alone";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 26;
                song.TrackLength = 5;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Knockin' on the Wall";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 27;
                song.TrackLength = 4;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "All Alone";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 28;
                song.TrackLength = 5;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Blue Thing";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 29;
                song.TrackLength = 8;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Something Grabbed Ahold of My Hand";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 30;
                song.TrackLength = 11;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "I Don't Understand You";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 31;
                song.TrackLength = 27;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "I Heard a Sound";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 32;
                song.TrackLength = 4;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Mysterious Whisper";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 33;
                song.TrackLength = 28;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "The Day That Love Came to Play";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 34;
                song.TrackLength = 8;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Heart Attack";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 35;
                song.TrackLength = 22;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Fingertips II";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 36;
                song.TrackLength = 10;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Darkened Corridors";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 37;
                song.TrackLength = 61;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                song             = new Song();
                song.SongTitle   = "Space Suit";
                song.AlbumID     = album.AlbumID;
                song.ArtistID    = album.ArtistID;
                song.GenreID     = genre.GenreID;
                song.TrackNumber = 38;
                song.TrackLength = 96;
                song.Rating      = 3;

                db.Songs.Add(song);
                db.SaveChanges();

                albumList = db.Albums.OrderBy(a => a.AlbumTitle).ToList();
                dataGridView1.DataSource = albumList;
            }
        }
Beispiel #35
0
        public void TestAlbumFetch()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                //Get an artist we know exists -- Kaskade
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("kaskade")).FirstOrDefault();
                //Get a genre we know exists -- Electronic
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("electronic")).FirstOrDefault();
                //create a test album
                Album i = new Album();
                i.AlbumID = 0; // autogenerated on add
                i.AlbumYear = 2014;
                i.ArtistID = A.ArtistID;
                i.AlbumTitle = "The KqxKAW Test Album";
                i.AlbumRating = 5;
                i.GenreID = G.GenreID;
                //add it to the context, then database
                ctx.Albums.Add(i);
                ctx.SaveChanges();

                //Find the test album in the database
                Album m = ctx.Albums
                    .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"))
                    .FirstOrDefault();
                Assert.IsTrue(m != null, "No Record Found");

                //Test clean-up
                if (m != null)
                {
                    var list = ctx.Albums
                        .Where(n => n.AlbumTitle.ToLower().Equals("the kqxkaw test album"));

                    ctx.Albums.RemoveRange(list);
                    int count = ctx.SaveChanges();

                }
            }
        }
Beispiel #36
0
        public void TestSongDelete()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                //Get an artist we know exists -- Avicii
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("avicii")).FirstOrDefault();
                //Get an album we know exists --
                Album M = ctx.Albums.Where(n => n.AlbumTitle.ToLower().Equals("true")).FirstOrDefault();
                //Get a genre we know exists -- Dance
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("dance")).FirstOrDefault();
                Song s = new Song();
                s.SongID = 0;  // autogenerated on add
                s.SongTitle = "Test Song GMwRYZ";
                s.ArtistID = A.ArtistID;
                s.AlbumID = M.AlbumID;
                s.GenreID = G.GenreID;
                s.SongTrackNumber = 15;
                s.SongTrackLength =350;
                s.SongRating = 3;
                //add it to the database
                ctx.Songs.Add(s);

                //find the list of "Test Song GMwRYZ"
                //in case duplicates were added in the previous tests
                var list = ctx.Songs
                    .Where(n => n.SongTitle.ToLower().Equals("test song gmwryz"));

                ctx.Songs.RemoveRange(list);
                int count = ctx.SaveChanges();
                Assert.IsTrue(count > 0, "No Record Deleted");

                //Test clean-up (none)
            }
        }
Beispiel #37
0
        public void TestGenreFetch()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                Genre i = new Genre();
                i.GenreID = 0;  // auto incremented and set by add
                i.GenreName = "Test Genre W6YderKT";
                //add it to the context and save to database
                ctx.Genres.Add(i);
                ctx.SaveChanges();

                //Find the test genre in the database
                Genre g = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt")).FirstOrDefault();
                Assert.IsTrue(g != null, "No Record Found");

                //Test clean-up
                if (g != null)
                {
                    var list = ctx.Genres
                        .Where(n => n.GenreName.ToLower().Equals("test genre w6yderkt"))
                        .Where(n => n.GenreID > 0);

                    ctx.Genres.RemoveRange(list);
                    ctx.SaveChanges();
                }
            }
        }
Beispiel #38
0
        public void TestSongFetch()
        {
            using (var ctx = new CDCatalogEntities())
            {
                //Test init
                //Get an artist we know exists -- Avicii
                Artist A = ctx.Artists.Where(n => n.ArtistName.ToLower().Equals("avicii")).FirstOrDefault();
                //Get an album we know exists --
                Album M = ctx.Albums.Where(n => n.AlbumTitle.ToLower().Equals("true")).FirstOrDefault();
                //Get a genre we know exists -- Dance
                Genre G = ctx.Genres.Where(n => n.GenreName.ToLower().Equals("dance")).FirstOrDefault();
                //Build a context
                Song i = new Song();
                i.SongID = 0;  // autogenerated on add
                i.SongTitle = "Test Song GMwRYZ";
                i.ArtistID = A.ArtistID;
                i.AlbumID = M.AlbumID;
                i.GenreID = G.GenreID;
                i.SongTrackNumber = 15;
                i.SongTrackLength = 300;
                i.SongRating = 3;
                //add it to the database
                ctx.Songs.Add(i);

                //find a the test song in the database
                Song s = ctx.Songs.Where(n => n.SongTitle.ToLower().Equals("test song gmwryz")).FirstOrDefault();
                Assert.IsTrue(s != null, "No Record Deleted");

                //Test clean-up
                if (s != null)
                {
                    //find all the test songs in the context
                    var list = ctx.Songs
                        .Where(n => n.SongTitle.ToLower().Equals("test song gmwryz"));

                    //delete them from the context and database
                    ctx.Songs.RemoveRange(list);
                    ctx.SaveChanges();
                }

            }
        }
        public void UpdateAlbumRating(string albumTitle, int albumRating, string artistName = null)
        {
            using (CDCatalogEntities context = new CDCatalogEntities())
            {
                Album album;
                if (artistName == null)
                {
                    album = GetAlbumByID(SearchAlbumsByAlbumTitle(albumTitle).First().AlbumId);
                }
                else
                {
                    var albums = SearchAlbumsByAlbumTitle(albumTitle).ToList();
                    album = GetAlbumByID(albums.Where(a => a.Artist_Name == artistName).FirstOrDefault().AlbumId);
                }
                album.Rating = albumRating;

                context.Albums.Attach(album);
                var entry = context.Entry(album);
                entry.Property(e => e.Rating).IsModified = true;
                context.SaveChanges();
            }
        }
        public void UpdateSongRating(string songTitle, int songRating, Album album = null)
        {
            using (CDCatalogEntities context = new CDCatalogEntities())
            {
                Song song;
                if (album == null)
                    song = GetSongByID(SearchSongsBySongTitle(songTitle).First().SongID);
                else
                {
                    var songs = SearchSongsBySongTitle(songTitle);
                    song = GetSongByID((songs.Where(s => s.Album == album.Title).FirstOrDefault()).SongID);
                }
                song.Rating = songRating;

                context.Songs.Attach(song);
                var entry = context.Entry(song);
                entry.Property(e => e.Rating).IsModified = true;
                context.SaveChanges();
            }
        }