Esempio n. 1
0
        public void TracksWithSameNameAlbumAndArtistAreEqual()
        {
            var artist = new Artist {
                Name = "Caravan Palace"
            };
            var album = new Album {
                Title = "Panic", Year = "2012"
            };
            var track1 = new Track {
                Title = "Cotton Heads", Album = album
            };
            var track2 = new Track {
                Title = "Cotton Heads", Album = album
            };
            var trackArtistJunction1 = new TrackArtist_Junction {
                Track = track1, Artist = artist
            };
            var trackArtistJunction2 = new TrackArtist_Junction {
                Track = track2, Artist = artist
            };

            track1.Artists.Add(trackArtistJunction1);
            track2.Artists.Add(trackArtistJunction2);
            Assert.AreEqual(track1, track2);
        }
Esempio n. 2
0
        public void JoinTrackToArtist(string trackTitle, string artistName)
        {
            using (var db = new DecibaseContext())
            {
                var track  = db.Tracks.First(t => t.Title == trackTitle);
                var artist = db.Artists.First(a => a.Name == artistName);

                if (db.TrackArtists.FirstOrDefault(ta => ta.TrackId == track.TrackId && ta.ArtistId == artist.ArtistId) == null)
                {
                    var ta = new TrackArtist_Junction()
                    {
                        TrackId = track.TrackId, ArtistId = artist.ArtistId
                    };
                    db.Add(ta);
                    db.SaveChanges();
                }
            }
        }
Esempio n. 3
0
        public void TracksWithSameNameArtistAndNullAlbumAreEqual()
        {
            var artist = new Artist {
                Name = "Caravan Palace"
            };
            var track1 = new Track {
                Title = "Cotton Heads"
            };
            var track2 = new Track {
                Title = "Cotton Heads"
            };
            var trackArtistJunction1 = new TrackArtist_Junction {
                Track = track1, Artist = artist
            };
            var trackArtistJunction2 = new TrackArtist_Junction {
                Track = track2, Artist = artist
            };

            track1.Artists.Add(trackArtistJunction1);
            track2.Artists.Add(trackArtistJunction2);
            Assert.AreEqual(track1, track2);
        }