Модульный тест IObservable с ObserveOnDispatcher

Мне нужно проверить часть кода

        var watcher = new FakeIFileSystemWatcher();
        watcher.FilesToBeImported
           .ObserveOnDispatcher()
           .Subscribe(list.Add);

поэтому я создал этот небольшой модульный тест, но я не могу заставить его пройти список причин. Счетчик всегда равен 0

    [Test]
    public void Foo()
    {
        var list = new List<string>();

        var watcher = new FakeIFileSystemWatcher();
        watcher.FilesToBeImported
           .ObserveOnDispatcher()
           .Subscribe(list.Add);

        Task task = Task.Factory.StartNew(() =>
        {                
            watcher.AddFile("cc");
            watcher.AddFile("cc");
            watcher.AddFile("cc");
        }, TaskCreationOptions.LongRunning);
        Task.WaitAll(task);

        Assert.AreEqual(3, list.Count);
    }

если я закомментирую метод

           .ObserveOnDispatcher()

это проходит, но как я могу заставить его работать также с ObserveOnDispatcher ()?

5
задан jitidea 4 July 2012 в 15:31
поделиться