[Test] // test comparions with different types, including null // All should return false public void Equals_TestWithDifferentObjectType() { UnitGrade origGrade = new UnitGrade("UECS8888", "lucky subject", 10); Assert.AreNotEqual(origGrade, "UECS8888"); Assert.AreNotEqual(origGrade, 20); Assert.AreNotEqual(origGrade, null); }
[Test] // do boundary value analysis for all the grade ranges // using a grade range supplied by user public void CalculateGrade_UseUserDefinedValues_NoException() { int[] gradeRanges = { 49, 69, 89, 100 }; string[] gradeSymbols = { "F", "C", "B", "A" }; double[] gradePointValues = { 0, 1.0, 2.0, 3.0 }; GradingScheme myscheme = new GradingScheme(gradeRanges, gradeSymbols, gradePointValues); UnitGrade ugrade; ugrade = new UnitGrade("unit", "12345", 49); ugrade.gradingScheme = myscheme; ugrade.CalculateGrade(); Assert.AreEqual("F", ugrade.gradeSymbol); Assert.AreEqual(0.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 50); ugrade.gradingScheme = myscheme; ugrade.CalculateGrade(); Assert.AreEqual("C", ugrade.gradeSymbol); Assert.AreEqual(1.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 69); ugrade.gradingScheme = myscheme; ugrade.CalculateGrade(); Assert.AreEqual("C", ugrade.gradeSymbol); Assert.AreEqual(1.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 70); ugrade.gradingScheme = myscheme; ugrade.CalculateGrade(); Assert.AreEqual("B", ugrade.gradeSymbol); Assert.AreEqual(2.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 89); ugrade.gradingScheme = myscheme; ugrade.CalculateGrade(); Assert.AreEqual("B", ugrade.gradeSymbol); Assert.AreEqual(2.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 90); ugrade.gradingScheme = myscheme; ugrade.CalculateGrade(); Assert.AreEqual("A", ugrade.gradeSymbol); Assert.AreEqual(3.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 100); ugrade.gradingScheme = myscheme; ugrade.CalculateGrade(); Assert.AreEqual("A", ugrade.gradeSymbol); Assert.AreEqual(3.0, ugrade.gradePoint); }
public void Equals_TestWithSameObjectType(string unitCode, string unitName, int mark, bool expectEqual) { UnitGrade origGrade = new UnitGrade("UECS8888", "lucky subject", 10); UnitGrade compGrade = new UnitGrade(unitCode, unitName, mark); if (expectEqual) { Assert.AreEqual(origGrade, compGrade); } else { Assert.AreNotEqual(origGrade, compGrade); } }
[Test] // do boundary value analysis for all the grade ranges public void CalculateGrade_UseDefaultValues_NoException() { UnitGrade ugrade; ugrade = new UnitGrade("unit", "12345", 49); ugrade.CalculateGrade(); Assert.AreEqual("F", ugrade.gradeSymbol); Assert.AreEqual(0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 50); ugrade.CalculateGrade(); Assert.AreEqual("C", ugrade.gradeSymbol); Assert.AreEqual(2.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 54); ugrade.CalculateGrade(); Assert.AreEqual("C", ugrade.gradeSymbol); Assert.AreEqual(2.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 55); ugrade.CalculateGrade(); Assert.AreEqual("C+", ugrade.gradeSymbol); Assert.AreEqual(2.33, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 59); ugrade.CalculateGrade(); Assert.AreEqual("C+", ugrade.gradeSymbol); Assert.AreEqual(2.33, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 60); ugrade.CalculateGrade(); Assert.AreEqual("B-", ugrade.gradeSymbol); Assert.AreEqual(2.67, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 64); ugrade.CalculateGrade(); Assert.AreEqual("B-", ugrade.gradeSymbol); Assert.AreEqual(2.67, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 65); ugrade.CalculateGrade(); Assert.AreEqual("B", ugrade.gradeSymbol); Assert.AreEqual(3.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 69); ugrade.CalculateGrade(); Assert.AreEqual("B", ugrade.gradeSymbol); Assert.AreEqual(3.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 70); ugrade.CalculateGrade(); Assert.AreEqual("B+", ugrade.gradeSymbol); Assert.AreEqual(3.33, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 74); ugrade.CalculateGrade(); Assert.AreEqual("B+", ugrade.gradeSymbol); Assert.AreEqual(3.33, ugrade.gradePoint); ugrade = new UnitGrade("unit3", "12345", 79); ugrade.CalculateGrade(); Assert.AreEqual("A-", ugrade.gradeSymbol); Assert.AreEqual(3.67, ugrade.gradePoint); ugrade = new UnitGrade("unit3", "12345", 80); ugrade.CalculateGrade(); Assert.AreEqual("A", ugrade.gradeSymbol); Assert.AreEqual(4.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 89); ugrade.CalculateGrade(); Assert.AreEqual("A", ugrade.gradeSymbol); Assert.AreEqual(4.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 90); ugrade.CalculateGrade(); Assert.AreEqual("A+", ugrade.gradeSymbol); Assert.AreEqual(4.0, ugrade.gradePoint); ugrade = new UnitGrade("unit", "12345", 100); ugrade.CalculateGrade(); Assert.AreEqual("A+", ugrade.gradeSymbol); Assert.AreEqual(4.0, ugrade.gradePoint); }
public void UnitGrade_UnitCodeInvalidValue_Exception() { UnitGrade ugrade = new UnitGrade(null, null, 35); }
public void UnitGrade_MarkInvalidValue_Exception() { UnitGrade ugrade = new UnitGrade("UECS1111", "somename", 101); }