public void ConfigurationViewModel_CheckIfActionIsAllowed() { var viewModel = new StartLiveLinkWindow.BuildConfigurationViewModel(CreateBuildConfiguration("Config", configuration => { configuration.SetComponent(new GeneralSettings()); configuration.SetComponent(new SceneList { BuildCurrentScene = true }); configuration.SetComponent(new MockClassicBuildProfile()); configuration.SetComponent(new OutputBuildDirectory { OutputDirectory = "TestConfigurationBuilds" }); configuration.SetComponent(new ClassicScriptingSettings()); })); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.Build, out _), Is.True); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.BuildAndRun, out _), Is.True); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.RunLatestBuild, out var reason), Is.False); Assert.That(reason, Is.EqualTo("No previous build has been found for this configuration.")); viewModel = new StartLiveLinkWindow.BuildConfigurationViewModel(CreateBuildConfiguration("Config", configuration => { configuration.SetComponent(new GeneralSettings()); configuration.SetComponent(new SceneList { BuildCurrentScene = true }); })); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.Build, out _), Is.False); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.BuildAndRun, out _), Is.False); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.RunLatestBuild, out _), Is.False); }
public void ConfigurationViewModel_CheckIfActionIsAllowed() { var pipeline = BuildPipeline.LoadAsset(StartLiveLinkWindow.kDefaultLiveLinkBuildPipelineAssetPath); var viewModel = new StartLiveLinkWindow.BuildConfigurationViewModel(CreateBuildConfiguration("Config", configuration => { configuration.SetComponent(new GeneralSettings()); configuration.SetComponent(new SceneList { BuildCurrentScene = true }); configuration.SetComponent(new ClassicBuildProfile { #if UNITY_2020_1_OR_NEWER Pipeline = new LazyLoadReference <BuildPipeline> { asset = pipeline }, #else Pipeline = pipeline, #endif Target = BuildTarget.Android }); configuration.SetComponent(new OutputBuildDirectory { OutputDirectory = "TestConfigurationBuilds" }); configuration.SetComponent(new ClassicScriptingSettings()); })); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.Build, out _), Is.True); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.BuildAndRun, out _), Is.True); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.RunLatestBuild, out var reason), Is.False); Assert.That(reason, Is.EqualTo("No previous build has been found for this configuration.")); viewModel = new StartLiveLinkWindow.BuildConfigurationViewModel(CreateBuildConfiguration("Config", configuration => { configuration.SetComponent(new GeneralSettings()); configuration.SetComponent(new SceneList { BuildCurrentScene = true }); })); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.Build, out _), Is.False); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.BuildAndRun, out _), Is.False); Assert.That(viewModel.IsActionAllowed(StartLiveLinkWindow.StartMode.RunLatestBuild, out _), Is.False); }