[language]
binary = "go"
version = "go1.22.3"
name = "golang"

[project]
dependencies = []
dev_dependencies = []

[project.tool]
binary = "go"

[project.tool.commands]
initializers = [["mod", "init", "$PROJECT_NAME"]]
add_dependency = ["add"]
add_development_dependency = ["add", "--group", "dev"]
run_tests = ["test"]

[code.directories]
source = "."
test = "."

[[code.source]]
file = "main.go"
contents = '''
   package main

   func Add(a, b int) int {
       return a + b
   }

   func main() {
       // Main function can be empty for now
   }
'''

[[code.test]]
file = "main_test.go"
contents = '''
package main

   import "testing"

   func TestAdd(t *testing.T) {
       result := Add(2, 3)
       expected := 5
       if result != expected {
           t.Errorf("Add(2, 3) = %d; want %d", result, expected)
       }
   }
'''

[[config]]
file = ".vscode/settings.json"
contents = '''
{
    "python.testing.pytestArgs": [
        "tests"
    ],
    "python.testing.unittestEnabled": false,
    "python.testing.pytestEnabled": true
}
'''
