public void should_run_missing_sql_scripts_based_on_sql_scripts_and_versions_with_versioning() { // Arrange var scripts = TestScripts.Take(1).ToArray(); var versions = TestVersions.Take(1).ToArray(); var passedSqlScripts = new Script[0]; var passedVersions = new Version[0]; var run = Task.New <Run>(); run.In.WithVersioning = true; run.CheckForVersionTable = Fake.Task <CheckForVersionTable>(); run.CreateVersionTable = Fake.Task <CreateVersionTable>(); run.GetScripts = Fake.Task <GetScripts>(gms => gms.Out.Scripts = scripts); run.FetchInstalledVersions = Fake.Task <FetchInstalledVersions>(fiv => fiv.Out.Versions = versions); run.RunMissingVersions = Fake.Task <RunMissingVersions>(rmm => { passedSqlScripts = rmm.In.Scripts; passedVersions = rmm.In.InstalledVersions; }); run.RunScripts = Fake.Task <RunScripts>(); // Act run.Execute(); // Assert Assert.That(run.RunMissingVersions.Stats.ExecuteCount, Is.EqualTo(1)); Assert.That(passedSqlScripts, Is.EqualTo(scripts)); Assert.That(passedVersions, Is.EqualTo(versions)); }
public void should_run_missing_sql_scripts_based_on_sql_scripts_and_versions_with_versioning() { // Arrange var scripts = TestScripts.Take(1).ToArray(); var versions = TestVersions.Take(1).ToArray(); var passedSqlScripts = new Script[0]; var passedVersions = new Version[0]; var run = Task.New<Run>(); run.In.WithVersioning = true; run.CheckForVersionTable = Fake.Task<CheckForVersionTable>(); run.CreateVersionTable = Fake.Task<CreateVersionTable>(); run.GetScripts = Fake.Task<GetScripts>(gms => gms.Out.Scripts = scripts); run.FetchInstalledVersions = Fake.Task<FetchInstalledVersions>(fiv => fiv.Out.Versions = versions); run.RunMissingVersions = Fake.Task<RunMissingVersions>(rmm => { passedSqlScripts = rmm.In.Scripts; passedVersions = rmm.In.InstalledVersions; }); run.RunScripts = Fake.Task<RunScripts>(); // Act run.Execute(); // Assert Assert.That(run.RunMissingVersions.Stats.ExecuteCount, Is.EqualTo(1)); Assert.That(passedSqlScripts, Is.EqualTo(scripts)); Assert.That(passedVersions, Is.EqualTo(versions)); }