public static void ValidVersion(string version) { var attribute = new MigrationVersionAttribute(version); var expectedVersion = new Version(version); attribute.Version.Should().Be(expectedVersion); Action validate = () => attribute.Validate(typeof(MigrationVersionAttributeTests)); validate.Should().NotThrow(); }
public static void InvalidVersion(string invalidVersion) { var attribute = new MigrationVersionAttribute(invalidVersion); Action getVersion = () => { var _ = attribute.Version; }; Action validate = () => attribute.Validate(typeof(MigrationVersionAttributeTests)); getVersion.Should().Throw <ArgumentException>() .And.Message.Should().Be($"The specified version {invalidVersion.ToStringOrNull()} cannot be parsed."); validate.Should().Throw <MigrationException>() .And.Message.Should().Be($"The specified version {invalidVersion.ToStringOrNull()} of migration \"{typeof(MigrationVersionAttributeTests)}\" cannot be parsed."); }