| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | 
							- package common
 
- import (
 
- 	"testing"
 
- 	"github.com/stretchr/testify/assert"
 
- )
 
- func TestClientsMap(t *testing.T) {
 
- 	m := clientsMap{
 
- 		clients: make(map[string]int),
 
- 	}
 
- 	ip1 := "192.168.1.1"
 
- 	ip2 := "192.168.1.2"
 
- 	m.add(ip1)
 
- 	assert.Equal(t, int32(1), m.getTotal())
 
- 	assert.Equal(t, 1, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 0, m.getTotalFrom(ip2))
 
- 	m.add(ip1)
 
- 	m.add(ip2)
 
- 	assert.Equal(t, int32(3), m.getTotal())
 
- 	assert.Equal(t, 2, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 1, m.getTotalFrom(ip2))
 
- 	m.add(ip1)
 
- 	m.add(ip1)
 
- 	m.add(ip2)
 
- 	assert.Equal(t, int32(6), m.getTotal())
 
- 	assert.Equal(t, 4, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 2, m.getTotalFrom(ip2))
 
- 	m.remove(ip2)
 
- 	assert.Equal(t, int32(5), m.getTotal())
 
- 	assert.Equal(t, 4, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 1, m.getTotalFrom(ip2))
 
- 	m.remove("unknown")
 
- 	assert.Equal(t, int32(5), m.getTotal())
 
- 	assert.Equal(t, 4, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 1, m.getTotalFrom(ip2))
 
- 	m.remove(ip2)
 
- 	assert.Equal(t, int32(4), m.getTotal())
 
- 	assert.Equal(t, 4, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 0, m.getTotalFrom(ip2))
 
- 	m.remove(ip1)
 
- 	m.remove(ip1)
 
- 	m.remove(ip1)
 
- 	assert.Equal(t, int32(1), m.getTotal())
 
- 	assert.Equal(t, 1, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 0, m.getTotalFrom(ip2))
 
- 	m.remove(ip1)
 
- 	assert.Equal(t, int32(0), m.getTotal())
 
- 	assert.Equal(t, 0, m.getTotalFrom(ip1))
 
- 	assert.Equal(t, 0, m.getTotalFrom(ip2))
 
- }
 
 
  |