2022-08-31 03:21:18 +00:00
|
|
|
package repo
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"testing"
|
|
|
|
|
|
|
|
"github.com/stretchr/testify/assert"
|
2024-01-04 17:55:26 +00:00
|
|
|
"github.com/stretchr/testify/require"
|
2022-08-31 03:21:18 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
func Test_Group_Create(t *testing.T) {
|
2022-10-07 02:54:09 +00:00
|
|
|
g, err := tRepos.Groups.GroupCreate(context.Background(), "test")
|
2022-08-31 03:21:18 +00:00
|
|
|
|
2024-01-04 17:55:26 +00:00
|
|
|
require.NoError(t, err)
|
2022-08-31 03:21:18 +00:00
|
|
|
assert.Equal(t, "test", g.Name)
|
|
|
|
|
|
|
|
// Get by ID
|
2022-10-07 02:54:09 +00:00
|
|
|
foundGroup, err := tRepos.Groups.GroupByID(context.Background(), g.ID)
|
2024-01-04 17:55:26 +00:00
|
|
|
require.NoError(t, err)
|
2022-08-31 03:21:18 +00:00
|
|
|
assert.Equal(t, g.ID, foundGroup.ID)
|
|
|
|
}
|
2022-10-15 20:15:55 +00:00
|
|
|
|
|
|
|
func Test_Group_Update(t *testing.T) {
|
|
|
|
g, err := tRepos.Groups.GroupCreate(context.Background(), "test")
|
2024-01-04 17:55:26 +00:00
|
|
|
require.NoError(t, err)
|
2022-10-15 20:15:55 +00:00
|
|
|
|
|
|
|
g, err = tRepos.Groups.GroupUpdate(context.Background(), g.ID, GroupUpdate{
|
|
|
|
Name: "test2",
|
|
|
|
Currency: "eur",
|
|
|
|
})
|
2024-01-04 17:55:26 +00:00
|
|
|
require.NoError(t, err)
|
2022-10-15 20:15:55 +00:00
|
|
|
assert.Equal(t, "test2", g.Name)
|
2022-10-30 04:05:38 +00:00
|
|
|
assert.Equal(t, "EUR", g.Currency)
|
2022-10-15 20:15:55 +00:00
|
|
|
}
|
2022-11-01 21:58:05 +00:00
|
|
|
|
|
|
|
func Test_Group_GroupStatistics(t *testing.T) {
|
|
|
|
useItems(t, 20)
|
|
|
|
useLabels(t, 20)
|
|
|
|
|
2022-12-05 21:36:32 +00:00
|
|
|
stats, err := tRepos.Groups.StatsGroup(context.Background(), tGroup.ID)
|
2022-11-01 21:58:05 +00:00
|
|
|
|
2024-01-04 17:55:26 +00:00
|
|
|
require.NoError(t, err)
|
2022-11-01 21:58:05 +00:00
|
|
|
assert.Equal(t, 20, stats.TotalItems)
|
|
|
|
assert.Equal(t, 20, stats.TotalLabels)
|
|
|
|
assert.Equal(t, 1, stats.TotalUsers)
|
|
|
|
assert.Equal(t, 1, stats.TotalLocations)
|
|
|
|
}
|