/// <summary> /// Loads single class from Usos class details page /// </summary> /// <param name="classPageLink">Link to class details</param> /// <param name="httpClient">Client used to download data</param> /// <returns></returns> private async Task <UniversityClass> ExtractSingeClass(string classPageLink, HttpClient httpClient) { var response = await httpClient.GetAsync(classPageLink); if (response.StatusCode != HttpStatusCode.OK) { throw new IOException("Unable to open class link"); } var stream = await response.Content.ReadAsStreamAsync(); var document = new HtmlDocument(); document.Load(stream); var contentDiv = document.DocumentNode.SelectSingleNode(@"//div[@class='wrtext']"); var textNode = contentDiv.SelectSingleNode(@"h1"); var className = textNode.SelectSingleNode(@"a").InnerText; var universityClass = new UniversityClass() { Name = className }; return(universityClass); }
public UniversityClass[] GetInstructorClasses(int instructorId) { UniversityClass[] universityClasses = new UniversityClass[0]; for (int index = 0; index < _universityData.InstructorClasses.Length; index++) { InstructorClass instructorClass = _universityData.InstructorClasses[index]; if (instructorClass.InstructorId.Equals(instructorId)) { for (int indexJ = 0; indexJ < _universityData.UniversityClasses.Length; indexJ++) { UniversityClass universityClass = _universityData.UniversityClasses[indexJ]; if (universityClass.CourseId.Equals(instructorClass.CourseId)) { Array.Resize(ref universityClasses, universityClasses.Length + 1); universityClasses[universityClasses.Length - 1] = universityClass; } } } } return(universityClasses); }
private UniversityClass MapUniversityClass(string[] columns) { UniversityClass universityClass = new UniversityClass(); universityClass.Title = columns[1]; universityClass.CourseId = int.Parse(columns[0]); return(universityClass); }
private void DisplayAllClasses(string message) { Console.Clear(); Console.Title = "Super Duper University (Instructor - Classes)"; Console.WriteLine("****************************************************************"); Console.WriteLine("*Welcome to the Super - Duper University Instructor Application*"); Console.WriteLine("****************************************************************"); Console.WriteLine(""); Console.WriteLine($"Welcome {InstructorName} please select an option:"); Console.WriteLine(""); if (!string.IsNullOrEmpty(message)) { Console.WriteLine(message); } Console.WriteLine(""); Console.WriteLine("(1) Please select class Id to view details."); Console.WriteLine(""); // display columns Console.WriteLine("Course Id|Course Title"); UniversityClass[] universityClasses = _universityCatalog.GetInstructorClasses(InstructorId); for (int index = 0; index < universityClasses.Length; index++) { UniversityClass universityClass = universityClasses[index]; Console.WriteLine($"{universityClass.CourseId}|{universityClass.Title}"); } string userOption = Console.ReadLine(); if (!string.IsNullOrEmpty(userOption)) { int classId = int.Parse(userOption); NextScreen.InstructorId = InstructorId; NextScreen.ClassId = classId; NextScreen.InstructorName = InstructorName; MoveNextScreen(); } else { DisplayAllClasses("Pease select a class Id!"); } }
internal string GetClassName(int classId) { for (int index = 0; index < _universityData.UniversityClasses.Length; index++) { UniversityClass universityClass = _universityData.UniversityClasses[index]; if (universityClass.CourseId.Equals(classId)) { return(universityClass.Title); } } return(""); }
public void UniversityNameLengthCheck() { Assert.Throws <Exception>(delegate { UniversityClass z = new UniversityClass("Universite Saint-Joseph de Beyrouth"); }); }
public void UniversityNameNullCheck() { Assert.Throws <Exception>(delegate { UniversityClass z = new UniversityClass(null); }); }
public void setup() { u = new UniversityClass("AAA"); }
static void Main(string[] args) { #region pure collection binding //ObservableCollection<int> sourceCollection = // new ObservableCollection<int> { 1, 2, 3 }; //ObservableCollection<string> targetCollection = // new ObservableCollection<string>(); //TwoWayCollectionBinding<int, string> twoWayBinding = new TwoWayCollectionBinding<int, string> //{ // SourceCollection = sourceCollection, // TargetCollection = targetCollection, // SourceToTargetDelegate = (i) => i.ToString(), // TargetToSourceDelegate = (str) => Int32.Parse(str) //}; //twoWayBinding.Bind(); //Console.WriteLine("\nOriginal source collection"); //sourceCollection.ForEach((i) => Console.WriteLine(i)); // print the source collection //Console.WriteLine("\nOriginal target collection"); //targetCollection.ForEach((i) => Console.WriteLine(i)); // print the source collection //Console.WriteLine("\nAfter removing element at index 1 from source"); //sourceCollection.RemoveAt(1); // remove element at index 1 from source collection //targetCollection.ForEach((str) => Console.WriteLine(str)); // print target collection //Console.WriteLine("\nAfter adding 4 to target"); //targetCollection.Add("4"); // append string "4" to the end of the target collection //sourceCollection.ForEach((i) => Console.WriteLine(i)); // print the source collection //Console.WriteLine("\nAfter inserting 0 to target"); //targetCollection.Insert(0, "0"); // insert string "0" at index 0 for the target collection //sourceCollection.ForEach((i) => Console.WriteLine(i)); // print the source collection //Console.WriteLine("\nAfter inserting 2 at index 2 to source"); //sourceCollection.Insert(2, 2); // insert number 2 at index 2 for the source collection //targetCollection.ForEach((str) => Console.WriteLine(str)); // print the target collection #endregion pure collection binding #region collection value binding //Console.WriteLine("\nValue collection bindings"); //TestData<int> source = new TestData<int>(); //TestData<string> target = new TestData<string>(); //OneWayCollectionValueBindingWithPath //< // int, // string, // ObservableCollection<int>, // ObservableCollection<string> //> //theBinding = new OneWayCollectionValueBindingWithPath // < // int, // string, // ObservableCollection<int>, // ObservableCollection<string> // > // { // IsOneWayCollectionBinding = false, // CreationType = typeof(ObservableCollection<string>), // SourceObj = source, // TargetObj = target, // SourceToTargetDelegate = (i) => i.ToString(), // TargetToSourceDelegate = (str) => Int32.Parse(str) // }; //List<BindingPathLink<object>> sourcePathLinks = new List<BindingPathLink<object>>(); //sourcePathLinks.Add(new BindingPathLink<object>("TheCollection")); //theBinding.SourcePathLinks = sourcePathLinks; //List<BindingPathLink<object>> targetPathLinks = new List<BindingPathLink<object>>(); //targetPathLinks.Add(new BindingPathLink<object>("TheCollection")); //theBinding.TargetPathLinks = targetPathLinks; //theBinding.Bind(); //source.TheCollection = new ObservableCollection<int>(new int[] { 1, 2, 3 }); //target.TheCollection.ForEach((str) => Console.WriteLine(str)); // print the target collection //source.TheCollection.RemoveAt(1); //Console.WriteLine(); //target.TheCollection.ForEach((str) => Console.WriteLine(str)); // print the target collection //target.TheCollection.Add("4"); //Console.WriteLine(); //source.TheCollection.ForEach((str) => Console.WriteLine(str)); // print the source collection #endregion collection value binding #region value binding type testing //TestData<Person> sourcePeople = new TestData<Person>(); //TestData<Person> targetPeople = new TestData<Person>(); //OneWayCollectionValueBindingWithPath peopleBinding = new OneWayCollectionValueBindingWithPath //{ // SourceObj = sourcePeople, // TargetObj = targetPeople, // IsOneWayCollectionBinding = false, // CreationType = typeof(ObservableCollection<Person>) //}; //List<BindingPathLink<object>> peopleSourcePathLinks = new List<BindingPathLink<object>>(); //peopleSourcePathLinks.Add(new BindingPathLink<object>("TheCollection")); //peopleBinding.SourcePathLinks = peopleSourcePathLinks; //List<BindingPathLink<object>> peopleTargetPathLinks = new List<BindingPathLink<object>>(); //peopleTargetPathLinks.Add(new BindingPathLink<object>("TheCollection")); //peopleBinding.TargetPathLinks = peopleTargetPathLinks; //peopleBinding.Bind(); //UniversityClass universityClass = new UniversityClass(); //sourcePeople.TheCollection = universityClass.People; #endregion value binding type testing #region Map Collection Tests UniversityClass theUniversityClass = new UniversityClass(); DHierarchyItemsControl dHierarchyItemsControl = new DHierarchyItemsControl(); OneWayCollectionValueBindingWithPath itemsSourceBinding = new OneWayCollectionValueBindingWithPath { SourceObj = dHierarchyItemsControl, TargetObj = dHierarchyItemsControl, IsOneWayCollectionBinding = true }; List<BindingPathLink<object>> dataContextSourcePathLinks = new List<BindingPathLink<object>>(); dataContextSourcePathLinks.Add(new BindingPathLink<object>("DataContext")); dataContextSourcePathLinks.Add(new BindingPathLink<object>("People")); itemsSourceBinding.SourcePathLinks = dataContextSourcePathLinks; List<BindingPathLink<object>> itemsSourceTargetPathLinks = new List<BindingPathLink<object>>(); itemsSourceTargetPathLinks.Add(new BindingPathLink<object>("ItemsSource")); itemsSourceBinding.TargetPathLinks = itemsSourceTargetPathLinks; itemsSourceBinding.Bind(); dHierarchyItemsControl.DataContext = theUniversityClass; #endregion Map Collection Tests int i = 0; }