package redis_test import ( "context" "os" "testing" "time" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" redispkg "github.com/techxcar/backend/pkg/redis" ) func TestNew_invalidURL(t *testing.T) { _, err := redispkg.New("not-a-valid-url") assert.Error(t, err) } func TestNew_valid(t *testing.T) { url := os.Getenv("TEST_REDIS_URL") if url == "" { t.Skip("TEST_REDIS_URL not set, skipping integration test") } rdb, err := redispkg.New(url) require.NoError(t, err) defer rdb.Close() ctx := context.Background() err = rdb.Client.Set(ctx, "test_key", "test_value", time.Second).Err() assert.NoError(t, err) val, err := rdb.Client.Get(ctx, "test_key").Result() assert.NoError(t, err) assert.Equal(t, "test_value", val) }