Esempio n. 1
0
        public void LengthAndEquality()
        {
            var a_m = "Hello World";
            var a_j = JSString.New(a_m);
            var b_j = JSString.New(a_j.Value);

            Assert.AreEqual(a_m.Length, a_j.Length);
            Assert.AreEqual(a_j.Length, b_j.Length);
            Assert.AreEqual(a_m, a_j.Value);
            Assert.AreEqual(a_j.Value, b_j.Value);
            Assert.IsTrue(a_j.IsEqual(b_j));
        }
Esempio n. 2
0
        public void Equality()
        {
            var a_m = "A simple greeting";
            var a_j = JSString.New(a_m);

            Assert.AreEqual(a_m, a_j.Value);

            var b_m = a_j.Value;
            var b_j = JSString.New(b_m);

            Assert.IsTrue(a_j.IsEqual(b_j));
        }
Esempio n. 3
0
        public void StringTest()
        {
            using (var tc = new TestContext()) {
                var expected = "hello world";
                var s        = new JSString(tc, expected);
                tc.Global["str"] = s;

                Assert.AreEqual(expected.Length, s.Length);

                var evalResult  = tc.Context.Evaluate(tc.Global, "str + '!!!'");
                var evalResultS = new JSString(evalResult);
                Assert.AreEqual(expected + "!!!", evalResultS.ToString());
            }
        }
Esempio n. 4
0
        public void ArrayWriteTest()
        {
            using (var tc = new TestContext()) {
                var array = new JSArray(tc, 3);

                array[0] = new Value(1.5);
                array[1] = new Value(5);
                array[2] = new JSString(tc, "hello");

                tc.Global["arr"] = array;

                var evalResult = tc.Context.Evaluate(tc.Global, "'[' + String(arr) + ']'");
                Assert.AreEqual("[1.5,5,hello]", evalResult.Value.ToManagedString(tc));
            }
        }
Esempio n. 5
0
        public void AssignmentFromObj()
        {
            var typeStructure = new TypeStructure
            {
                IsArray     = false,
                IsSytemType = true,
                Name        = "Name",
                Type        = typeof(string)
            };
            var jsType = new JSString();


            var jsCode = ((JSRenderble)DI.Get <IFromObjectAssignmentProperty>(typeStructure, jsType)).GetText();

            Assert.AreEqual(jsCode, "    /**\r\n    * @type String\r\n*/\r\n    this.Name = dataObject.Name;\r\n");
        }
Esempio n. 6
0
        public void String()
        {
            var a = new JSValue(context, "Hello World");
            var b = new JSValue(context, JSString.New("Hello World"));

            Assert.IsTrue(a.IsString);
            Assert.IsTrue(b.IsString);

            Assert.IsTrue(a.IsEqual(b));
            Assert.IsTrue(a.IsStrictEqual(b));
            Assert.AreEqual(a.StringValue, b.StringValue);

            Assert.AreEqual(JSType.String, a.JSType);
            Assert.AreEqual(JSType.String, b.JSType);

            a = new JSValue(context, "Hello World");
            b = new JSValue(context, JSString.New("Not the same"));

            Assert.IsFalse(a.IsEqual(b));
            Assert.IsFalse(a.IsStrictEqual(b));
        }