Пример #1
0
        public void GetInt_NotReallyAnInteger_GivesDefaultValue()
        {
            var memory = new TaskMemory();

            memory.Set("number", "blue");
            Assert.AreEqual(3, memory.Get("number", 3));
        }
Пример #2
0
        public void Set_NotFound_SetsToValue()
        {
            var memory = new TaskMemory();

            memory.Set("color", "red");
            Assert.AreEqual("red", memory.Get("color", "blue"));
        }
Пример #3
0
        public void Get_Found_GivesCorrectValue()
        {
            var memory = new TaskMemory();

            memory.Set("color", "blue");
            Assert.AreEqual("blue", memory.Get("color", "red"));
        }
Пример #4
0
        public GatherBySemanticDomainTask(
            GatherBySemanticDomainConfig config,
            LexEntryRepository lexEntryRepository,
            ViewTemplate viewTemplate,
            TaskMemoryRepository taskMemoryRepository,
            ILogger logger
            ) :
            base(
                config,
                lexEntryRepository,
                viewTemplate, taskMemoryRepository
                )
        {
            ViewTemplate = viewTemplate;
            Guard.AgainstNull(config, "config");
            Guard.AgainstNull(viewTemplate, "viewTemplate");
            _config = config;
            _logger = logger;

            _taskMemory = taskMemoryRepository.FindOrCreateSettingsByTaskId(config.TaskName);


            _currentDomainIndex   = -1;
            _currentQuestionIndex = 0;
            _words = null;

            _semanticDomainField = viewTemplate.GetField(LexSense.WellKnownProperties.SemanticDomainDdp4);
            var definitionWsId = viewTemplate.GetField(LexSense.WellKnownProperties.Definition).WritingSystemIds.First();
            IWritingSystemDefinition writingSystemForDefinition = viewTemplate.WritingSystems.Get(definitionWsId);

            Guard.AgainstNull(writingSystemForDefinition, "Definition input System");
            DefinitionWritingSystem = writingSystemForDefinition;
        }
Пример #5
0
        public DictionaryTask(DictionaryControl.Factory dictionaryControlFactory,
                              DictionaryBrowseAndEditConfiguration config,
                              LexEntryRepository lexEntryRepository,
                              TaskMemoryRepository taskMemoryRepository)
            : base(config, lexEntryRepository, taskMemoryRepository)
        {
            _dictionaryControlFactory = dictionaryControlFactory;
//            if (viewTemplate == null)
//            {
//                throw new ArgumentNullException("viewTemplate");
//            }
//            _viewTemplate = viewTemplate;
//            _logger = logger;
            _taskMemory = taskMemoryRepository.FindOrCreateSettingsByTaskId(config.TaskName);
        }
Пример #6
0
        public MissingInfoTask(MissingInfoConfiguration config,
                               LexEntryRepository lexEntryRepository,
                               ViewTemplate defaultViewTemplate,
                               TaskMemoryRepository taskMemoryRepository)
            : base(config, lexEntryRepository, taskMemoryRepository)
        {
            Guard.AgainstNull(config.MissingInfoFieldName, "MissingInfoFieldName");
            Guard.AgainstNull(defaultViewTemplate, "viewTemplate");
            Debug.Assert(config.WritingSystemsWeWantToFillInArray == null ||
                         config.WritingSystemsWeWantToFillInArray.Length == 0 ||
                         !string.IsNullOrEmpty(config.WritingSystemsWeWantToFillInArray[0]));

            _config     = config;
            _taskMemory = taskMemoryRepository.FindOrCreateSettingsByTaskId(config.TaskName);


            _missingInfoField = defaultViewTemplate[config.MissingInfoFieldName];

            _viewTemplate = config.CreateViewTemplate(defaultViewTemplate);
        }
Пример #7
0
        public void Get_NotFound_GivesDefault()
        {
            var memory = new TaskMemory();

            Assert.AreEqual("red", memory.Get("color", "red"));
        }