public void CreateExperimentDoesntOverwriteExperimentIfItAlreadyExists()
{
//arrange
_commands.Reset();
const string experimentName = "Existing Experiment";
const string convKeyOld = "CONVERT_ON_ME";
_commands.GetOrCreateExperiment(experimentName, convKeyOld, new[] { "Foo", "Bar" });
_commands.GetOrCreateParticipationRecord(experimentName, () => "Foo", "USER_1");
//act
_commands.GetOrCreateExperiment(experimentName, "CONV_KEY_NEW", new[] { "Foo", "Bar" });
//assert
var xml = XDocument.Parse(_commands.SavedXml);
var experiments = xml.Root.Elements("Experiment");
experiments.Count().ShouldEqual(1);
var exp = experiments.Single();
var convKeyAtt = exp.Attribute("ConversionKeyword");
convKeyAtt.ShouldNotBeNull();
convKeyAtt.Value.ShouldEqual(convKeyOld);
var records = exp.Element("Participants").Elements("Participant");
records.Count().ShouldEqual(1);
}