Compare commits

...

2 Commits

Author SHA1 Message Date
Martino Ferrari
ef7729475a Implemented auto completion 2026-01-23 12:01:35 +01:00
Martino Ferrari
99bd5bffdd Changed project uri 2026-01-23 11:46:59 +01:00
35 changed files with 344 additions and 103 deletions

View File

@@ -4,13 +4,13 @@ import (
"bytes" "bytes"
"os" "os"
"github.com/marte-dev/marte-dev-tools/internal/builder" "github.com/marte-community/marte-dev-tools/internal/builder"
"github.com/marte-dev/marte-dev-tools/internal/formatter" "github.com/marte-community/marte-dev-tools/internal/formatter"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/logger" "github.com/marte-community/marte-dev-tools/internal/logger"
"github.com/marte-dev/marte-dev-tools/internal/lsp" "github.com/marte-community/marte-dev-tools/internal/lsp"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func main() { func main() {

2
go.mod
View File

@@ -1,4 +1,4 @@
module github.com/marte-dev/marte-dev-tools module github.com/marte-community/marte-dev-tools
go 1.25.6 go 1.25.6

View File

@@ -6,8 +6,8 @@ import (
"sort" "sort"
"strings" "strings"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
) )
type Builder struct { type Builder struct {

View File

@@ -6,7 +6,7 @@ import (
"sort" "sort"
"strings" "strings"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
) )
type Insertable struct { type Insertable struct {

View File

@@ -5,8 +5,8 @@ import (
"path/filepath" "path/filepath"
"strings" "strings"
"github.com/marte-dev/marte-dev-tools/internal/logger" "github.com/marte-community/marte-dev-tools/internal/logger"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
) )
type ProjectTree struct { type ProjectTree struct {

View File

@@ -9,13 +9,48 @@ import (
"os" "os"
"strings" "strings"
"github.com/marte-dev/marte-dev-tools/internal/formatter" "github.com/marte-community/marte-dev-tools/internal/formatter"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/logger" "github.com/marte-community/marte-dev-tools/internal/logger"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/schema"
"github.com/marte-community/marte-dev-tools/internal/validator"
"cuelang.org/go/cue"
) )
type CompletionParams struct {
TextDocument TextDocumentIdentifier `json:"textDocument"`
Position Position `json:"position"`
Context CompletionContext `json:"context,omitempty"`
}
type CompletionContext struct {
TriggerKind int `json:"triggerKind"`
}
type CompletionItem struct {
Label string `json:"label"`
Kind int `json:"kind"`
Detail string `json:"detail,omitempty"`
Documentation string `json:"documentation,omitempty"`
InsertText string `json:"insertText,omitempty"`
InsertTextFormat int `json:"insertTextFormat,omitempty"` // 1: PlainText, 2: Snippet
SortText string `json:"sortText,omitempty"`
}
type CompletionList struct {
IsIncomplete bool `json:"isIncomplete"`
Items []CompletionItem `json:"items"`
}
var tree = index.NewProjectTree()
var documents = make(map[string]string)
var projectRoot string
var globalSchema *schema.Schema
type JsonRpcMessage struct { type JsonRpcMessage struct {
Jsonrpc string `json:"jsonrpc"` Jsonrpc string `json:"jsonrpc"`
Method string `json:"method,omitempty"` Method string `json:"method,omitempty"`
@@ -135,9 +170,6 @@ type TextEdit struct {
NewText string `json:"newText"` NewText string `json:"newText"`
} }
var tree = index.NewProjectTree()
var documents = make(map[string]string)
var projectRoot string
func RunServer() { func RunServer() {
reader := bufio.NewReader(os.Stdin) reader := bufio.NewReader(os.Stdin)
@@ -200,6 +232,7 @@ func handleMessage(msg *JsonRpcMessage) {
logger.Printf("ScanDirectory failed: %v\n", err) logger.Printf("ScanDirectory failed: %v\n", err)
} }
tree.ResolveReferences() tree.ResolveReferences()
globalSchema = schema.LoadFullSchema(projectRoot)
} }
} }
@@ -210,6 +243,9 @@ func handleMessage(msg *JsonRpcMessage) {
"definitionProvider": true, "definitionProvider": true,
"referencesProvider": true, "referencesProvider": true,
"documentFormattingProvider": true, "documentFormattingProvider": true,
"completionProvider": map[string]any{
"triggerCharacters": []string{"=", " "},
},
}, },
}) })
case "initialized": case "initialized":
@@ -253,6 +289,11 @@ func handleMessage(msg *JsonRpcMessage) {
if err := json.Unmarshal(msg.Params, &params); err == nil { if err := json.Unmarshal(msg.Params, &params); err == nil {
respond(msg.ID, handleReferences(params)) respond(msg.ID, handleReferences(params))
} }
case "textDocument/completion":
var params CompletionParams
if err := json.Unmarshal(msg.Params, &params); err == nil {
respond(msg.ID, handleCompletion(params))
}
case "textDocument/formatting": case "textDocument/formatting":
var params DocumentFormattingParams var params DocumentFormattingParams
if err := json.Unmarshal(msg.Params, &params); err == nil { if err := json.Unmarshal(msg.Params, &params); err == nil {
@@ -488,6 +529,206 @@ func handleHover(params HoverParams) *Hover {
} }
} }
func handleCompletion(params CompletionParams) *CompletionList {
uri := params.TextDocument.URI
path := uriToPath(uri)
text, ok := documents[uri]
if !ok {
return nil
}
lines := strings.Split(text, "\n")
if params.Position.Line >= len(lines) {
return nil
}
lineStr := lines[params.Position.Line]
col := params.Position.Character
if col > len(lineStr) {
col = len(lineStr)
}
prefix := lineStr[:col]
// Case 1: Assigning a value (Ends with "=" or "= ")
if strings.Contains(prefix, "=") {
parts := strings.Split(prefix, "=")
key := strings.TrimSpace(parts[len(parts)-2])
if key == "Class" {
return suggestClasses()
}
container := tree.GetNodeContaining(path, parser.Position{Line: params.Position.Line + 1, Column: col + 1})
if container != nil {
return suggestFieldValues(container, key)
}
return nil
}
// Case 2: Typing a key inside an object
container := tree.GetNodeContaining(path, parser.Position{Line: params.Position.Line + 1, Column: col + 1})
if container != nil {
return suggestFields(container)
}
return nil
}
func suggestClasses() *CompletionList {
if globalSchema == nil {
return nil
}
classesVal := globalSchema.Value.LookupPath(cue.ParsePath("#Classes"))
if classesVal.Err() != nil {
return nil
}
iter, err := classesVal.Fields()
if err != nil {
return nil
}
var items []CompletionItem
for iter.Next() {
label := iter.Selector().String()
label = strings.Trim(label, "?!#")
items = append(items, CompletionItem{
Label: label,
Kind: 7, // Class
Detail: "MARTe Class",
})
}
return &CompletionList{Items: items}
}
func suggestFields(container *index.ProjectNode) *CompletionList {
cls := container.Metadata["Class"]
if cls == "" {
return &CompletionList{Items: []CompletionItem{{
Label: "Class",
Kind: 10, // Property
InsertText: "Class = ",
Detail: "Define object class",
}}}
}
if globalSchema == nil {
return nil
}
classPath := cue.ParsePath(fmt.Sprintf("#Classes.%s", cls))
classVal := globalSchema.Value.LookupPath(classPath)
if classVal.Err() != nil {
return nil
}
iter, err := classVal.Fields()
if err != nil {
return nil
}
existing := make(map[string]bool)
for _, frag := range container.Fragments {
for _, def := range frag.Definitions {
if f, ok := def.(*parser.Field); ok {
existing[f.Name] = true
}
}
}
for name := range container.Children {
existing[name] = true
}
var items []CompletionItem
for iter.Next() {
label := iter.Selector().String()
label = strings.Trim(label, "?!#")
// Skip if already present
if existing[label] {
continue
}
isOptional := iter.IsOptional()
kind := 10 // Property
detail := "Mandatory"
if isOptional {
detail = "Optional"
}
insertText := label + " = "
val := iter.Value()
if val.Kind() == cue.StructKind {
// Suggest as node
insertText = "+" + label + " = {\n\t$0\n}"
kind = 9 // Module
}
items = append(items, CompletionItem{
Label: label,
Kind: kind,
Detail: detail,
InsertText: insertText,
InsertTextFormat: 2, // Snippet
})
}
return &CompletionList{Items: items}
}
func suggestFieldValues(container *index.ProjectNode, field string) *CompletionList {
if field == "DataSource" {
return suggestObjects("DataSource")
}
if field == "Functions" {
return suggestObjects("GAM")
}
return nil
}
func suggestObjects(filter string) *CompletionList {
var items []CompletionItem
tree.Walk(func(node *index.ProjectNode) {
match := false
if filter == "GAM" {
if isGAM(node) {
match = true
}
} else if filter == "DataSource" {
if isDataSource(node) {
match = true
}
}
if match {
items = append(items, CompletionItem{
Label: node.RealName,
Kind: 6, // Variable
Detail: node.Metadata["Class"],
})
}
})
return &CompletionList{Items: items}
}
func isGAM(node *index.ProjectNode) bool {
if node.RealName == "" || (node.RealName[0] != '+' && node.RealName[0] != '$') {
return false
}
_, hasInput := node.Children["InputSignals"]
_, hasOutput := node.Children["OutputSignals"]
return hasInput || hasOutput
}
func isDataSource(node *index.ProjectNode) bool {
if node.Parent != nil && node.Parent.Name == "Data" {
return true
}
_, hasSignals := node.Children["Signals"]
return hasSignals
}
func handleDefinition(params DefinitionParams) any { func handleDefinition(params DefinitionParams) any {
path := uriToPath(params.TextDocument.URI) path := uriToPath(params.TextDocument.URI)
line := params.Position.Line + 1 line := params.Position.Line + 1

View File

@@ -7,8 +7,8 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
) )
func TestInitProjectScan(t *testing.T) { func TestInitProjectScan(t *testing.T) {

View File

@@ -3,7 +3,7 @@ package parser_test
import ( import (
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
) )
func TestParserStrictness(t *testing.T) { func TestParserStrictness(t *testing.T) {

View File

@@ -8,9 +8,9 @@ import (
"cuelang.org/go/cue" "cuelang.org/go/cue"
"cuelang.org/go/cue/errors" "cuelang.org/go/cue/errors"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/schema" "github.com/marte-community/marte-dev-tools/internal/schema"
) )
type DiagnosticLevel int type DiagnosticLevel int

View File

@@ -5,7 +5,7 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/builder" "github.com/marte-community/marte-dev-tools/internal/builder"
) )
func TestMultiFileBuildMergeAndOrder(t *testing.T) { func TestMultiFileBuildMergeAndOrder(t *testing.T) {

View File

@@ -7,11 +7,11 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/builder" "github.com/marte-community/marte-dev-tools/internal/builder"
"github.com/marte-dev/marte-dev-tools/internal/formatter" "github.com/marte-community/marte-dev-tools/internal/formatter"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestCheckCommand(t *testing.T) { func TestCheckCommand(t *testing.T) {

View File

@@ -3,8 +3,8 @@ package integration
import ( import (
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
) )
func TestLSPHoverDoc(t *testing.T) { func TestLSPHoverDoc(t *testing.T) {

View File

@@ -3,8 +3,8 @@ package integration
import ( import (
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
) )
func TestGetNodeContaining(t *testing.T) { func TestGetNodeContaining(t *testing.T) {

View File

@@ -3,9 +3,9 @@ package integration
import ( import (
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestLSPSignalReferences(t *testing.T) { func TestLSPSignalReferences(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"io/ioutil" "io/ioutil"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
// Helper to load and parse a file // Helper to load and parse a file

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestMDSWriterValidation(t *testing.T) { func TestMDSWriterValidation(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestPIDGAMValidation(t *testing.T) { func TestPIDGAMValidation(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestRealTimeApplicationValidation(t *testing.T) { func TestRealTimeApplicationValidation(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestSDNSubscriberValidation(t *testing.T) { func TestSDNSubscriberValidation(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestFunctionsArrayValidation(t *testing.T) { func TestFunctionsArrayValidation(t *testing.T) {

View File

@@ -3,9 +3,9 @@ package integration
import ( import (
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestGAMSignalLinking(t *testing.T) { func TestGAMSignalLinking(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestGAMSignalValidation(t *testing.T) { func TestGAMSignalValidation(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestGlobalPragmaDebug(t *testing.T) { func TestGlobalPragmaDebug(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestGlobalPragma(t *testing.T) { func TestGlobalPragma(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestGlobalPragmaUpdate(t *testing.T) { func TestGlobalPragmaUpdate(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestIgnorePragma(t *testing.T) { func TestIgnorePragma(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestImplicitSignal(t *testing.T) { func TestImplicitSignal(t *testing.T) {

View File

@@ -5,9 +5,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func parseAndAddToIndex(t *testing.T, idx *index.ProjectTree, filePath string) { func parseAndAddToIndex(t *testing.T, idx *index.ProjectTree, filePath string) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestPragmaSuppression(t *testing.T) { func TestPragmaSuppression(t *testing.T) {

View File

@@ -6,9 +6,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestProjectSpecificSchema(t *testing.T) { func TestProjectSpecificSchema(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestSchemaValidationType(t *testing.T) { func TestSchemaValidationType(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestSignalProperties(t *testing.T) { func TestSignalProperties(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestSignalValidation(t *testing.T) { func TestSignalValidation(t *testing.T) {

View File

@@ -4,9 +4,9 @@ import (
"strings" "strings"
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestSignalsContentValidation(t *testing.T) { func TestSignalsContentValidation(t *testing.T) {

View File

@@ -3,9 +3,9 @@ package integration
import ( import (
"testing" "testing"
"github.com/marte-dev/marte-dev-tools/internal/index" "github.com/marte-community/marte-dev-tools/internal/index"
"github.com/marte-dev/marte-dev-tools/internal/parser" "github.com/marte-community/marte-dev-tools/internal/parser"
"github.com/marte-dev/marte-dev-tools/internal/validator" "github.com/marte-community/marte-dev-tools/internal/validator"
) )
func TestUnusedGAM(t *testing.T) { func TestUnusedGAM(t *testing.T) {