fix(postgres): check if source exists before creating
Signed-off-by: soxx <soxx@fenpa.ws>
This commit is contained in:
parent
795bcbdac3
commit
2515fc5081
@ -16,7 +16,7 @@ func CreateSourceNode(ctx context.Context, db *gorm.DB, anthroveSource *pgModels
|
||||
return fmt.Errorf("anthroveSource domain is required")
|
||||
}
|
||||
|
||||
result := db.WithContext(ctx).Create(anthroveSource)
|
||||
result := db.WithContext(ctx).Where(pgModels.Source{Domain: anthroveSource.Domain}).FirstOrCreate(anthroveSource)
|
||||
|
||||
if result.Error != nil {
|
||||
return result.Error
|
||||
|
@ -65,7 +65,7 @@ func TestCreateSourceNode(t *testing.T) {
|
||||
db: gormDB,
|
||||
anthroveSource: validAnthroveSource,
|
||||
},
|
||||
wantErr: true,
|
||||
wantErr: false,
|
||||
},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
@ -249,7 +249,7 @@ func checkSourceNode(got *pgModels.Source, want *pgModels.Source) bool {
|
||||
if want == nil && got == nil {
|
||||
return true
|
||||
}
|
||||
|
||||
|
||||
if got.Domain != want.Domain {
|
||||
return false
|
||||
}
|
||||
|
Reference in New Issue
Block a user