diff --git a/tests/basic/test_repomap.py b/tests/basic/test_repomap.py index 07485c7b9..7347800e5 100644 --- a/tests/basic/test_repomap.py +++ b/tests/basic/test_repomap.py @@ -598,162 +598,22 @@ export { UserGreeting, useCounter, DEFAULT_NAME, MAX_AGE }; ), "csharp": ( "test.cs", - """using System; -using System.Collections.Generic; - -namespace Greetings { - public interface IGreeter { - string Greet(string name); - } - - public class Person { - public string Name { get; set; } - public int Age { get; set; } - - public Person(string name, int age) { - Name = name; - Age = age; - } - } - - public class FormalGreeter : IGreeter { - private const string PREFIX = "Good day"; - private static readonly int MAX_AGE = 150; - - public string Greet(string name) { - return $"{PREFIX}, {name}!"; - } - - public string GreetPerson(Person person) { - return $"{PREFIX}, {person.Name} ({person.Age})!"; - } - } - - public class Program { - static void Main() { - var greeter = new FormalGreeter(); - var person = new Person("World", 42); - Console.WriteLine(greeter.GreetPerson(person)); - } - } -}""", + "", # Now reads from fixture file "IGreeter", # Key symbol to check ), "elisp": ( "test.el", - """(defvar *default-greeting* "Hello") -(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))))""", + "", # Now reads from fixture file "greeter", # Key symbol to check ), "elm": ( "test.elm", - """module Main exposing (main, Person, Greeting) - -import Html exposing (Html, div, text) -import Html.Attributes exposing (class) - -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) - ]""", + "", # Now reads from fixture file "Person", # Key symbol to check ), "go": ( "test.go", - """package main - -import ( - "fmt" - "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)) -}""", + "", # Now reads from fixture file "Greeter", # Key symbol to check ), } diff --git a/tests/fixtures/languages/csharp/test.cs b/tests/fixtures/languages/csharp/test.cs new file mode 100644 index 000000000..51f5bf4e6 --- /dev/null +++ b/tests/fixtures/languages/csharp/test.cs @@ -0,0 +1,39 @@ +using System; +using System.Collections.Generic; + +namespace Greetings { + public interface IGreeter { + string Greet(string name); + } + + public class Person { + public string Name { get; set; } + public int Age { get; set; } + + public Person(string name, int age) { + Name = name; + Age = age; + } + } + + public class FormalGreeter : IGreeter { + private const string PREFIX = "Good day"; + private static readonly int MAX_AGE = 150; + + public string Greet(string name) { + return $"{PREFIX}, {name}!"; + } + + public string GreetPerson(Person person) { + return $"{PREFIX}, {person.Name} ({person.Age})!"; + } + } + + public class Program { + static void Main() { + var greeter = new FormalGreeter(); + var person = new Person("World", 42); + Console.WriteLine(greeter.GreetPerson(person)); + } + } +} diff --git a/tests/fixtures/languages/elisp/test.el b/tests/fixtures/languages/elisp/test.el new file mode 100644 index 000000000..26e25b7b3 --- /dev/null +++ b/tests/fixtures/languages/elisp/test.el @@ -0,0 +1,25 @@ +(defvar *default-greeting* "Hello") +(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)))) diff --git a/tests/fixtures/languages/elm/test.elm b/tests/fixtures/languages/elm/test.elm new file mode 100644 index 000000000..7784f60eb --- /dev/null +++ b/tests/fixtures/languages/elm/test.elm @@ -0,0 +1,38 @@ +module Main exposing (main, Person, Greeting) + +import Html exposing (Html, div, text) +import Html.Attributes exposing (class) + +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) + ] diff --git a/tests/fixtures/languages/go/test.go b/tests/fixtures/languages/go/test.go new file mode 100644 index 000000000..98f6bca10 --- /dev/null +++ b/tests/fixtures/languages/go/test.go @@ -0,0 +1,42 @@ +package main + +import ( + "fmt" + "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)) +}