コード例 #1
0
ファイル: DisplaySeperator.cs プロジェクト: BHF-GG/BHFGG_ATM
 public DisplaySeparator(IFilter filteredData, IConditionChecker conditionData)
     : base(filteredData)
 {
     ListOfConditionsToDisplay             = new List <Condition>();
     conditionData.ConditionsCheckedEvent += HandleConditionCheckedEvent;
     //ListOfConditionsToDisplay = new List<Condition>();
 }
コード例 #2
0
ファイル: AtmUnitTest.cs プロジェクト: BHF-GG/BHFGG_ATM
        public void Integration_Display_ConditionChecker()
        {
            filter           = Substitute.For <IFilter>();
            conditionChecker = new ConditionChecker(5000, 300, filter);
            display          = new DisplaySeparator(filter, conditionChecker);

            filter.DataFilteredEvent += Raise.EventWith(new DataFilteredEventArgs()
            {
                DataFiltered = tracks
            });

            //Assert.That(display.ListOfConditionsToDisplay, Is.EqualTo());
            Assert.That(display.ListOfTracksToDisplay, Is.EqualTo(tracks));
        }
コード例 #3
0
        private static void Initialize()
        {
            IEnumerable <Type> checkerTypes = Assembly.GetAssembly(typeof(IConditionChecker)).GetTypes().Where(ImplementsInterface);

            conditionCheckersByType = new Dictionary <ConditionType, IConditionChecker>();

            foreach (Type checkerType in checkerTypes)
            {
                IConditionChecker conditionChecker = Activator.CreateInstance(checkerType) as IConditionChecker;
                conditionCheckersByType.Add(conditionChecker.Type, conditionChecker);
            }

            isInitialized = true;
        }
コード例 #4
0
ファイル: AtmUnitTest.cs プロジェクト: BHF-GG/BHFGG_ATM
        public void SetUp()
        {
            _track1    = new Track();
            _track2    = new Track();
            _track3    = new Track();
            _tracklist = new List <Track>();

            _sepList = new List <Condition>();

            //Making fakes (Stubs and mocks)
            _fakeConditionChecker = Substitute.For <IConditionChecker>();
            _fakeFilter           = Substitute.For <IFilter>();
            _fakeLogCondition     = Substitute.For <ILogCondition>();

            _uut = new DisplaySeparator(_fakeFilter, _fakeConditionChecker);
        }
コード例 #5
0
        private static ConditionCheckResultModel CheckConditions(
            string stubId,
            IConditionChecker checker,
            StubConditionsModel conditions,
            bool negative)
        {
            var validationResult = checker.Validate(stubId, conditions);

            validationResult.CheckerName = checker.GetType().Name;
            var conditionValidation = validationResult.ConditionValidation;

            if (negative && conditionValidation != ConditionValidationType.NotExecuted)
            {
                validationResult.ConditionValidation = conditionValidation == ConditionValidationType.Invalid
                    ? ConditionValidationType.Valid
                    : ConditionValidationType.Invalid;
            }

            return(validationResult);
        }
コード例 #6
0
ファイル: AtmUnitTest.cs プロジェクト: BHF-GG/BHFGG_ATM
        public void Integration_Display_ConditionChecker_AirSpaceFilter_StringFormatter()
        {
            transponderR            = Substitute.For <ITransponderReceiver>();
            compassCourseCalculator = Substitute.For <ICompassCourseCalculator>();
            velocityCalculator      = Substitute.For <IVelocityCalculator>();

            stringFormatter  = new StringFormatter(transponderR, compassCourseCalculator, velocityCalculator);
            filter           = new AirspaceFilter(stringFormatter);
            conditionChecker = new ConditionChecker(5000, 300, filter);
            display          = new DisplaySeparator(filter, conditionChecker);

            List <string> transponderData = new List <string>();

            transponderData.Add("T1;39045;29000;14000;20191029154852789");
            transponderData.Add("T2;39030;29030;14020;20191029154852789");
            transponderData.Add("T3;20045;29000;14000;20191029154852789");
            transponderData.Add("T4;39045;29000;12000;20191029154852789");

            transponderR.TransponderDataReady += Raise.EventWith(this, new RawTransponderDataEventArgs(transponderData));

            Assert.That(display.ListOfTracksToDisplay.ElementAt(0).Tag, Is.EqualTo("T1"));
            Assert.That(display.ListOfTracksToDisplay.ElementAt(3).PositionX, Is.EqualTo(39045));
        }
コード例 #7
0
 public ClientConditionChecker(IConditionChecker <T> checker)
 {
     _checker = checker;
 }
コード例 #8
0
 public void RegisterCondition <T>(IConditionChecker <T> checker) where T : ICondition
 {
     ConditionLogic.RegisterCondition(checker);
 }
コード例 #9
0
        public void CanBeInstantiated()
        {
            IConditionChecker checker = CreateInstance();

            Assert.NotNull(checker);
        }
コード例 #10
0
 public void RegisterCondition <T>(IConditionChecker <T> checker) where T : ICondition
 {
     _controller.RegisterCondition(new ClientConditionChecker <T>(checker));
 }
コード例 #11
0
 protected ConditionCheckerTestBase(IConditionChecker checker)
 {
     this.Checker = checker;
 }