public void BindUnaryOperationTest()
        {
            JsonValue         value;
            DynamicMetaObject target;

            value  = new JsonPrimitive(AnyInstance.AnyInt);
            target = GetJsonValueDynamicMetaObject(value);

            TestUnaryOperationBinder.TestBindParams(target);
            TestUnaryOperationBinder.TestMetaObject(target, TestUnaryOperationBinder.NumberOperations);

            value  = new JsonPrimitive(AnyInstance.AnyBool);
            target = GetJsonValueDynamicMetaObject(value);

            TestUnaryOperationBinder.TestMetaObject(target, TestUnaryOperationBinder.BooleanOperations);
        }
        public void InvalidBindUnaryOperationTest()
        {
            JsonValue[] values =
            {
                AnyInstance.AnyJsonObject,
                AnyInstance.AnyJsonArray,
                AnyInstance.AnyInt,
                AnyInstance.DefaultJsonValue
            };

            foreach (JsonValue value in values)
            {
                DynamicMetaObject target = GetJsonValueDynamicMetaObject(value);

                TestUnaryOperationBinder.TestMetaObject(target, TestUnaryOperationBinder.UnsupportedOperations, false);

                if (!(value is JsonPrimitive))
                {
                    TestUnaryOperationBinder.TestMetaObject(target, TestUnaryOperationBinder.NumberOperations, false);
                    TestUnaryOperationBinder.TestMetaObject(target, TestUnaryOperationBinder.BooleanOperations, false);
                }
            }
        }