protected override void PerformAdmin(Domain.IncomingSmsMessage message) { string newIdea; if (TryCrackMessage(message.Message, out newIdea)) { IDataStore store = DataStore.GetInstance(); DailyIdea idea = store.DailyIdeas.Where(i => i.Idea == newIdea).FirstOrDefault(); if (idea == null) { idea = new DailyIdea { Idea = newIdea, }; store.Save(idea); Say(message.From, SmsResponseStrings.Add_Success_AddedNewIdea(idea.Id)); } else { Say(message.From, SmsResponseStrings.Add_Failed_ExistingIdea(idea.Id)); } } else { Say(message.From, SmsResponseStrings.Add_Help()); } }
public void Perform_RealAdmin() { Add_Accessor target = new Add_Accessor(); // TODO: Initialize to an appropriate value IncomingSmsMessage message = new IncomingSmsMessage { From = Configuration.GetInstance().AdminNumber, Message = "add This is the added message", }; target.Perform(message); IDataStore store = DataStore.GetInstance(); DailyIdea addedIdea = store.DailyIdeas.Where(i => i.Idea == "This is the added message").First(); OutgoingSmsMessage response = store.OutgoingMessages.Where(o => o.Message == SmsResponseStrings.Add_Success_AddedNewIdea(addedIdea.Id)).First(); Assert.AreEqual(Configuration.GetInstance().AdminNumber, response.Destination); }