public void ProgramFeatures_ToIncompatibilityFlagsWithEnhancedFeatures_ReturnsExpected() { var features = new ProgramFeaturesBuilder() .WithNtscCompatibility(FeatureCompatibility.Enhances) .WithPalCompatibility(FeatureCompatibility.Enhances) .WithKeyboardComponentFeatures(KeyboardComponentFeatures.Enhances) .WithSuperVideoArcadeCompatibility(FeatureCompatibility.Enhances) .WithIntellivoiceCompatibility(FeatureCompatibility.Enhances) .WithIntellivisionIICompatibility(FeatureCompatibility.Enhances) .WithEcsFeatures(EcsFeatures.Enhances) .WithTutorvisionCompatibility(FeatureCompatibility.Enhances) .WithIntellicartFeatures(IntellicartCC3Features.Enhances) .WithCuttleCart3Features(CuttleCart3Features.Enhances) .WithJlpFeatures(JlpFeatures.Enhances) .WithLtoFlashFeatures(LtoFlashFeatures.Enhances) .WithBee3Features(Bee3Features.Enhances) .WithHiveFeatures(HiveFeatures.Enhances) .Build() as ProgramFeatures; var incompatibilityFlags = features.ToIncompatibilityFlags(); Assert.Equal(IncompatibilityFlags.SuperVideoArcadeAltered | IncompatibilityFlags.IntellivisionIIAltered, incompatibilityFlags); }
public void ProgramFeatures_ToIncompatibilityFlagsWhenNoIncompatibilitiesDefined_ReturnsNone() { var features = new ProgramFeaturesBuilder() .WithNtscCompatibility(FeatureCompatibility.Tolerates) .WithPalCompatibility(FeatureCompatibility.Tolerates) .WithKeyboardComponentFeatures(KeyboardComponentFeatures.Tolerates) .WithSuperVideoArcadeCompatibility(FeatureCompatibility.Tolerates) .WithIntellivoiceCompatibility(FeatureCompatibility.Tolerates) .WithIntellivisionIICompatibility(FeatureCompatibility.Tolerates) .WithEcsFeatures(EcsFeatures.Tolerates) .WithTutorvisionCompatibility(FeatureCompatibility.Tolerates) .WithIntellicartFeatures(IntellicartCC3Features.Tolerates) .WithCuttleCart3Features(CuttleCart3Features.Tolerates) .WithJlpFeatures(JlpFeatures.Tolerates) .WithLtoFlashFeatures(LtoFlashFeatures.Tolerates) .WithBee3Features(Bee3Features.Tolerates) .WithHiveFeatures(HiveFeatures.Tolerates) .Build() as ProgramFeatures; var incompatibilityFlags = features.ToIncompatibilityFlags(); Assert.Equal(IncompatibilityFlags.None, incompatibilityFlags); }