public void SetProviderOrderWithValue1()
        {
            var selector = new SimplePathSelectorBuilder()
                           .FirstChoice(typeof(DummyClass1))
                           .Otherwise(new DummyClass2())
                           .Create();

            Assert.AreEqual("DummyClass2", selector.SelectPath());
        }
        public void OtherwiseOptionShortNotation()
        {
            var selector = new SimplePathSelectorBuilder()
                           .FirstChoice(typeof(DummyClass1))
                           .Otherwise(@"C:\some\default\path\")
                           .Create();

            Assert.AreEqual(@"C:\some\default\path\", selector.SelectPath());
        }
        public void NoProviders()
        {
            var selector = new SimplePathSelectorBuilder()
                           .FirstChoice(typeof(DummyClass1))
                           .Otherwise(typeof(DummyClass2))
                           .Create();

            selector.SelectPath();
        }
        public void SimpleBuild()
        {
            var selector = new SimplePathSelectorBuilder()
                           .FirstChoice(typeof(DummyClass1))
                           .Otherwise(typeof(DummyClass2))
                           .Create();

            selector.AddProvider(new DummyClass1());

            Assert.AreEqual("DummyClass1", selector.SelectPath());
        }