public void AddGuitar(string serialNumber, double price, Builder?builder, string model, GuitarType?type, int numStrings, Wood?backWood, Wood?topWood) { var spec = new GuitarSpec(builder, model, type, numStrings, backWood, topWood); var guitar = new Guitar(serialNumber, price, spec); _guitars.Add(guitar); }
static void Main(string[] args) { Inventory inventory = new Inventory(); initializeInventory(inventory); GuitarSpec whatErinLikes = new GuitarSpec(Model.Type.ELECTRIC, Builder.FENDER, Wood.ALDER, Wood.ALDER, "Stratocastor", 16); ArrayList guitars = inventory.Search(whatErinLikes); if (guitars.Count != 0) { Console.WriteLine("Erin, you might like these guitars : \n"); foreach (var item in guitars) { Guitar guitar = (Guitar)item; GuitarSpec guitarSpec = (GuitarSpec)guitar.Spec; Console.WriteLine(guitarSpec.GetBuilder + " " + guitarSpec.Model + "" + guitarSpec.GetInsType + " guitar:\n" + guitarSpec.BackWood + " back and sides,\n" + guitarSpec.NumStrings + " num strings are present" + guitarSpec.TopWood + " top.\nYou can have it for only $" + guitar.Price + "!"); Console.WriteLine(); } } else { Console.WriteLine("Sorry, Erin, we have nothing for you."); } }
public bool matches(GuitarSpec otherSpec) { if (Builder != otherSpec.Builder) { return(false); } if ((Model != null) && (!Model.Equals("")) && (!Model.ToLower().Equals(otherSpec.Model.ToLower()))) { return(false); } if (Type != otherSpec.Type) { return(false); } if (NumStrings != otherSpec.NumStrings) { return(false); } if (BackWood != otherSpec.BackWood) { return(false); } if (TopWood != otherSpec.TopWood) { return(false); } return(true); }
public static void Main(string[] args) { Inventory inventory = new Inventory(); InitializeInventory(inventory); GuitarSpec whatErinLikes = new GuitarSpec(Builder.FENDER, "Stratocastor", Type.ELECTRIC, 6, Wood.ALDER, Wood.ALDER); List <Guitar> matchingGuitars = inventory.Search(whatErinLikes); if (matchingGuitars.Count > 0) { Console.WriteLine("Erin, you might like these guitars:"); foreach (Guitar guitar in matchingGuitars) { GuitarSpec spec = guitar.Spec; Console.WriteLine(" We have a " + spec.Builder + " " + spec.Model + " " + spec.Type + " guitar:\n " + spec.BackWood + " back and sides,\n " + spec.TopWood + " top.\n You can have it for only $" + guitar.Price + "!\n ----"); } } else { Console.WriteLine("Sorry, Erin, we have nothing for you."); } }
public void TestSearchrMetodSpecFoundTwice() { GuitarSpec spec = new GuitarSpec(Builder.Chitaro, "", Type.Electrica, Wood.Stejar, Wood.Stejar); Inventory inv = new Inventory(); List <Guitar> chitare = inv.Search(spec); Assert.AreEqual(chitare.Count, 2); }
public void TestSearchrMetodSpecNotFound() { GuitarSpec spec = new GuitarSpec(Builder.Romchitara, "Modelul asta nu exista", Type.Electrica, Wood.Stejar, Wood.Stejar); Inventory inv = new Inventory(); List <Guitar> chitare = inv.Search(spec); Assert.AreEqual(chitare.Count, 0); }
public List <Guitar> GetGuitar() { GuitarSpec whatErinLikes = new GuitarSpec { Builder = Builder.Fendor, Model = "Stratocastor", Type = Type.Electric, BackWood = Wood.Alder, TopWood = Wood.Alder, NumString = "12" }; var guitars = _inventory.SearchGuitar(whatErinLikes); return(guitars); }
public List <Guitar> SearchGuitar(GuitarSpec requiredGuitar) { // return _guitars.Where(guitar => guitar.Type.Equals(requiredGuitar.Type) && // guitar.Builder.Equals(requiredGuitar.Builder) && // guitar.Model.Equals(requiredGuitar.Model) && // guitar.BackWood.Equals(requiredGuitar.TopWood) && // guitar.TopWood.Equals(requiredGuitar.TopWood) && // guitar.NumString.Equals(requiredGuitar.NumString))?.ToList(); return(_guitars.Where(guitar => guitar.GuitarSpec.IsGuitarMatch(requiredGuitar)).ToList()); }
public List <Guitar> Search(GuitarSpec searchSpec) { List <Guitar> matchingGuitars = null; foreach (Guitar guitar in inventory) { if (guitar.Spec.IsMatch(searchSpec)) { matchingGuitars.Add(guitar); } } return(matchingGuitars); }
public List <Guitar> Search(GuitarSpec searchGuitar) { var machingGuitars = new List <Guitar>(); foreach (var guitar in _guitars) { GuitarSpec guitarSpec = guitar.Spec; if (guitarSpec.Matches(searchGuitar)) { machingGuitars.Add(guitar); } } return(machingGuitars); }
public List <Guitar> search(GuitarSpec searchGuitar) { List <Guitar> matches = new List <Guitar>(); foreach (Instrument guitar in this.instruments) { InstrumentSpec spec = guitar.getSpec(); if (searchGuitar.Equals(spec)) { matches.Add((Guitar)guitar); } } return(matches); }
static void Main(string[] args) { Inventory inventory = new Inventory(); initializeInventory(inventory); GuitarSpec whatEveLikes = new GuitarSpec(Abstract.Type.ELECTRIC, "", Builder.GIBSON, Wood.ALDER, Wood.BRAZILIAN_ROSEWOOD, 6); List <Guitar> guitars = inventory.Search(whatEveLikes); if (guitars != null) { Console.WriteLine("Znaleziono!"); } else { Console.WriteLine("Nie znaleziono pasujących gitar"); } }
static void Main(string[] args) { var inventory = new Inventory(); InitializeInventory(inventory); var whatErinLikes = new GuitarSpec(Builder.Fender, "StratoCastor", GuitarType.Electric, 6, Wood.Alder, Wood.Alder); List <Guitar> guitars = inventory.Search(whatErinLikes); if (guitars.Any()) { guitars.ForEach(Console.WriteLine); } else { Console.WriteLine("Nothing found"); } Console.ReadLine(); }
public void TwoMatchesForErin() { GuitarSpec searchSpec = new GuitarSpec { Builder = Builder.Fender, ModelName = "Stratocaster", Type = GuitarType.Electric, TopWood = Wood.Alder, BackWood = Wood.Alder }; var matchingGuitars = sampleInventory.Search(searchSpec); Assert.AreEqual(2, (matchingGuitars as List <Guitar>).Count); foreach (Guitar match in matchingGuitars) { Assert.AreEqual(match.Spec.Builder, searchSpec.Builder); Assert.IsTrue(match.Spec.ModelName.Equals(searchSpec.ModelName, StringComparison.OrdinalIgnoreCase)); Assert.AreEqual(match.Spec.Type, searchSpec.Type); Assert.AreEqual(match.Spec.TopWood, searchSpec.TopWood); Assert.AreEqual(match.Spec.BackWood, searchSpec.BackWood); } }
public Guitar(string serialNumber, double price, GuitarSpec spec) { SerialNumber = serialNumber; Price = price; Spec = spec; }