@@ -56,16 +56,8 @@ func TestBasicSessionStore(t *testing.T) {
56
56
require .NoError (t , db .CreateSession (s2 ))
57
57
require .NoError (t , db .CreateSession (s3 ))
58
58
59
- // Check that all sessions are returned in ListSessions.
60
- sessions , err := db .ListSessions (nil )
61
- require .NoError (t , err )
62
- require .Equal (t , 3 , len (sessions ))
63
- assertEqualSessions (t , s1 , sessions [0 ])
64
- assertEqualSessions (t , s2 , sessions [1 ])
65
- assertEqualSessions (t , s3 , sessions [2 ])
66
-
67
59
// Test the ListSessionsByType method.
68
- sessions , err = db .ListSessionsByType (TypeMacaroonAdmin )
60
+ sessions , err : = db .ListSessionsByType (TypeMacaroonAdmin )
69
61
require .NoError (t , err )
70
62
require .Equal (t , 2 , len (sessions ))
71
63
assertEqualSessions (t , s1 , sessions [0 ])
@@ -115,9 +107,39 @@ func TestBasicSessionStore(t *testing.T) {
115
107
116
108
// Now revoke the session and assert that the state is revoked.
117
109
require .NoError (t , db .RevokeSession (s1 .LocalPublicKey ))
118
- session1 , err = db .GetSession (s1 .LocalPublicKey )
110
+ s1 , err = db .GetSession (s1 .LocalPublicKey )
119
111
require .NoError (t , err )
120
- require .Equal (t , session1 .State , StateRevoked )
112
+ require .Equal (t , s1 .State , StateRevoked )
113
+
114
+ // Test that ListSessions by certain states works.
115
+ sessions , err = db .ListSessions (StateRevoked )
116
+ require .NoError (t , err )
117
+ require .Equal (t , 1 , len (sessions ))
118
+ assertEqualSessions (t , s1 , sessions [0 ])
119
+
120
+ sessions , err = db .ListSessions (StateCreated )
121
+ require .NoError (t , err )
122
+ require .Equal (t , 2 , len (sessions ))
123
+ assertEqualSessions (t , s2 , sessions [0 ])
124
+ assertEqualSessions (t , s3 , sessions [1 ])
125
+
126
+ sessions , err = db .ListSessions (StateCreated , StateRevoked )
127
+ require .NoError (t , err )
128
+ require .Equal (t , 3 , len (sessions ))
129
+ assertEqualSessions (t , s1 , sessions [0 ])
130
+ assertEqualSessions (t , s2 , sessions [1 ])
131
+ assertEqualSessions (t , s3 , sessions [2 ])
132
+
133
+ sessions , err = db .ListSessions ()
134
+ require .NoError (t , err )
135
+ require .Equal (t , 3 , len (sessions ))
136
+ assertEqualSessions (t , s1 , sessions [0 ])
137
+ assertEqualSessions (t , s2 , sessions [1 ])
138
+ assertEqualSessions (t , s3 , sessions [2 ])
139
+
140
+ sessions , err = db .ListSessions (StateInUse )
141
+ require .NoError (t , err )
142
+ require .Empty (t , sessions )
121
143
}
122
144
123
145
// TestLinkingSessions tests that session linking works as expected.
0 commit comments