public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                _serverId = Guid.NewGuid();
                var existingCruiseProjectAssociations = new[]
                {
                    new CruiseProjectAssociation {
                        ServerId = _serverId, Name = "Project Foo"
                    },
                };
                var projectToEdit = existingMasterModel.CreateProject(x =>
                {
                    x.Name = "Existing Project";
                    x.CruiseProjectAssociations = existingCruiseProjectAssociations;
                });

                _expectedId = projectToEdit.Id;

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var manager   = new ProjectManager(repository);
                var editModel = new EditProject
                {
                    ProjectId      = projectToEdit.Id,
                    Name           = "Existing Project",
                    CruiseProjects = null,
                };

                _result = manager.Update(editModel);

                _savedModel = repository.LastSaved;
            }
            public void ContextSetup()
            {
                _serverId1 = Guid.NewGuid();
                _serverId2 = Guid.NewGuid();
                var existingMasterModel = new MasterModel();

                existingMasterModel.CreateProject(x => x.Name = "Existing Project");
                var cruiseProjects = new[]
                {
                    new EditProjectCruiseProject {
                        Server = _serverId1, Project = "Project 1.1"
                    },
                    new EditProjectCruiseProject {
                        Server = _serverId1, Project = "Project 1.2"
                    },
                    new EditProjectCruiseProject {
                        Server = _serverId2, Project = "Project 2.1"
                    },
                    new EditProjectCruiseProject {
                        Server = _serverId2, Project = "Project 2.2"
                    }
                };

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var creator = new ProjectManager(repository);

                _result = creator.Create(new EditProject {
                    Name = "My New Project", CruiseProjects = cruiseProjects
                });

                _savedModel = repository.LastSaved;
            }
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var creator = new ProjectManager(repository);

                _result = creator.Create(new EditProject {
                    Name = string.Empty
                });

                _savedModel = repository.LastSaved;
            }
Example #4
0
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                var project       = existingMasterModel.CreateProject(x => x.Name = "Existing Project");
                var existingGroup = project.CreateGroup(x => x.Name = "Existing Group");

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var creator = new LightGroupManager(repository);

                _result = creator.Update(existingGroup.Id, "Existing Group");

                _savedModel = repository.LastSaved;
            }
Example #5
0
            public void ContextSetup()
            {
                _destinationGroupId = Guid.NewGuid();
                _zWaveIdentity      = new ZWaveValueIdentity(1, 14, 123);

                var existingMasterModel = new MasterModel();
                var project             = existingMasterModel.CreateProject(x => x.Name = "Existing Project");

                project.CreateGroup(x => x.Id = _destinationGroupId)
                .AddLight(new Light(new ZWaveValueIdentity(1, 11, 123)))
                .AddLight(new Light(new ZWaveValueIdentity(1, 12, 123)));
                project.CreateGroup()
                .AddLight(new Light(new ZWaveValueIdentity(1, 13, 123)))
                .AddLight(new Light(_zWaveIdentity));

                project.CreateGroup()
                .AddLight(new Light(new ZWaveValueIdentity(1, 15, 123)))
                .AddLight(new Light(new ZWaveValueIdentity(1, 16, 123)));

                project.CreateGroup()
                .AddLight(new Light(new ZWaveValueIdentity(2, 13, 123)))
                .AddLight(new Light(new ZWaveValueIdentity(2, 14, 123)));

                var project2 = existingMasterModel.CreateProject(x => x.Name = "Existing Project 2");

                project2.CreateGroup()
                .AddLight(new Light(new ZWaveValueIdentity(1, 21, 123)))
                .AddLight(new Light(new ZWaveValueIdentity(1, 22, 123)));

                var project3 = existingMasterModel.CreateProject(x => x.Name = "Existing Project 3");

                project3.CreateGroup()
                .AddLight(new Light(new ZWaveValueIdentity(1, 31, 123)))
                .AddLight(new Light(new ZWaveValueIdentity(1, 32, 123)));


                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var updater = new LightModelUpdater(repository);

                updater.Update(_zWaveIdentity, _destinationGroupId, LightColor.Red.Value);

                _saved = repository.LastSaved;
            }
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                existingMasterModel.CreateProject(x => x.Name = "Existing Project");
                existingMasterModel.CreateProject(x => x.Name = "Existing Project 2");
                existingMasterModel.CreateProject(x => x.Name = "Existing Project 3");

                _repository = new StubMasterModelRepository();
                _repository.UseCurrentModel(existingMasterModel);

                var manager = new ProjectManager(_repository);

                _result = manager.Delete(_deleteId);

                _savedModel = _repository.LastSaved;
            }
Example #7
0
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();
                var parentProject       = existingMasterModel.CreateProject(x => x.Name = "Existing Project");
                var existingGroup       = parentProject.CreateGroup(x => x.Name = "Existing Group");

                _idDoesNotExist = Guid.NewGuid();

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var creator = new LightGroupManager(repository);

                _result = creator.Delete(_idDoesNotExist);

                _savedModel = repository.LastSaved;
            }
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                existingMasterModel.CreateProject(x => x.Name = "Existing Project");
                existingMasterModel.CreateProject(x => x.Name = "Existing Project 2");
                existingMasterModel.CreateProject(x => x.Name = "Existing Project 3");

                _repository = new StubMasterModelRepository();
                _repository.UseCurrentModel(existingMasterModel);

                var manager = new ProjectManager(_repository);

                _result = manager.Update(new EditProject {
                    ProjectId = _deleteId, Name = "Value doesn't matter"
                });

                _savedModel = _repository.LastSaved;
            }
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                existingMasterModel.CreateProject(x => x.Name = "Existing Project");
                var projectToEdit = existingMasterModel.CreateProject(x => x.Name = "Keep This");

                existingMasterModel.CreateProject(x => x.Name = "Existing Project 3");

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var creator = new ProjectManager(repository);

                _result = creator.Update(new EditProject {
                    ProjectId = projectToEdit.Id, Name = "Keep This"
                });
            }
Example #10
0
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                existingMasterModel.CreateCruiseServer(x =>
                {
                    x.Name = "Existing";
                    x.Url  = "foo";
                });

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var creator = new CruiseServerManager(repository);

                _result = creator.Create("Existing", "http://example.com:8088/cc.xml");

                _savedModel = repository.LastSaved;
            }
Example #11
0
            public void ContextSetup()
            {
                var existingMasterModel = new MasterModel();

                _parentProject = existingMasterModel.CreateProject(x => x.Name = "Existing Project");
                var existingGroup = _parentProject.CreateGroup(x => x.Name = "Existing Group");

                existingGroup.AddLight(new Light(new ZWaveValueIdentity(1, 1, 123)));
                existingGroup.AddLight(new Light(new ZWaveValueIdentity(1, 2, 123)));
                _remainingGroup = _parentProject.CreateGroup();
                _remainingGroup.AddLight(new Light(new ZWaveValueIdentity(1, 10, 123)));

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(existingMasterModel);

                var creator = new LightGroupManager(repository);

                _result = creator.Delete(existingGroup.Id);

                _savedModel = repository.LastSaved;
            }
Example #12
0
            public void ContextSetup()
            {
                var masterModel = new MasterModel();
                var project     = masterModel.CreateProject(x => x.Name = "Existing Project");

                var zWaveIdentity = new ZWaveValueIdentity(1, 11, 5555);

                project.CreateGroup().AddLight(new Light(zWaveIdentity)
                {
                    Color = LightColor.Yellow
                });

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(masterModel);

                var updater = new LightModelUpdater(repository);

                updater.Update(zWaveIdentity, Guid.Empty, LightColor.Red.Value);

                _lastSaved = repository.LastSaved;
            }
Example #13
0
            public void ContextSetup()
            {
                var masterModel = new MasterModel();
                var project1    = masterModel.CreateProject(x => { x.Name = "Project 1"; });

                _projectId1 = project1.Id;

                var lightGroup1 = project1.CreateGroup();

                lightGroup1.AddLight(new Light(new ZWaveValueIdentity(1, 1, 1))
                {
                    Color = LightColor.Green
                });
                lightGroup1.AddLight(new Light(new ZWaveValueIdentity(1, 2, 1))
                {
                    Color = LightColor.Yellow
                });
                lightGroup1.AddLight(new Light(new ZWaveValueIdentity(1, 3, 1))
                {
                    Color = LightColor.Red
                });

                var project2 = masterModel.CreateProject(x => { x.Name = "Project 1"; });

                _projectId2 = project2.Id;

                var lightGroup2 = project2.CreateGroup();

                lightGroup2.AddLight(new Light(new ZWaveValueIdentity(1, 4, 1))
                {
                    Color = LightColor.Green
                });
                lightGroup2.AddLight(new Light(new ZWaveValueIdentity(1, 5, 1))
                {
                    Color = LightColor.Yellow
                });
                lightGroup2.AddLight(new Light(new ZWaveValueIdentity(1, 6, 1))
                {
                    Color = LightColor.Red
                });

                var lightGroup3 = project2.CreateGroup();

                lightGroup3.AddLight(new Light(new ZWaveValueIdentity(1, 7, 1))
                {
                    Color = LightColor.Green
                });
                lightGroup3.AddLight(new Light(new ZWaveValueIdentity(1, 8, 1))
                {
                    Color = LightColor.Yellow
                });
                lightGroup3.AddLight(new Light(new ZWaveValueIdentity(1, 9, 1))
                {
                    Color = LightColor.Red
                });

                var projectStatusUpdater = new StubProjectStatusUpdater()
                                           .WithStubStatus(project1, StatusMode.Broken)
                                           .WithStubStatus(project2, StatusMode.SuccessAndBuilding)
                ;

                var repository = new StubMasterModelRepository();

                repository.UseCurrentModel(masterModel);

                var zWaveNetwork = new StubZWaveNetwork();

                var updater = new LightDisplayUpdater(repository, zWaveNetwork, projectStatusUpdater);

                updater.Update();

                _switches  = zWaveNetwork.GetAllSwitches();
                _lastSaved = repository.LastSaved;
            }