Esempio n. 1
0
 public void Initialize_WithNonEnumTypeParameter_ShouldThrowTypeInitializationException()
 {
     Assert.Throws <TypeInitializationException>(
         () =>
     {
         var a = new InvalidEnum(1);
     }
         );
 }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        /// <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);
        }
Esempio n. 4
0
        /// <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");
            }
        }