Ewetumo Alexander b50c46caa8 Add SetTimeout/SetInterval to JailCell otto.Otto, closes #189
* Commit initial change for settimeout/setinterval

* Add initial tests for jail setTimeout/setInterval

* Add ottoext dependency

* Add fetch jail test with function

* Add dependencies of fetch from ottoext

* Refactor with regards to PR review

* Refactor with regards to PR review

* Fix syntax errors

* Fix missing return statement
2017-07-13 18:04:47 +07:00

32 lines
532 B
Go

package promise // import "fknsrs.biz/p/ottoext/promise"
import (
"github.com/robertkrimen/otto"
"fknsrs.biz/p/ottoext/loop"
"fknsrs.biz/p/ottoext/timers"
)
func Define(vm *otto.Otto, l *loop.Loop) error {
if v, err := vm.Get("Promise"); err != nil {
return err
} else if !v.IsUndefined() {
return nil
}
if err := timers.Define(vm, l); err != nil {
return err
}
s, err := vm.Compile("promise-bundle.js", src)
if err != nil {
return err
}
if _, err := vm.Run(s); err != nil {
return err
}
return nil
}