public static void CreateTaggerReturnsSingleTaggerWhenCalledMultipleTimesForSameBuffer()
 {
     ITemplateEditorOptions options = OptionsWithTemplateOutliningEnabled(true);
     var provider = new TemplateOutliningTaggerProvider(options);
     var buffer = new FakeTextBuffer(string.Empty);
     var tagger1 = provider.CreateTagger<OutliningRegionTag>(buffer);
     var tagger2 = provider.CreateTagger<OutliningRegionTag>(buffer);
     Assert.Same(tagger1, tagger2);
 }
 public static void CreateTaggerThrowsArgumentNullExceptionWhenBufferIsNullToFailFast()
 {
     var provider = new TemplateOutliningTaggerProvider(Substitute.For<ITemplateEditorOptions>());
     var e = Assert.Throws<ArgumentNullException>(() => provider.CreateTagger<OutliningRegionTag>(null));
     Assert.Equal("buffer", e.ParamName);
 }
 public static void CreateTaggerReturnsTemplateOutliningTagger()
 {
     ITemplateEditorOptions options = OptionsWithTemplateOutliningEnabled(true);
     var provider = new TemplateOutliningTaggerProvider(options);
     var tagger = provider.CreateTagger<OutliningRegionTag>(new FakeTextBuffer(string.Empty));
     Assert.Equal(typeof(TemplateOutliningTagger), tagger.GetType());
 }
 public static void CreateTaggerDoesNotReturnTaggerWhenTemplateOutliningIsDisabled()
 {
     ITemplateEditorOptions options = OptionsWithTemplateOutliningEnabled(false);
     var provider = new TemplateOutliningTaggerProvider(options);
     Assert.Null(provider.CreateTagger<OutliningRegionTag>(new FakeTextBuffer(string.Empty)));
 }