00001 using System;
00002 using NUnit.Framework;
00003 using Foodolini.BusinessLogic;
00004 using Foodolini.Database;
00005
00006 namespace Foodolini.BusinessLogic.Test
00007 {
00011 [TestFixture]
00012 public class PersonTest : LogicTest
00013 {
00017 [Test]
00018 public void CreatePersonTest (){
00019 Person per = new Person ("Per", "Postmand Per", new DateTime (1947, 5, 2), Gender.Male, 180, 70, 1.5);
00020 per.Save ();
00021 Person heidi = new Person ("Heidi", "Frejdi Heidi", new DateTime (1968, 2, 21), Gender.Female, 173, 58, 4.7);
00022 heidi.Save();
00023 Person janus = new Person ("Janus", "Jetjager Janus", new DateTime (1978, 11, 21), Gender.Male, 190, 89, 2.1);
00024 janus.Save();
00025 }
00030 [Test]
00031 public void LoadCreatedPersonTest (){
00032 this.CreatePersonTest ();
00033 foreach (var p in Person.ListUsers ()) {
00034 if (p.UserName == "Per")
00035 Assert.AreEqual (p.BirthDate, new DateTime (1947, 5, 2));
00036 }
00037 }
00041 [Test]
00042 public void LoadPersonTest (){
00043 foreach (var p in Person.ListUsers ()) {
00044 if (p.UserName == "jopsen") {
00045 Assert.AreEqual (p.FullName, "Jonas Finnemann Jensen");
00046 Assert.AreEqual (p.BirthDate, new DateTime (1988, 1, 9));
00047 }
00048 }
00049 }
00054 [Test]
00055 public void DeletePersonTest(){
00056 this.CreatePersonTest();
00057 Person pip = null;
00058 foreach (Person p in Person.ListUsers()){
00059 if (p.FullName == "Frejdi Heidi"){
00060 pip = p;
00061 }
00062 }
00063 pip.Delete();
00064
00065 foreach (Person p in Person.ListUsers()){
00066 if (p.FullName == "Fredi Heidi"){
00067 Assert.Fail();
00068 }
00069 if (p.UserName == "Per"){
00070 Assert.AreEqual (p.UserName, "Per");
00071 }
00072 if (p.UserName == "Janus")
00073 Assert.AreEqual (p.UserName, "Janus");
00074 }
00075 }
00084 [Test]
00085 public void EditPersonTest(){
00086 this.CreatePersonTest();
00087 foreach (Person p in Person.ListUsers()){
00088 if(p.FullName == "Postmand Per"){
00089 p.BirthDate = new DateTime (1957, 11, 23);
00090 p.Gender = Gender.Female;
00091 p.Height = 230;
00092 p.Weight = 80;
00093 p.ActivityFactor = 9;
00094 }
00095 }
00096 foreach (Person p in Person.ListUsers()){
00097 if (p.UserName == "Per"){
00098 Assert.AreEqual(52, p.Age, "Expected 52 years (This is only expected age until 22 november 2010)");
00099 Assert.AreEqual(Gender.Female, p.Gender,"Expected female");
00100 Assert.AreEqual(230, p.Height, "Expected 230");
00101 Assert.AreEqual(80, p.Weight, "Expected 80 kilo");
00102 Assert.AreEqual(9, p.ActivityFactor, "Expected 9");
00103 Assert.AreEqual(1816, p.BMR, "Expected 1816");
00104 Assert.AreEqual(90, p.METS, "Expected 90 from flooring");
00105 }
00106 }
00107 }
00108 }
00109 }
00110