public void CombinedStrategy_AllEqual_NotASnap() { //Arrange var strategy = new CombinedStrategy(); var card = new Card(SuitEnum.Heart, FaceValueEnum.Ace); //Act var result = strategy.Snap(card, card); //Assert Assert.True(result); }
public void CombinedStrategy_SuitAndFaceValueDifferent_NotASnap() { //Arrange var strategy = new CombinedStrategy(); var card1 = new Card(SuitEnum.Heart, FaceValueEnum.Ace); var card2 = new Card(SuitEnum.Spade, FaceValueEnum._5); //Act var result = strategy.Snap(card1, card2); //Assert Assert.False(result); }
public static CombinedStrategySettings GenerateExampleSettings() { CombinedStrategy.ForceLoad(); var settings = new CombinedStrategySettings(); var allComponents = AppDomain.CurrentDomain.GetAssemblies() .SelectMany(a => a.GetTypes() .Where(type => type.IsClass && !type.IsAbstract && typeof(ITradingStrategyComponent).IsAssignableFrom(type) && !typeof(ITradingStrategy).IsAssignableFrom(type) && !type.IsInterface && !Attribute.IsDefined(type, typeof(DeprecatedStrategyAttribute)))); settings.ComponentSettings = allComponents .OrderBy(t => t, new TradingStrategyComponentComparer()) .Select(c => TradingStrategyComponentSettings.GenerateExampleSettings( (ITradingStrategyComponent)Activator.CreateInstance(c))) .ToArray(); return(settings); }
public CombinedStrategy NewStrategy() { var strategy = new CombinedStrategy(CreateComponents(), _allowRemovingInstructionRandomly); return(strategy); }