summaryrefslogtreecommitdiffhomepage
path: root/spec/dispatch/adapter/interface_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/dispatch/adapter/interface_spec.rb')
-rw-r--r--spec/dispatch/adapter/interface_spec.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/spec/dispatch/adapter/interface_spec.rb b/spec/dispatch/adapter/interface_spec.rb
new file mode 100644
index 0000000..a62ed81
--- /dev/null
+++ b/spec/dispatch/adapter/interface_spec.rb
@@ -0,0 +1,33 @@
+# frozen_string_literal: true
+
+RSpec.describe Dispatch::Adapter::Interface do
+ it "has a version number" do
+ expect(Dispatch::Adapter::Interface::VERSION).not_to be_nil
+ end
+
+ it "exposes the Base class" do
+ expect(Dispatch::Adapter::Base).to be_a(Class)
+ end
+
+ it "exposes error classes" do
+ expect(Dispatch::Adapter::Error).to be < StandardError
+ expect(Dispatch::Adapter::AuthenticationError).to be < Dispatch::Adapter::Error
+ expect(Dispatch::Adapter::RateLimitError).to be < Dispatch::Adapter::Error
+ expect(Dispatch::Adapter::ServerError).to be < Dispatch::Adapter::Error
+ expect(Dispatch::Adapter::RequestError).to be < Dispatch::Adapter::Error
+ expect(Dispatch::Adapter::ConnectionError).to be < Dispatch::Adapter::Error
+ end
+
+ it "exposes data structs" do
+ expect(Dispatch::Adapter::Message).to be_a(Class)
+ expect(Dispatch::Adapter::TextBlock).to be_a(Class)
+ expect(Dispatch::Adapter::ImageBlock).to be_a(Class)
+ expect(Dispatch::Adapter::ToolUseBlock).to be_a(Class)
+ expect(Dispatch::Adapter::ToolResultBlock).to be_a(Class)
+ expect(Dispatch::Adapter::ToolDefinition).to be_a(Class)
+ expect(Dispatch::Adapter::Response).to be_a(Class)
+ expect(Dispatch::Adapter::Usage).to be_a(Class)
+ expect(Dispatch::Adapter::StreamDelta).to be_a(Class)
+ expect(Dispatch::Adapter::ModelInfo).to be_a(Class)
+ end
+end