public void FunctionReturnsFunctionWithParameters()
        {
            var a = JS.Id("a");
            var f = JS.Function().Parameters(a).Do(a.Call());

            Assert.AreEqual("function(a){a();};", f.ToString());
        }
        public void BinaryOperationExpressionCombinesSequences()
        {
            var a = new Expression[] { 1, 2, null, "Hello", JS.Function().Call() };
            var c = a.Combined(BinaryOperator.Add);

            Assert.AreEqual("1+2+null+\"Hello\"+(function(){})();", c.ToString());
        }
        public void PrecedenceAutomaticallyAppliesGrouping()
        {
            IdentifierExpression a = "a";

            Assert.AreEqual("(function(){})();", JS.Function().Call().ToString());
            Assert.AreEqual("(\"a\"+\"b\").length;", JS.String("a").AddWith("b").Dot("length").ToString());
            Assert.AreEqual("a[1]();", a.Index(1).Call().ToString());
            Assert.AreEqual("a==1?true:a==2?false:true;", a.IsEqualTo(1).Iif(true, a.IsEqualTo(2).Iif(false, true)).ToString());
            Assert.AreEqual("(a==1?1:2)+5;", a.IsEqualTo(1).Iif(1, 2).AddWith(5).ToString());
        }
Beispiel #4
0
        public void JQueryHasAjax()
        {
            var expression1 = JQ.Ajax("http://service.com");
            var expression2 = JQ.Ajax("http://service.com", new
            {
                accepts  = "text/html",
                cache    = false,
                complete = JS.Function().Parameters("xhr", "status").Do(JS.Alert(JS.Id("status")))
            });

            Assert.AreEqual(@"$.ajax(""http://service.com"");", expression1.ToString());
            Assert.AreEqual(@"$.ajax(""http://service.com"",{accepts:""text/html"",cache:false,complete:function(xhr,status){alert(status);}});", expression2.ToString());
        }
        public void ObjectGetsComplicatedObject()
        {
            var obj = new
            {
                First  = "1",
                Second = JS.Function(),
                Third  = new[] { new[] { 1, 2, 3 } },
                Fourth = new TestObject()
            };

            var literal = JS.Object(obj);

            Assert.AreEqual("{First:\"1\",Second:function(){},Third:[[1,2,3]],Fourth:{Value:0,Display:null,Test:null}};",
                            literal.ToString());
        }
        public override object Run()
        {
            var chipsets = new[]
            {
                new { chipset = "X58", codename = "Tylersburg", socket = "LGA1366", fdi = false },
                new { chipset = "P55", codename = "Ibex Peak", socket = "LGA1156", fdi = false },
                new { chipset = "H55", codename = "Ibex Peak", socket = "LGA1156", fdi = true },
                new { chipset = "H57", codename = "Ibex Peak", socket = "LGA1156", fdi = true }
            };

            var result = JS.JQuery(JS.Function().Do(
                                       JS.JQuery("#target").Data("chipsets", Expression.FromObject(chipsets))
                                       ));

            return(result);
        }
        public void FunctionReturnsFunctionWithBody()
        {
            var f = JS.Function().Do(JS.Null());

            Assert.AreEqual("function(){null;};", f.ToString());
        }
        public void FunctionReturnsFunctionWithName()
        {
            var f = JS.Function("a");

            Assert.AreEqual("function a(){};", f.ToString());
        }
        public void FunctionReturnsEmptyAnonymousFunction()
        {
            var f = JS.Function();

            Assert.AreEqual("function(){};", f.ToString());
        }
Beispiel #10
0
        public void JQueryHasAjaxSend()
        {
            var expression = JS.JQuery("div").AjaxSend(JS.Function());

            Assert.AreEqual(@"$(""div"").ajaxSend(function(){});", expression.ToString());
        }
Beispiel #11
0
        public void JQueryHasAjaxPrefilter()
        {
            var expression = JQ.AjaxPrefilter("json", JS.Function());

            Assert.AreEqual(@"$.ajaxPrefilter(""json"",function(){});", expression.ToString());
        }