示例#1
0
        public void Train()
        {
            new TestScheduler().With(
                async scheduler =>
            {
                viewModel      = new TrainingViewModel(dataHandler.Object, dataViewModel.Object, trainingManager.Object, manager);
                var collection = new ObservableCollection <TrainedTreeData>();
                var tree       = TrainedTreeData.ConstructFromDocuments(new DocumentSet {
                    Document = new[] { new DocumentDefinition {
                                           Labels = new[] { "test" }
                                       } }
                });
                collection.Add(tree);
                dataViewModel.Setup(item => item.Result).Returns(documentSet);
                dataViewModel.Setup(item => item.SelectedItems).Returns(collection);

                trainingManager.Setup(item => item.Train(It.IsAny <DocumentSet>(), It.IsAny <TrainingHeader>(), It.IsAny <CancellationToken>()))
                .Returns(Task.FromResult(training));
                TrainingResults result = null;
                viewModel.Perform.Subscribe(
                    results =>
                {
                    result = results;
                });

                scheduler.AdvanceByMs(500);
                await viewModel.Perform.Execute();
                scheduler.AdvanceByMs(500);
                Assert.AreEqual(training, result);
            });
        }
示例#2
0
        public void Construct()
        {
            Assert.Throws <ArgumentNullException>(() => TrainedTreeData.Construct(null));
            var result = TrainedTreeData.Construct(ArffDataSet.CreateSimple("Test"));

            Assert.AreEqual(0, result.Children.Length);
            Assert.AreEqual(0, result.Count);
            Assert.AreEqual("Documents", result.Name);
            Assert.AreEqual("Documents (0)", result.Description);
        }
示例#3
0
        public void ConstructFull()
        {
            var dataSet = ArffDataSet.CreateSimple("Test");

            dataSet.Header.RegisterNominalClass("One", "Two");
            var review = dataSet.AddDocument();

            review.Class.Value = "One";
            review             = dataSet.AddDocument();
            review.Class.Value = "One";
            review             = dataSet.AddDocument();
            review.Class.Value = "Two";
            var result = TrainedTreeData.Construct(dataSet);

            Assert.AreEqual(2, result.Children.Length);
            Assert.AreEqual(3, result.Count);
            Assert.AreEqual("Documents", result.Name);
        }