public void TestConstructor()
        {
            //empty dataElement
            ConditionDisplayParameterOperator operatorParam = new ConditionDisplayParameterOperator(null, this.Callback, Workshare.Policy.PolicyType.ClientEmail);
            Assert.IsTrue(Object.ReferenceEquals(null, operatorParam.Object), "unexpected Object");
            Assert.IsTrue(Properties.Resources.IDS_EXPRESSION_PARAM_OPERATOR_DEFAULT == operatorParam.Text, "unexpected Text");

            //nominal case
            ICondition condition = new Condition(Guid.NewGuid(), "MyClass", OperatorType.GreaterThanOrEqualTo);
            operatorParam = new ConditionDisplayParameterOperator(condition, this.Callback, Workshare.Policy.PolicyType.ClientEmail);

            Assert.IsTrue(Object.ReferenceEquals(condition, operatorParam.Object), "unexpected Object");
            Assert.AreEqual("greater than or equal to", operatorParam.Text, "unexpected Text");

            m_callbackCalled = false;
            operatorParam.Execute();

            Assert.IsTrue(m_callbackCalled, "Execute not called");
        }
        public void TestGetDisplayName()
        {

            //nominal case
            ICondition condition = new Condition(Guid.NewGuid(), "MyClass", OperatorType.GreaterThan);
            ConditionDisplayParameterOperator operatorParam = new ConditionDisplayParameterOperator(condition, this.Callback, Workshare.Policy.PolicyType.ClientEmail);
            Assert.AreEqual("greater than", operatorParam.GetDisplayName(), "unexpected displayname");

            //invalid format for data
            IDataElement dataElement = new DataElement(Guid.NewGuid(), new NonTranslateableLanguageItem("name"), new NonTranslateableLanguageItem(""), DataType.String, DataItem.CreateDataItem(new NonTranslateableLanguageItem(""), DataType.String, Enum.GetName(typeof(Workshare.Policy.FileType), Workshare.Policy.FileType.WordDocument)));
            operatorParam = new ConditionDisplayParameterOperator(null, this.Callback, Workshare.Policy.PolicyType.ClientEmail);
            operatorParam.Object = dataElement;
            try
            {
                string displayName = operatorParam.GetDisplayName();
                Assert.IsTrue(false, "didn't throw on invalid data format");
            }
            catch (PolicyDesignerException)
            {
                Assert.IsTrue(true);
            }
            catch
            {
                Assert.IsTrue(false, "Unexpected exception");
            }

            //no data
            operatorParam = new ConditionDisplayParameterOperator(null, this.Callback, Workshare.Policy.PolicyType.ClientEmail);
            try
            {
                string displayName = operatorParam.GetDisplayName();
                Assert.IsTrue(false, "didn't throw on empty data");
            }
            catch (PolicyDesignerException)
            {
                Assert.IsTrue(true);
            }
            catch
            {
                Assert.IsTrue(false, "Unexpected exception");
            }
        }