예제 #1
0
        //[Fact]
        //Cannot recreate the file as something is hanging on to it.
        public void CreateFileLater()
        {
            var pulse = new Subject <Unit>();

            using (var file = new TestFile())
            {
                file.Delete();

                FileSearchResult fileSearchResult = null;

                using (file.Info.WatchFile(pulse)
                       .Search(str => str.Contains("9"))
                       .Subscribe(x => fileSearchResult = x))
                {
                    fileSearchResult.Should().Be(FileSearchResult.None);
                    file.Create();
                    pulse.Once();
                    fileSearchResult.Should().NotBe(FileSearchResult.None);
                }
            }
        }
예제 #2
0
        public void NotExistingFile()
        {
            var pulse = new Subject <Unit>();

            using (var file = new TestFile())
            {
                file.Delete();

                FileSearchResult fileSearchResult = null;

                using (file.Info.WatchFile(pulse)
                       .Search(str => str.Contains("9"))
                       .Subscribe(x => fileSearchResult = x))
                {
                    fileSearchResult.Should().BeNull();
                }
            }
        }
예제 #3
0
        public void NotExistingTailedFiles()
        {
            var pulse = new Subject <Unit>();

            using (var files = new TestFileCollection())
            {
                for (int i = 0; i < 10; i++)
                {
                    files.Add(new TestFile());
                }
                files.Dispose();

                FileSearchResult fileSearchResult = null;
                var search = files.Select(t => t.Info.WatchFile(pulse))
                             .Merge()
                             .Search(str => str.Contains("9"));

                using (search.Subscribe(x => fileSearchResult = x))
                {
                    pulse.Once();
                    fileSearchResult.Should().BeNull();
                }
            }
        }