Skip to content

Commit 2ef720f

Browse files
test: migrate test suite to gem structure
- Copy test files from source (~/github/second-brain/tests/reclaim/) - Create test/test_helper.rb with proper gem loading - Update test/test_reclaim.rb to use gem structure (remove old require paths) - Fix CLI unused variable warnings (NotFoundError rescues) - Update CLI test to match new command name ('reclaim' vs 'ruby script.rb') Test results: - 45 runs, 148 assertions, 0 failures, 0 errors - 7 skips (integration tests require RECLAIM_TOKEN) - All unit tests passing: Task, Client, Utils, CLI - Test coverage maintained from original implementation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
1 parent 368c506 commit 2ef720f

File tree

3 files changed

+949
-4
lines changed

3 files changed

+949
-4
lines changed

lib/reclaim/cli.rb

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -251,15 +251,15 @@ def self.get_task(client, task_id)
251251
puts "Category: #{task.event_category}" if task.event_category
252252
puts "Color: #{task.event_color}" if task.event_color
253253
puts "Notes: #{task.notes}" if task.notes && !task.notes.empty?
254-
rescue NotFoundError => e
254+
rescue NotFoundError
255255
puts "✗ Task #{task_id} not found"
256256
exit(1)
257257
end
258258

259259
def self.update_task(client, task_id, options)
260260
task = client.update_task(task_id, **options)
261261
puts "✓ Updated task: #{task.title}"
262-
rescue NotFoundError => e
262+
rescue NotFoundError
263263
puts "✗ Task #{task_id} not found"
264264
exit(1)
265265
rescue InvalidRecordError => e
@@ -270,15 +270,15 @@ def self.update_task(client, task_id, options)
270270
def self.complete_task(client, task_id)
271271
task = client.complete_task(task_id)
272272
puts "✓ Completed task: #{task.title}"
273-
rescue NotFoundError => e
273+
rescue NotFoundError
274274
puts "✗ Task #{task_id} not found"
275275
exit(1)
276276
end
277277

278278
def self.delete_task(client, task_id)
279279
client.delete_task(task_id)
280280
puts "✓ Deleted task: #{task_id}"
281-
rescue NotFoundError => e
281+
rescue NotFoundError
282282
puts "✗ Task #{task_id} not found"
283283
exit(1)
284284
end

test/test_helper.rb

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# frozen_string_literal: true
2+
3+
$LOAD_PATH.unshift File.expand_path('../lib', __dir__)
4+
require 'reclaim'
5+
6+
require 'minitest/autorun'
7+
require 'minitest/pride'
8+
9+
# Simple test helper for Reclaim integration tests
10+
module ReclaimTestHelper
11+
# Simple resource tracking for cleanup
12+
@@created_task_ids = []
13+
14+
def self.track_task(task_id)
15+
@@created_task_ids << task_id
16+
end
17+
18+
def self.cleanup_all(client)
19+
@@created_task_ids.reverse_each do |task_id|
20+
client.delete_task(task_id)
21+
rescue StandardError => e
22+
puts "Warning: Failed to cleanup task #{task_id}: #{e.message}"
23+
end
24+
@@created_task_ids.clear
25+
end
26+
27+
def self.skip_integration_tests?
28+
ENV['SKIP_INTEGRATION_TESTS'] == 'true'
29+
end
30+
end

0 commit comments

Comments
 (0)