Skip to content

winterbaume-kinesis

Kinesis service implementation for winterbaume.

Coverage

MetricValue
ServiceKinesis
AWS modelkinesis
ProtocolawsJson1.1
winterbaume coverage38/39 operations (97.4%)
stubs (routed, returns empty/default)0/39 operations (0.0%)
moto coverage31/39 operations (79.5%)
floci coverage0/39 operations (0.0%)
kumo coverage9/39 operations (23.1%)
Coverage report date2026-05-13

Server-mode usage

Start winterbaume-server and point the AWS CLI at it:

sh
cargo run -p winterbaume-server -- --host 127.0.0.1 --port 5555
sh
export AWS_ENDPOINT_URL=http://localhost:5555
aws kinesis list-streams

Example

rust
use aws_sdk_kinesis::config::BehaviorVersion;
use winterbaume_core::MockAws;
use winterbaume_kinesis::KinesisService;

#[tokio::main]
async fn main() {
    let mock = MockAws::builder()
        .with_service(KinesisService::new())
        .build();

    let config = aws_config::defaults(BehaviorVersion::latest())
        .http_client(mock.http_client())
        .credentials_provider(mock.credentials_provider())
        .region(aws_sdk_kinesis::config::Region::new("us-east-1"))
        .load()
        .await;

    let client = aws_sdk_kinesis::Client::new(&config);

    let resp = client
        .list_streams()
        .send()
        .await
        .expect("list_streams should succeed");
    println!("Kinesis streams: {}", resp.stream_names().len());
}

Implemented APIs (38)

  • AddTagsToStream
  • CreateStream
  • DecreaseStreamRetentionPeriod
  • DeleteResourcePolicy
  • DeleteStream
  • DeregisterStreamConsumer
  • DescribeAccountSettings
  • DescribeLimits
  • DescribeStream
  • DescribeStreamConsumer
  • DescribeStreamSummary
  • DisableEnhancedMonitoring
  • EnableEnhancedMonitoring
  • GetRecords
  • GetResourcePolicy
  • GetShardIterator
  • IncreaseStreamRetentionPeriod
  • ListShards
  • ListStreamConsumers
  • ListStreams
  • ListTagsForResource
  • ListTagsForStream
  • MergeShards
  • PutRecord
  • PutRecords
  • PutResourcePolicy
  • RegisterStreamConsumer
  • RemoveTagsFromStream
  • SplitShard
  • StartStreamEncryption
  • StopStreamEncryption
  • TagResource
  • UntagResource
  • UpdateAccountSettings
  • UpdateMaxRecordSize
  • UpdateShardCount
  • UpdateStreamMode
  • UpdateStreamWarmThroughput
Not yet implemented APIs (1)
  • SubscribeToShard

Released under the Apache-2.0 License. This project is not affiliated with or endorsed by Amazon Web Services.