| Server IP : 157.230.181.24 / Your IP : 216.73.216.56 Web Server : Apache/2.4.58 (Ubuntu) System : Linux conductive 6.8.0-117-generic #117-Ubuntu SMP PREEMPT_DYNAMIC Tue May 5 19:26:24 UTC 2026 x86_64 User : ( 1000) PHP Version : 8.3.31 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/vhosts/ceagon/open-oscar-server/state/ |
Upload File : |
package state
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestWebAPISession_GetStoredIMs(t *testing.T) {
sess := &WebAPISession{}
sess.AddStoredIM("buddy1", "me", "hello", "msg-1", 100)
sess.AddStoredIM("buddy1", "buddy1", "hi back", "msg-2", 200)
sess.AddStoredIM("buddy2", "buddy2", "other chat", "msg-3", 150)
msgs := sess.GetStoredIMs(StoredIMQuery{
PartnerAimID: "buddy1",
SortOrder: "descendingDate",
NToGet: 10,
})
assert.Len(t, msgs, 2)
assert.Equal(t, "msg-2", msgs[0]["msgId"])
assert.Equal(t, float64(200), msgs[0]["date"])
assert.Equal(t, "hello", msgs[1]["message"])
msgs = sess.GetStoredIMs(StoredIMQuery{
PartnerAimID: "buddy1",
SortOrder: "ascendingDate",
StartTime: 150,
EndTime: 250,
})
assert.Len(t, msgs, 1)
assert.Equal(t, "msg-2", msgs[0]["msgId"])
}
func TestWebAPISession_GetStoredIMs_NormalizesPartner(t *testing.T) {
sess := &WebAPISession{}
sess.AddStoredIM("Mike Kelly", "mikekelly", "hello", "msg-1", 100)
// The web client queries history by the normalized aimId, never by the
// display screen name it was stored under.
msgs := sess.GetStoredIMs(StoredIMQuery{
PartnerAimID: "mikekelly",
NToGet: 10,
})
require.Len(t, msgs, 1)
assert.Equal(t, "msg-1", msgs[0]["msgId"])
}