2025-08-23 22:05:52 +02:00
|
|
|
package updater
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
|
|
|
)
|
|
|
|
|
|
2025-08-23 22:14:34 +02:00
|
|
|
func TestPackageJsonUpdater_Files(t *testing.T) {
|
|
|
|
|
assert.Equal(t, []string{"package.json"}, PackageJson().Files())
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestPackageJsonUpdater_CreateNewFiles(t *testing.T) {
|
|
|
|
|
assert.False(t, PackageJson().CreateNewFiles())
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func TestPackageJsonUpdater_Update(t *testing.T) {
|
2025-08-23 22:05:52 +02:00
|
|
|
tests := []updaterTestCase{
|
|
|
|
|
{
|
2025-08-23 22:14:34 +02:00
|
|
|
name: "simple package.json",
|
|
|
|
|
content: `{"name":"test","version":"1.0.0"}`,
|
2025-08-23 22:05:52 +02:00
|
|
|
info: ReleaseInfo{
|
|
|
|
|
Version: "v2.0.5",
|
|
|
|
|
},
|
|
|
|
|
want: `{"name":"test","version":"2.0.5"}`,
|
|
|
|
|
wantErr: assert.NoError,
|
|
|
|
|
},
|
|
|
|
|
{
|
2025-08-23 22:14:34 +02:00
|
|
|
name: "complex package.json",
|
|
|
|
|
content: "{\n \"name\": \"test\",\n \"version\": \"1.0.0\",\n \"dependencies\": {\n \"foo\": \"^1.0.0\"\n }\n}",
|
2025-08-23 22:05:52 +02:00
|
|
|
info: ReleaseInfo{
|
|
|
|
|
Version: "v2.0.0",
|
|
|
|
|
},
|
|
|
|
|
want: "{\n \"name\": \"test\",\n \"version\": \"2.0.0\",\n \"dependencies\": {\n \"foo\": \"^1.0.0\"\n }\n}",
|
|
|
|
|
wantErr: assert.NoError,
|
|
|
|
|
},
|
|
|
|
|
{
|
2025-08-23 22:14:34 +02:00
|
|
|
name: "invalid json",
|
|
|
|
|
content: `not json`,
|
2025-08-23 22:05:52 +02:00
|
|
|
info: ReleaseInfo{
|
|
|
|
|
Version: "v2.0.0",
|
|
|
|
|
},
|
|
|
|
|
want: `not json`,
|
|
|
|
|
wantErr: assert.NoError,
|
|
|
|
|
},
|
|
|
|
|
{
|
2025-08-23 22:14:34 +02:00
|
|
|
name: "json without version",
|
|
|
|
|
content: `{"name":"test"}`,
|
2025-08-23 22:05:52 +02:00
|
|
|
info: ReleaseInfo{
|
|
|
|
|
Version: "v2.0.0",
|
|
|
|
|
},
|
|
|
|
|
want: `{"name":"test"}`,
|
|
|
|
|
wantErr: assert.NoError,
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
for _, tt := range tests {
|
|
|
|
|
t.Run(tt.name, func(t *testing.T) {
|
2025-08-23 22:14:34 +02:00
|
|
|
runUpdaterTest(t, PackageJson(), tt)
|
2025-08-23 22:05:52 +02:00
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
}
|