Skip to content

Commit de434d3

Browse files
committed
add go support
1 parent 31ec615 commit de434d3

File tree

6 files changed

+26
-0
lines changed

6 files changed

+26
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ _language_: cee.Language – Pass the language the code is written in, for examp
6464
- **Python3** (Windows / Linux)
6565
- **Javascript** (Windows / Linux)
6666
- **Ruby** (Windows / Linux)
67+
- **Go** (Windows / Linux)
6768
- **Batch** (Windows)
6869
- **Bash** (Linux)
6970
- **C** (Linux)

runners/linux/go.sh

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
#!/bin/sh
2+
timeout -s SIGKILL 10 go run $1

runners/win32/go.bat

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
@echo off
2+
go run %1

src/executor.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ export default async function execute(
2929
if (language == Language.C) temppath += ".c";
3030
else if (language == Language.BATCH) temppath += ".bat";
3131
else if (language == Language.CPP) temppath += ".c";
32+
else if (language == Language.GO) temppath += ".go";
3233
writeFileSync(temppath, input, { encoding: "utf-8" });
3334

3435
// Command to execute runner

src/languages.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ enum Language {
77
RUBY = "ruby",
88
CPP = "cpp",
99
JAVA = "java",
10+
GO = "go",
1011
}
1112

1213
export default Language;

tests/all.test.js

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,25 @@ describe("Testing Basic Languages", () => {
5050
expect(response).toBe("123");
5151
});
5252
});
53+
test("Go", () => {
54+
return cee
55+
.execute(
56+
`
57+
package main
58+
59+
import "fmt"
60+
61+
func main() {
62+
fmt.Println("123")
63+
}
64+
65+
`,
66+
cee.languages.GO
67+
)
68+
.then((response) => {
69+
expect(response).toBe("123");
70+
});
71+
});
5372
// test("LXC", () => {
5473
// var executor = new cee.LXC("cee");
5574
// return executor.execute("whoami", cee.languages.BASH).then((response) => {

0 commit comments

Comments
 (0)