public void RequireAssemblyTest() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@"exports.mscorlib = require('mscorlib')"); var mscorlib = exports.mscorlib; mscorlib.System.Console.WriteLine("hello"); }
public static string TransformToJs(string fullFileName, string text, EnvDTE.ProjectItem projectItem) { string error = null; try { Settings settings = Settings.Instance(fullFileName); return(CoffeeScript.compile(text, settings.CoffeeScriptOptions)); } catch (Exception e) { Match match; if (TaskList.Instance != null && (match = regexError.Match(e.Message)).Success) { TaskList.Instance.Add( projectItem.ContainingProject, Microsoft.VisualStudio.Shell.TaskErrorCategory.Error, fullFileName, match.Groups[2].Value.ToInt(1), 0, match.Groups[1].Value); } else { error = e.Message; } return(null); } }
public void HelloWorldTest() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute( @"Console = require('mscorlib').System.Console Console.WriteLine ""Hello World"""); }
public void ShouldCreateLocalVariables() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@"value = 1 exports.value = value"); Assert.AreEqual(1, exports.value); }
public override void Start() { base.Start(); coffee = GameObject.FindGameObjectWithTag("Coffee").GetComponent <CoffeeScript>(); sRenderer = GetComponent <SpriteRenderer>(); anim = GetComponent <Animator>(); moveAnimSpeed = TimeManagerScript.instance.moveAnimationSpeed; }
public CoffeeScriptModule(string id, CoffeeScript runtime) { this.Id = id; this.Runtime = runtime; this.Exports = new ExpandoObject(); this.FileInfo = new FileInfo(this.Id); }
public void TestCoffeeScript() { var code = "/*CoffeeScript: bare: true */\r\nalert 'hello!'"; code = CoffeeScript.compile(code); code.Should().Contain("alert('hello!')"); code.Should().Not.Contain("function"); }
public void FunctionsCanPassVariables() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute( @"func = (s)-> s.value = 1 func(exports)"); Assert.AreEqual(1, exports.value); }
public void ShouldCreateArrays() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@"exports.value = [1,2,3,4,5]"); Assert.AreEqual(5, exports.value.Length); Assert.AreEqual(1, exports.value[0]); Assert.AreEqual(2, exports.value[1]); Assert.AreEqual(3, exports.value[2]); Assert.AreEqual(4, exports.value[3]); Assert.AreEqual(5, exports.value[4]); }
public void SetExportsField() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@"exports.value = 1 exports.value2 = 2 exports.value3 = 3 exports.value4 = 4"); Assert.AreEqual(1, exports.value); Assert.AreEqual(2, exports.value2); Assert.AreEqual(3, exports.value3); Assert.AreEqual(4, exports.value4); }
private void btnCWatch_Click(object sender, RoutedEventArgs e) { if (coffeeScript == null) { coffeeScript = new CoffeeScript(); } setCoffee(true); Binding coffeeMainBinding = new Binding("Message"); coffeeMainBinding.Source = coffeeScript; txtCMain.SetBinding(TextBox.TextProperty, coffeeMainBinding); setCoffeeEvents(); if (coffeeScript.Start()) { coffeeWatchStarted(); } }
public void CompileCoffeeFile([ValueSource("GetCoffee")] string filename) { var runtime = new CoffeeScript(); runtime.ExecuteFile(filename); }
public void SupportsChains() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@"cholesterol = 127 healthy = 200 > cholesterol > 60 exports.value = healthy"); Assert.AreEqual(true, exports.value); }
public void ShouldThrowReferenceError() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" # Objects: exports.math = cube: (x) -> x * square x "); //should throw reference error since square is not defined var result = exports.math.cube(1); }
public void SupportsFunctions() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" # Functions: exports.square = (x) -> x * x "); Assert.AreEqual(1, exports.square(1)); Assert.AreEqual(4, exports.square(2)); Assert.AreEqual(9, exports.square(3)); Assert.AreEqual(16, exports.square(4)); Assert.AreEqual(25, exports.square(5)); }
public void SupportsComparisons() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@"exports.value = 200 > 127"); Assert.AreEqual(true, exports.value); }
public void SupportsObjectAssignments() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" testObject = value1: 1 value15: 15 value2: 2 {value1, value2} = testObject exports.value1 = value1 exports.value2 = value2 "); Assert.AreEqual(1, exports.value1); Assert.AreEqual(2, exports.value2); }
public void ShouldExecuteFunctions() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute( @"func = -> exports.value = 1 func()"); Assert.AreEqual(1, exports.value); }
public void SupportsObjects() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" # Objects: square = (x) -> x * x exports.math = cube: (x) -> x * square x "); Assert.AreEqual(1, exports.math.cube(1)); Assert.AreEqual(8, exports.math.cube(2)); Assert.AreEqual(27, exports.math.cube(3)); Assert.AreEqual(64, exports.math.cube(4)); Assert.AreEqual(125, exports.math.cube(5)); }
public void SupportsObjects2() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" # Objects: exports.math = {} exports.math.root = 1 "); dynamic math = exports.math; Assert.AreEqual(1, math.root); }
public void SupportsPreIncrement() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" exports.value = 1 exports.inc = () -> ++exports.value "); Assert.AreEqual(1, exports.value); Assert.AreEqual(1, exports.inc()); Assert.AreEqual(2, exports.value); Assert.AreEqual(2, exports.inc()); Assert.AreEqual(3, exports.value); }
public void VariableReferenceShouldFallbackToThisContext() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" this.value = 5 exports.getValue = () -> value "); //should throw reference error since square is not defined //TODO: "square" is defined in the wrong lambda Assert.AreEqual(5, exports.getValue()); }
public void ShouldNotThrowReferenceErrorOnLateBoundObjects() { var runtime = new CoffeeScript(); dynamic exports = runtime.Execute(@" exports.math = cube: (x) -> x * square x defineSquare = () -> this.square = (x) -> x * x defineSquare() "); //should throw reference error since square is not defined //TODO: "square" is defined in the wrong lambda Assert.AreEqual(1, exports.math.cube(1)); Assert.AreEqual(8, exports.math.cube(2)); Assert.AreEqual(27, exports.math.cube(3)); Assert.AreEqual(64, exports.math.cube(4)); Assert.AreEqual(125, exports.math.cube(5)); }