예제 #1
0
        public void WhenITryToSaveAFeature_ThenFeatureHasBeenSavedEventIsRaisedWithCorrectDetails()
        {
            var saveFeature = new CreateFeatureFake();
            var updateFeature = new UpdateFeature();
            var saveApplication = new CreateApplicationFake();
            var getApplicationByName = new GetApplicationByName();
            var getFeatureByNameAndApplication = new GetFeatureByNameAndApplication();

            var application = new ApplicationBuilder()
                .WithName("Test12345")
                .Build();

            saveApplication.Execute(application);
            application = getApplicationByName.Execute(application.Name);

            var feature = new FeatureBuilder()
                .WithName("MyTestFeature")
                .WithApplication(application).Build();

            saveFeature.Execute(feature);
            feature = getFeatureByNameAndApplication.Execute(feature.Name, application.Name);
            feature.Name = "Ponies";
            updateFeature.Execute(feature);

            feature = getFeatureByNameAndApplication.Execute(feature.Name, application.Name);

            Assert.That(feature.Name, Is.EqualTo("Ponies"));
        }
예제 #2
0
        public void SetUp()
        {
            var application = new ApplicationBuilder().WithName("Test Application").Build();

            Configuration.FeatureResolver = new HttpFeatureResolver("http://localhost:12345");
            Runner.SqlCompact("Lemonade").Down();
            Runner.SqlCompact("Lemonade").Up();
            _getFeature = new GetFeatureByNameAndApplication();
            _createFeature = new CreateFeatureFake();
            _createApplication = new CreateApplicationFake();
            _getApplicationByName = new GetApplicationByName();
            _createApplication.Execute(application);
            application = _getApplicationByName.Execute(application.Name);

            var feature1 = new FeatureBuilder().WithName("MySuperDuperFeature")
                .WithApplication(application)
                .WithIsEnabled(true)
                .Build();

            var feature2 = new FeatureBuilder().WithName("Ponies")
                .WithApplication(application)
                .WithIsEnabled(true)
                .Build();

            _createFeature.Execute(feature1);
            _createFeature.Execute(feature2);

            new CreateFeatureOverrideFake().Execute(new Data.Entities.FeatureOverride { FeatureId = feature2.FeatureId, Hostname = Dns.GetHostName(), IsEnabled = true });
            _nancyHost = new NancyHost(new Uri("http://localhost:12345"), new LemonadeBootstrapper());
            _nancyHost.Start();
        }
예제 #3
0
 public void SetUp()
 {
     _createFeature = new CreateFeatureFake();
     _createApplication = new CreateApplicationFake();
     _deleteFeature = new DeleteFeature();
     _getApplicationByName = new GetApplicationByName();
     _getFeatureByNameAndApplication = new GetFeatureByNameAndApplication();
     Runner.SqlCompact("Lemonade").Down();
     Runner.SqlCompact("Lemonade").Up();
 }
예제 #4
0
        public void SetUp()
        {
            _createApplication = new CreateApplicationFake();
            _getApplication = new GetApplicationByName();
            _getFeature = new GetFeatureByNameAndApplication();
            _server = new Server(64978);
            _testBootstrapper = new TestBootstrapper();
            _browser = new Browser(_testBootstrapper, context => context.UserHostAddress("localhost"));

            Runner.SqlCompact(ConnectionString).Down();
            Runner.SqlCompact(ConnectionString).Up();
        }
예제 #5
0
 public SqlFeatureResolver(GetFeatureByNameAndApplication getFeatureByNameAndApplication)
 {
     _getFeatureByNameAndApplication = getFeatureByNameAndApplication;
 }