feat: enhance language test snippets with comprehensive examples

This commit is contained in:
Paul Gauthier (aider) 2024-11-27 06:58:15 -08:00
parent b623141a8f
commit 9e9b5e8d46

View file

@ -642,38 +642,150 @@ namespace Greetings {
##################### FIX ALL THE ONES BELOW HERE vvvvvvvvvvv ##################### FIX ALL THE ONES BELOW HERE vvvvvvvvvvv
"elisp": ( "elisp": (
"test.el", "test.el",
'(defun greet (name)\n (message "Hello, %s!" name))\n', """(defvar *default-greeting* "Hello")
"greet", # Key symbol to check (defvar *max-name-length* 50)
(defstruct person
(name "Anonymous")
(age 0))
(defclass greeter ()
((prefix :initarg :prefix
:accessor greeter-prefix
:initform *default-greeting*)))
(defmethod greet ((g greeter) (p person))
(format nil "~A, ~A! You are ~D years old."
(greeter-prefix g)
(person-name p)
(person-age p)))
(defun create-formal-greeter ()
(make-instance 'greeter :prefix "Good day"))
(defun main ()
(let ((greeter (create-formal-greeter))
(person (make-person :name "World" :age 42)))
(message "%s" (greet greeter person))))""",
"greeter", # Key symbol to check
), ),
"elm": ( "elm": (
"test.elm", "test.elm",
( """module Main exposing (main, Person, Greeting)
"module Main exposing (main)\n\nimport Html exposing (text)\n\nmain =\n text"
' "Hello, World!"\n' import Html exposing (Html, div, text)
), import Html.Attributes exposing (class)
"Main", # Key symbol to check
type alias Person =
{ name : String
, age : Int
}
type Greeting
= Formal
| Casual
greet : Greeting -> Person -> String
greet style person =
let
prefix =
case style of
Formal ->
"Good day"
Casual ->
"Hi"
in
prefix ++ ", " ++ person.name ++ "!"
defaultPerson : Person
defaultPerson =
{ name = "World"
, age = 42
}
main : Html msg
main =
div [ class "greeting" ]
[ text (greet Formal defaultPerson)
]""",
"Person", # Key symbol to check
), ),
"go": ( "go": (
"test.go", "test.go",
( """package main
'package main\n\nimport "fmt"\n\nfunc main() {\n fmt.Println("Hello,'
' World!")\n}\n' import (
), "fmt"
"main", # Key symbol to check "strings"
)
// Person represents someone who can be greeted
type Person struct {
Name string
Age int
}
// Greeter defines greeting behavior
type Greeter interface {
Greet(p Person) string
}
// FormalGreeter implements Greeter with formal style
type FormalGreeter struct {
Prefix string
}
const (
DefaultName = "World"
MaxAge = 150
)
func (g FormalGreeter) Greet(p Person) string {
return fmt.Sprintf("%s, %s! You are %d years old.",
g.Prefix, p.Name, p.Age)
}
func NewFormalGreeter() *FormalGreeter {
return &FormalGreeter{Prefix: "Good day"}
}
func main() {
greeter := NewFormalGreeter()
person := Person{Name: DefaultName, Age: 42}
fmt.Println(greeter.Greet(person))
}""",
"Greeter", # Key symbol to check
), ),
"dart": ( "dart": (
"test.dart", "test.dart",
"""void main() { """abstract class Greeting {
print('Hello, World!'); String greet(Person person);
} }
class Greeter { class Person {
String sayHello(String name) { final String name;
return 'Hello, $name!'; final int age;
const Person(this.name, this.age);
}
class FormalGreeting implements Greeting {
static const String prefix = 'Good day';
static const int maxAge = 150;
@override
String greet(Person person) {
return '$prefix, ${person.name}! You are ${person.age} years old.';
} }
} }
""",
"Greeter", # Key symbol to check void main() {
final greeter = FormalGreeting();
final person = Person('World', 42);
print(greeter.greet(person));
}""",
"Greeting", # Key symbol to check
), ),
} }