11 [Test]
12 public void ShouldRetrieveSpeakerByEmail()
13 {
14 Conference anConference = new Conference("tea party", "");
15 using (ISession session = getSession())
16 {
17 session.SaveOrUpdate(anConference);
18 session.Flush();
19 }
20 string email = "brownie@brownie.com.au";
21 Speaker speaker =
22 new Speaker("Andrew", "Browne", "http://blog.brownie.com.au", "the comment", anConference,
23 email, "http://blog.brownie.com.au/avatar.jpg", "Info about how important I am to go here.","password", "salt");
24
25 ISpeakerRepository repository = new SpeakerRepository(_sessionBuilder);
26 repository.Save(speaker);
27
28 Speaker rehydratedSpeaker = null;
29 //get Attendee back from database to ensure it was saved correctly
30 using (ISession session = getSession())
31 {
32 rehydratedSpeaker = repository.GetSpeakerByEmail(email);
33
34 Assert.That(rehydratedSpeaker != null);
35 Assert.That(rehydratedSpeaker.Contact.FirstName, Is.EqualTo("Andrew"));
36 Assert.That(rehydratedSpeaker.Website, Is.EqualTo("http://blog.brownie.com.au"));
37 Assert.That(rehydratedSpeaker.Comment, Is.EqualTo("the comment"));
38 Assert.That(rehydratedSpeaker.Conference, Is.EqualTo(anConference));
39 }
40 }