Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6e6ce565 authored by David Zhao's avatar David Zhao Committed by Automerger Merge Worker
Browse files
parents 63b6eeb8 17a91907
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -82,7 +82,10 @@ void TvInput::init() {
        MQDescriptor<int8_t, SynchronizedReadWrite>* out_queue, int32_t in_deviceId,
        int32_t in_streamId) {
    ALOGV("%s", __FUNCTION__);
    // TODO: Implement this
    if (mStreamConfigs.count(in_deviceId) == 0) {
        ALOGW("Device with id %d isn't available", in_deviceId);
        return ::ndk::ScopedAStatus::fromServiceSpecificError(STATUS_INVALID_ARGUMENTS);
    }
    return ::ndk::ScopedAStatus::ok();
}

+0 −1
Original line number Diff line number Diff line
@@ -57,7 +57,6 @@ class TvInput : public BnTvInput {
    ::ndk::ScopedAStatus openStream(int32_t in_deviceId, int32_t in_streamId,
                                    NativeHandle* _aidl_return) override;
    ::ndk::ScopedAStatus closeStream(int32_t in_deviceId, int32_t in_streamId) override;

    void init();

  private:
+47 −3
Original line number Diff line number Diff line
@@ -259,8 +259,11 @@ TEST_P(TvInputAidlTest, OpenAnOpenedStreamsTest) {
        return;
    }
    int32_t device_id = stream_config_.keyAt(indices[0]);
    int32_t stream_id = stream_config_.valueAt(indices[0])[0].streamId;

    vector<TvStreamConfig> streamConfigs = stream_config_.valueAt(indices[0]);
    if (streamConfigs.empty()) {
        return;
    }
    int32_t stream_id = streamConfigs[0].streamId;
    NativeHandle handle;

    ALOGD("OpenAnOpenedStreamsTest: open stream, device_id=%d, stream_id=%d", device_id, stream_id);
@@ -291,7 +294,11 @@ TEST_P(TvInputAidlTest, CloseStreamBeforeOpenTest) {
        return;
    }
    int32_t device_id = stream_config_.keyAt(indices[0]);
    int32_t stream_id = stream_config_.valueAt(indices[0])[0].streamId;
    vector<TvStreamConfig> streamConfigs = stream_config_.valueAt(indices[0]);
    if (streamConfigs.empty()) {
        return;
    }
    int32_t stream_id = streamConfigs[0].streamId;

    ALOGD("CloseStreamBeforeOpenTest: close stream, device_id=%d, stream_id=%d", device_id,
          stream_id);
@@ -299,6 +306,43 @@ TEST_P(TvInputAidlTest, CloseStreamBeforeOpenTest) {
                ITvInput::STATUS_INVALID_STATE);
}

TEST_P(TvInputAidlTest, SetTvMessageEnabledTest) {
    unique_lock<mutex> lock(mutex_);

    updateAllStreamConfigurations();
    vector<size_t> indices = getConfigIndices();
    if (indices.empty()) {
        return;
    }
    int32_t device_id = stream_config_.keyAt(indices[0]);
    vector<TvStreamConfig> streamConfigs = stream_config_.valueAt(indices[0]);
    if (streamConfigs.empty()) {
        return;
    }
    int32_t stream_id = streamConfigs[0].streamId;
    ALOGD("SetTvMessageEnabledTest: device_id=%d, stream_id=%d", device_id, stream_id);
    tv_input_->setTvMessageEnabled(device_id, stream_id, TvMessageEventType::WATERMARK, true);
}

TEST_P(TvInputAidlTest, GetTvMessageQueueTest) {
    unique_lock<mutex> lock(mutex_);

    updateAllStreamConfigurations();
    vector<size_t> indices = getConfigIndices();
    if (indices.empty()) {
        return;
    }
    int32_t device_id = stream_config_.keyAt(indices[0]);
    vector<TvStreamConfig> streamConfigs = stream_config_.valueAt(indices[0]);
    if (streamConfigs.empty()) {
        return;
    }
    int32_t stream_id = streamConfigs[0].streamId;
    ALOGD("GetTvMessageQueueTest: device_id=%d, stream_id=%d", device_id, stream_id);
    MQDescriptor<int8_t, SynchronizedReadWrite> queue;
    tv_input_->getTvMessageQueueDesc(&queue, device_id, stream_id);
}

INSTANTIATE_TEST_SUITE_P(PerInstance, TvInputAidlTest,
                         testing::ValuesIn(android::getAidlHalInstanceNames(ITvInput::descriptor)),
                         android::PrintInstanceNameToString);
+1 −0
Original line number Diff line number Diff line
@@ -37,6 +37,7 @@ using namespace aidl::android::hardware::tv::input;
using namespace std;
using ::aidl::android::hardware::common::NativeHandle;
using ::aidl::android::hardware::common::fmq::MQDescriptor;
using ::aidl::android::hardware::common::fmq::SynchronizedReadWrite;
using ::android::AidlMessageQueue;

#define WAIT_FOR_EVENT_TIMEOUT 5