Delete unused test class StreamSource

Bug: webrtc:6424
Change-Id: Icfb48b997bac71616c67c478f76ab6475a4f92fb
Reviewed-on: https://webrtc-review.googlesource.com/c/106921
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25265}
This commit is contained in:
Niels Möller 2018-10-18 15:34:00 +02:00 committed by Commit Bot
parent 2461c319ed
commit 82d432980c
2 changed files with 0 additions and 153 deletions

View File

@ -14,75 +14,7 @@ namespace webrtc {
namespace testing {
StreamSink::StreamSink() = default;
StreamSink::~StreamSink() = default;
StreamSource::StreamSource() {
Clear();
}
StreamSource::~StreamSource() = default;
StreamState StreamSource::GetState() const {
return state_;
}
StreamResult StreamSource::Read(void* buffer,
size_t buffer_len,
size_t* read,
int* error) {
if (SS_CLOSED == state_) {
if (error)
*error = -1;
return SR_ERROR;
}
if ((SS_OPENING == state_) || (readable_data_.size() <= read_block_)) {
return SR_BLOCK;
}
size_t count = std::min(buffer_len, readable_data_.size() - read_block_);
memcpy(buffer, &readable_data_[0], count);
size_t new_size = readable_data_.size() - count;
// Avoid undefined access beyond the last element of the vector.
// This only happens when new_size is 0.
if (count < readable_data_.size()) {
memmove(&readable_data_[0], &readable_data_[count], new_size);
}
readable_data_.resize(new_size);
if (read)
*read = count;
return SR_SUCCESS;
}
StreamResult StreamSource::Write(const void* data,
size_t data_len,
size_t* written,
int* error) {
if (SS_CLOSED == state_) {
if (error)
*error = -1;
return SR_ERROR;
}
if (SS_OPENING == state_) {
return SR_BLOCK;
}
if (SIZE_UNKNOWN != write_block_) {
if (written_data_.size() >= write_block_) {
return SR_BLOCK;
}
if (data_len > (write_block_ - written_data_.size())) {
data_len = write_block_ - written_data_.size();
}
}
if (written)
*written = data_len;
const char* cdata = static_cast<const char*>(data);
written_data_.insert(written_data_.end(), cdata, cdata + data_len);
return SR_SUCCESS;
}
void StreamSource::Close() {
state_ = SS_CLOSED;
}
} // namespace testing
} // namespace webrtc

View File

@ -136,91 +136,6 @@ class StreamSink : public sigslot::has_slots<> {
EventMap events_;
};
///////////////////////////////////////////////////////////////////////////////
// StreamSource - Implements stream interface and simulates asynchronous
// events on the stream, without a network. Also buffers written data.
///////////////////////////////////////////////////////////////////////////////
class StreamSource : public StreamInterface {
public:
StreamSource();
~StreamSource() override;
void Clear() {
readable_data_.clear();
written_data_.clear();
state_ = SS_CLOSED;
read_block_ = 0;
write_block_ = SIZE_UNKNOWN;
}
void QueueString(const char* data) { QueueData(data, strlen(data)); }
#if defined(__GNUC__)
// Note: Implicit |this| argument counts as the first argument.
__attribute__((__format__(__printf__, 2, 3)))
#endif
void
QueueStringF(const char* format, ...) {
va_list args;
va_start(args, format);
char buffer[1024];
size_t len = vsnprintf(buffer, sizeof(buffer), format, args);
RTC_CHECK(len < sizeof(buffer) - 1);
va_end(args);
QueueData(buffer, len);
}
void QueueData(const char* data, size_t len) {
readable_data_.insert(readable_data_.end(), data, data + len);
if ((SS_OPEN == state_) && (readable_data_.size() == len)) {
SignalEvent(this, SE_READ, 0);
}
}
std::string ReadData() {
std::string data;
// avoid accessing written_data_[0] if it is undefined
if (written_data_.size() > 0) {
data.insert(0, &written_data_[0], written_data_.size());
}
written_data_.clear();
return data;
}
void SetState(StreamState state) {
int events = 0;
if ((SS_OPENING == state_) && (SS_OPEN == state)) {
events |= SE_OPEN;
if (!readable_data_.empty()) {
events |= SE_READ;
}
} else if ((SS_CLOSED != state_) && (SS_CLOSED == state)) {
events |= SE_CLOSE;
}
state_ = state;
if (events) {
SignalEvent(this, events, 0);
}
}
// Will cause Read to block when there are pos bytes in the read queue.
void SetReadBlock(size_t pos) { read_block_ = pos; }
// Will cause Write to block when there are pos bytes in the write queue.
void SetWriteBlock(size_t pos) { write_block_ = pos; }
StreamState GetState() const override;
StreamResult Read(void* buffer,
size_t buffer_len,
size_t* read,
int* error) override;
StreamResult Write(const void* data,
size_t data_len,
size_t* written,
int* error) override;
void Close() override;
private:
typedef std::vector<char> Buffer;
Buffer readable_data_, written_data_;
StreamState state_;
size_t read_block_, write_block_;
};
} // namespace testing
} // namespace webrtc