public void Should_downgrade_if_ExpirationDate_is_in_future_and_UpgradeProtection_is_expired() { string reason; var expiredLicense = new License { ExpirationDate = DateTime.UtcNow.AddDays(2), UpgradeProtectionExpiration = TimestampReader.GetBuildTimestamp().AddDays(-2) }; Assert.IsTrue(LicenseDowngrader.ShouldLicenseDowngrade(expiredLicense, out reason)); Assert.AreEqual("Your upgrade protection does not cover this version of NServiceBus.", reason); }
public void Should_not_downgrade_if_ExpirationDate_is_in_future_and_UpgradeProtection_is_not_expired() { string reason; var expiredLicense = new License { ExpirationDate = DateTime.UtcNow.AddDays(2), UpgradeProtectionExpiration = TimestampReader.GetBuildTimestamp().AddDays(2) }; Assert.IsFalse(LicenseDowngrader.ShouldLicenseDowngrade(expiredLicense, out reason)); Assert.IsNull(reason); }
public override void SetUp() { base.SetUp(); _dataReaderStrictMock = MockRepository.GenerateStrictMock <IDataReader> (); _idPropertyStrictMock = MockRepository.GenerateStrictMock <IRdbmsStoragePropertyDefinition>(); _timestampStrictMock = MockRepository.GenerateStrictMock <IRdbmsStoragePropertyDefinition>(); _columnOrdinalProviderStub = MockRepository.GenerateStub <IColumnOrdinalProvider>(); _reader = new TimestampReader(_idPropertyStrictMock, _timestampStrictMock, _columnOrdinalProviderStub); _fakeObjectIDResult = new ObjectID(typeof(Order), Guid.NewGuid()); _fakeTimestampResult = new object(); }
ICollection <DateTime> TimestampReader.ReadAll() { TimestampReader reader = this; foreach (var timestamp in reader.Read()) { break; } var r = this.runner; return(r?.Run <EnumerableTrapper <DateTime> >() ?.TrappedCollection ?? new XLinkedList <DateTime>()); }
public static bool ShouldLicenseDowngrade(License license, out string downgradeReason) { if (ExpiryChecker.IsExpired(license.ExpirationDate)) { downgradeReason = "Your license has expired."; return(true); } if (license.UpgradeProtectionExpiration != null) { var buildTimeStamp = TimestampReader.GetBuildTimestamp(); if (buildTimeStamp > license.UpgradeProtectionExpiration) { downgradeReason = "Your upgrade protection does not cover this version of NServiceBus."; return(true); } } downgradeReason = null; return(false); }
void RoundTripSingleValue(int numValues) { var random = new Random(123); var pocos = GenerateRandomTimestamps(random, numValues).Select(t => new SingleValuePoco { Value = t }).ToList(); var stream = new MemoryStream(); Footer footer; StripeStreamHelper.Write(stream, pocos, out footer); var stripeStreams = StripeStreamHelper.GetStripeStreams(stream, footer); var reader = new TimestampReader(stripeStreams, 1); var results = reader.Read().ToArray(); for (int i = 0; i < numValues; i++) { Assert.Equal(pocos[i].Value, results[i]); } }
public void Ensure_timestamp_is_embedded() { var dateTime = TimestampReader.GetBuildTimestamp(); Assert.AreEqual(DateTime.UtcNow.Date, dateTime.Date); }
static void Main(string[] args) { if (args.Length != 1) { Console.WriteLine("Usage: <FILENAME>"); return; } var filename = args[0]; var stream = new FileStream(filename, FileMode.Open, FileAccess.Read); var fileTail = new FileTail(stream); foreach (var stripe in fileTail.Stripes) { Console.WriteLine($"Reading stripe with {stripe.NumRows} rows"); var stripeStreamCollection = stripe.GetStripeStreamCollection(); if (fileTail.Footer.Types[0].Kind != ColumnTypeKind.Struct) { throw new InvalidDataException($"The base type must be {nameof(ColumnTypeKind.Struct)}"); } var names = fileTail.Footer.Types[0].FieldNames; for (int columnId = 1; columnId < fileTail.Footer.Types.Count; columnId++) { var columnType = fileTail.Footer.Types[columnId]; var columnName = names[columnId - 1]; switch (columnType.Kind) { case ColumnTypeKind.Long: case ColumnTypeKind.Int: case ColumnTypeKind.Short: { Console.WriteLine($"Reading longs from column {columnId} ({columnName})"); var reader = new LongReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} longs"); break; } case ColumnTypeKind.Byte: { Console.WriteLine($"Reading bytes from column {columnId} ({columnName})"); var reader = new ByteReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} bytes"); break; } case ColumnTypeKind.Boolean: { Console.WriteLine($"Reading bools from column {columnId} ({columnName})"); var reader = new BooleanReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} bools"); break; } case ColumnTypeKind.Float: { Console.WriteLine($"Reading floats from column {columnId} ({columnName})"); var reader = new FloatReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} floats"); break; } case ColumnTypeKind.Double: { Console.WriteLine($"Reading doubles from column {columnId} ({columnName})"); var reader = new DoubleReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} doubles"); break; } case ColumnTypeKind.Binary: { Console.WriteLine($"Reading binary from column {columnId} ({columnName})"); var reader = new ColumnTypes.BinaryReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} binaries"); break; } case ColumnTypeKind.Decimal: { Console.WriteLine($"Reading decimals from column {columnId} ({columnName})"); var reader = new DecimalReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} decimals"); break; } case ColumnTypeKind.Timestamp: { Console.WriteLine($"Reading timestamps from column {columnId} ({columnName})"); var reader = new TimestampReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} timestamps"); break; } case ColumnTypeKind.Date: { Console.WriteLine($"Reading dates from column {columnId} ({columnName})"); var reader = new DateReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} dates"); break; } case ColumnTypeKind.String: { Console.WriteLine($"Reading strings from column {columnId} ({columnName})"); var reader = new ColumnTypes.StringReader(stripeStreamCollection, (uint)columnId); var count = reader.Read().Count(); Console.WriteLine($"Done reading {count} strings"); break; } default: throw new NotImplementedException(); } } Console.WriteLine("Done reading stripe"); } }