Class: DecisionAgent::ABTesting::Storage::Adapter
- Inherits:
-
Object
- Object
- DecisionAgent::ABTesting::Storage::Adapter
- Defined in:
- lib/decision_agent/ab_testing/storage/adapter.rb
Overview
Base adapter interface for A/B test persistence
Direct Known Subclasses
Instance Method Summary collapse
-
#delete_test(test_id) ⇒ Boolean
Delete a test and its assignments.
-
#get_assignments(test_id) ⇒ Array<ABTestAssignment>
Get assignments for a test.
-
#get_test(test_id) ⇒ ABTest?
Get an A/B test by ID.
-
#list_tests(status: nil, limit: nil) ⇒ Array<ABTest>
List A/B tests.
-
#save_assignment(assignment) ⇒ ABTestAssignment
Save an assignment.
-
#save_test(test) ⇒ ABTest
Save an A/B test.
-
#update_assignment(assignment_id, attributes) ⇒ ABTestAssignment
Update an assignment.
-
#update_test(test_id, attributes) ⇒ ABTest
Update an A/B test.
Instance Method Details
#delete_test(test_id) ⇒ Boolean
Delete a test and its assignments
63 64 65 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 63 def delete_test(test_id) raise NotImplementedError, "#{self.class} must implement #delete_test" end |
#get_assignments(test_id) ⇒ Array<ABTestAssignment>
Get assignments for a test
56 57 58 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 56 def get_assignments(test_id) raise NotImplementedError, "#{self.class} must implement #get_assignments" end |
#get_test(test_id) ⇒ ABTest?
Get an A/B test by ID
18 19 20 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 18 def get_test(test_id) raise NotImplementedError, "#{self.class} must implement #get_test" end |
#list_tests(status: nil, limit: nil) ⇒ Array<ABTest>
List A/B tests
34 35 36 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 34 def list_tests(status: nil, limit: nil) raise NotImplementedError, "#{self.class} must implement #list_tests" end |
#save_assignment(assignment) ⇒ ABTestAssignment
Save an assignment
41 42 43 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 41 def save_assignment(assignment) raise NotImplementedError, "#{self.class} must implement #save_assignment" end |
#save_test(test) ⇒ ABTest
Save an A/B test
11 12 13 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 11 def save_test(test) raise NotImplementedError, "#{self.class} must implement #save_test" end |
#update_assignment(assignment_id, attributes) ⇒ ABTestAssignment
Update an assignment
49 50 51 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 49 def update_assignment(assignment_id, attributes) raise NotImplementedError, "#{self.class} must implement #update_assignment" end |
#update_test(test_id, attributes) ⇒ ABTest
Update an A/B test
26 27 28 |
# File 'lib/decision_agent/ab_testing/storage/adapter.rb', line 26 def update_test(test_id, attributes) raise NotImplementedError, "#{self.class} must implement #update_test" end |