Exemple #1
0
        public void Can_Return_Version()
        {
            var installed = new SqlInstalledVersion(1, 2, 3, DateTime.UtcNow);
            var expected  = new SqlVersion(1, 2, 3);

            var actual = installed.GetVersion();

            actual.ShouldBeEquivalentTo(expected);
        }
        public void Can_Not_Add_Lower_Version()
        {
            var initializedContext = GetInitializedContext();
            var ver1 = new SqlInstalledVersion(2, 0, 0, DateTime.UtcNow);
            var ver2 = new SqlInstalledVersion(1, 9, 9, DateTime.UtcNow);

            initializedContext.AddInstalledVersion(ver1);

            Assert.Throws <LowerOrEqualVersionException>(() => initializedContext.AddInstalledVersion(ver2));
        }
        public void Can_Add_Version()
        {
            var initializedContext = GetInitializedContext();
            var toAdd = new SqlInstalledVersion(1, 2, 3, DateTime.UtcNow);

            initializedContext.AddInstalledVersion(toAdd);

            var installed = initializedContext.GetInstalledVersion();

            installed.ShouldBeEquivalentTo(toAdd, options =>
                                           options.Using <DateTime>(x => x.Subject.Should().BeCloseTo(toAdd.InstallDateUtc)).WhenTypeIs <DateTime>());
        }
        public void Can_Get_Latest_Version()
        {
            var initializedContext = GetInitializedContext();
            var ver1 = new SqlInstalledVersion(1, 0, 0, DateTime.Now);
            var ver2 = new SqlInstalledVersion(1, 2, 3, DateTime.Now);
            var ver3 = new SqlInstalledVersion(2, 0, 0, DateTime.Now);

            initializedContext.AddInstalledVersion(ver1);
            initializedContext.AddInstalledVersion(ver2);
            initializedContext.AddInstalledVersion(ver3);

            var installed = initializedContext.GetInstalledVersion();

            installed.ShouldBeEquivalentTo(ver3, options =>
                                           options.Using <DateTime>(x => x.Subject.Should().BeCloseTo(ver3.InstallDateUtc)).WhenTypeIs <DateTime>());
        }