public void Initialize_WithNonEnumTypeParameter_ShouldThrowTypeInitializationException() { Assert.Throws <TypeInitializationException>( () => { var a = new InvalidEnum(1); } ); }
public void TestInvalidEnum() { InvalidEnum invalid = InvalidEnum.Value1; string invalidCssClass = CssClassAttribute.GetCssClass(invalid); Assert.AreEqual("value-1", invalidCssClass); invalid = InvalidEnum.Value2Empty; invalidCssClass = CssClassAttribute.GetCssClass(invalid); Assert.AreEqual("", invalidCssClass); //invalid = InvalidEnum.Value3NoAttribute; //invalidCssClass = CssClassAttribute.GetCssClass(invalid); //Assert.AreEqual("", invalidCssClass); }
/// <summary> /// 检查有效性 /// </summary> private InvalidEnum CheckValid() { InvalidEnum result = InvalidEnum.Valid; bool existKeystore = !string.IsNullOrEmpty(_model.keystore) && File.Exists(_model.keystore); bool existPwd = !string.IsNullOrEmpty(_model.password); bool existAlias = !string.IsNullOrEmpty(_model.alias); bool existJdkDir = !string.IsNullOrEmpty(_model.jdkDir) && File.Exists(GetSigner(_model.jdkDir)); bool existApk = !string.IsNullOrEmpty(_model.apk) && File.Exists(_model.apk); if (!existKeystore) { result |= InvalidEnum.Keystore; } if (!existPwd) { result |= InvalidEnum.Password; } if (!existAlias) { result |= InvalidEnum.Alias; } if (!existJdkDir) { result |= InvalidEnum.JdkDir; } if (!existApk) { result |= InvalidEnum.Apk; } return(result); }
/// <summary> /// 签名 /// </summary> public void Sign() { InvalidEnum valid = CheckValid(); if (valid == InvalidEnum.Valid) { _view.Tip = "Signing..."; _view.SignEnabled = false; ApkSigner signer = new ApkSigner() { emptyMetaInfPath = _emptyMetaInfPath, alias = _model.alias, apk = _model.apk, jarSignerPath = GetSigner(_model.jdkDir), keystore = _model.keystore, password = _model.password, _compressTool = new WinRar() }; signer.Sign((success, path) => { ResetViewTip(); if (success) { OpenDestDir(path); MessageBox.Show("Sign done", "Tip"); } else { MessageBox.Show("Sign failed", "Warning"); } }); } else { StringBuilder wrongtip = new StringBuilder("Wrong :"); if (valid.HasFlag(InvalidEnum.Keystore)) { wrongtip.Append(" [keystore not exists]"); } if (valid.HasFlag(InvalidEnum.Password)) { wrongtip.Append(" [password is empty]"); } if (valid.HasFlag(InvalidEnum.Alias)) { wrongtip.Append(" [alias is empty]"); } if (valid.HasFlag(InvalidEnum.JdkDir)) { wrongtip.Append(" [jdkdir wrong]"); } if (valid.HasFlag(InvalidEnum.Apk)) { wrongtip.Append(" [apk not exists]"); } MessageBox.Show(wrongtip.ToString(), "Warning"); } }