github.com/angenalZZZ/gofunc@v0.0.0-20210507121333-48ff1be3917b/js/jobs_test.go (about)

     1  package js
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/angenalZZZ/gofunc/log"
     7  )
     8  
     9  func TestNewJobs(t *testing.T) {
    10  	r := NewRuntime(nil)
    11  	defer func() { r.Clear() }()
    12  
    13  	script := `
    14  cron = [
    15      {
    16          name: "001",
    17          spec: "* * * * *", // every minutes
    18          func: function () {
    19              var item = { Time: new Date() };
    20              item.ActionName = 'some action';
    21              var res = $.q("post", "https://postman-echo.com/post", item, "url");
    22              log.debug(JSON.stringify(res));
    23          }
    24      },
    25  ];
    26  `
    27  
    28  	if jobs, err := NewJobs(r, script, "cron", ""); err != nil {
    29  		t.Fatal(err)
    30  	} else {
    31  		if err = jobs[0].Init(); err != nil {
    32  			t.Fatal(err)
    33  		}
    34  		t.Log("jobs[0] init ok.")
    35  		//t.Logf("jobs[0]: %+v", jobs[0])
    36  		//t.Logf("jobs[0].FileIsMod: %t", jobs[0].FileIsMod())
    37  		jobs[0].R, jobs[0].P = NewRuntime, &GoRuntimeParam{
    38  			Log: log.InitConsole("15:04:05", false),
    39  		}
    40  		jobs[0].Run()
    41  	}
    42  }