mirror of
				https://gitea.invidious.io/iv-org/shard-kemal.git
				synced 2024-08-15 00:53:36 +00:00 
			
		
		
		
	Session also supports arrays
This commit is contained in:
		
							parent
							
								
									8c600cb26e
								
							
						
					
					
						commit
						a8e53fb94e
					
				
					 2 changed files with 34 additions and 1 deletions
				
			
		|  | @ -53,4 +53,37 @@ describe "Session" do | ||||||
|     Kemal::Sessions.prune! |     Kemal::Sessions.prune! | ||||||
|     s.size.should eq(0) |     s.size.should eq(0) | ||||||
|   end |   end | ||||||
|  | 
 | ||||||
|  |   it "supports many types" do | ||||||
|  |     who = nil | ||||||
|  |     age = nil | ||||||
|  |     awesome = nil | ||||||
|  |     velocity = nil | ||||||
|  |     arr = nil | ||||||
|  |     get "/" do |env| | ||||||
|  |       sess = env.session | ||||||
|  |       who = sess["who"]? | ||||||
|  |       age = sess["age"]? | ||||||
|  |       velocity = sess["velocity"]? | ||||||
|  |       awesome = sess["awesome"]? | ||||||
|  |       arr = sess["arr"]? | ||||||
|  |       sess["who"] = "Kemal" | ||||||
|  |       sess["age"] = 2016 | ||||||
|  |       sess["velocity"] = 9999.9 | ||||||
|  |       sess["awesome"] = true | ||||||
|  |       sess["arr"] = [1, "Serdar", true, 90000.0] | ||||||
|  |       "Hello" | ||||||
|  |     end | ||||||
|  | 
 | ||||||
|  |     request = HTTP::Request.new("GET", "/") | ||||||
|  |     response = call_request_on_app(request) | ||||||
|  |     request = HTTP::Request.new("GET", "/", response.headers) | ||||||
|  |     response = call_request_on_app(request) | ||||||
|  | 
 | ||||||
|  |     who.should eq "Kemal" | ||||||
|  |     age.should eq 2016 | ||||||
|  |     velocity.should eq 9999.9 | ||||||
|  |     awesome.should eq true | ||||||
|  |     arr.should eq [1, "Serdar", true, 90000.0] | ||||||
|  |   end | ||||||
| end | end | ||||||
|  |  | ||||||
|  | @ -16,7 +16,7 @@ module Kemal | ||||||
|   # Sessions are pruned hourly after 48 hours of inactivity. |   # Sessions are pruned hourly after 48 hours of inactivity. | ||||||
|   class Sessions |   class Sessions | ||||||
|     # Session Types are String, Integer, Float and Boolean |     # Session Types are String, Integer, Float and Boolean | ||||||
|     alias SessionTypes = String | Int64 | Float64 | Bool |     alias SessionTypes = String | Int32 | Float64 | Bool | Array(String | Int32 | Float64 | Bool) | ||||||
| 
 | 
 | ||||||
|     # In-memory, ephemeral datastore only. |     # In-memory, ephemeral datastore only. | ||||||
|     # |     # | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue