| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- package dto
- import (
- "testing"
- "time"
- "github.com/Wei-Shaw/sub2api/internal/service"
- "github.com/stretchr/testify/require"
- )
- func TestAPIKeyFromService_MapsLastUsedAt(t *testing.T) {
- lastUsed := time.Now().UTC().Truncate(time.Second)
- lastUsedIP := "203.0.113.10"
- src := &service.APIKey{
- ID: 1,
- UserID: 2,
- Key: "sk-map-last-used",
- Name: "Mapper",
- Status: service.StatusActive,
- LastUsedAt: &lastUsed,
- LastUsedIP: &lastUsedIP,
- CurrentConcurrency: 3,
- }
- out := APIKeyFromService(src)
- require.NotNil(t, out)
- require.NotNil(t, out.LastUsedAt)
- require.WithinDuration(t, lastUsed, *out.LastUsedAt, time.Second)
- require.NotNil(t, out.LastUsedIP)
- require.Equal(t, lastUsedIP, *out.LastUsedIP)
- require.Equal(t, 3, out.CurrentConcurrency)
- }
- func TestAPIKeyFromService_MapsNilLastUsedAt(t *testing.T) {
- src := &service.APIKey{
- ID: 1,
- UserID: 2,
- Key: "sk-map-last-used-nil",
- Name: "MapperNil",
- Status: service.StatusActive,
- }
- out := APIKeyFromService(src)
- require.NotNil(t, out)
- require.Nil(t, out.LastUsedAt)
- require.Nil(t, out.LastUsedIP)
- }
|