| 
									
										
										
										
											2025-05-28 11:45:59 +00:00
										 |  |  | package cmdpacks_test | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import ( | 
					
						
							|  |  |  | 	"testing" | 
					
						
							| 
									
										
										
										
											2025-10-24 06:48:27 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | 	"github.com/stretchr/testify/assert" | 
					
						
							| 
									
										
										
										
											2025-05-28 11:45:59 +00:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func TestModPB_Copy(t *testing.T) { | 
					
						
							|  |  |  | 	t.Run("copy 1", func(t *testing.T) { | 
					
						
							|  |  |  | 		svc := newService(t) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		_, err := svc.CommandController.ExecuteAndWait(t.Context(), ` | 
					
						
							| 
									
										
										
										
											2025-10-24 06:48:27 +00:00
										 |  |  | 			items = @resultset.Items | 
					
						
							|  |  |  | 			skItems = $items | map { |i| $i.sk } | lists:uniq | 
					
						
							| 
									
										
										
										
											2025-05-28 11:45:59 +00:00
										 |  |  | 			pb:copy ($skItems | strs:join "\n") | 
					
						
							|  |  |  | 		`) | 
					
						
							|  |  |  | 		assert.NoError(t, err) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		assert.Equal(t, "111\n222\n131", svc.pasteboard.content) | 
					
						
							|  |  |  | 	}) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	t.Run("copy 2", func(t *testing.T) { | 
					
						
							|  |  |  | 		svc := newService(t) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		_, err := svc.CommandController.ExecuteAndWait(t.Context(), ` | 
					
						
							| 
									
										
										
										
											2025-10-24 06:48:27 +00:00
										 |  |  | 			items = @resultset.Items | 
					
						
							|  |  |  | 			skItems = $items | map { |i| $i.alpha } | filter !nil | lists:uniq | 
					
						
							| 
									
										
										
										
											2025-05-28 11:45:59 +00:00
										 |  |  | 			pb:copy ($skItems | strs:join "\n") | 
					
						
							|  |  |  | 		`) | 
					
						
							|  |  |  | 		assert.NoError(t, err) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 		assert.Equal(t, "This is some value\nThis is another some value", svc.pasteboard.content) | 
					
						
							|  |  |  | 	}) | 
					
						
							|  |  |  | } |