equal
deleted
inserted
replaced
40 ****************************************************************************/ |
40 ****************************************************************************/ |
41 |
41 |
42 #include <QtTest/QtTest> |
42 #include <QtTest/QtTest> |
43 #include <QDebug> |
43 #include <QDebug> |
44 |
44 |
45 #include <QtMultimedia/qaudioformat.h> |
45 #include <qaudioformat.h> |
46 |
46 |
47 #include <qaudiocapturesource.h> |
47 #include <qaudiocapturesource.h> |
48 #include <qaudioencodercontrol.h> |
48 #include <qaudioencodercontrol.h> |
49 #include <qmediarecordercontrol.h> |
49 #include <qmediarecordercontrol.h> |
50 #include <qaudioendpointselector.h> |
50 #include <qaudioendpointselector.h> |
99 Q_OBJECT |
99 Q_OBJECT |
100 public: |
100 public: |
101 MockMediaRecorderControl(QObject *parent = 0): |
101 MockMediaRecorderControl(QObject *parent = 0): |
102 QMediaRecorderControl(parent), |
102 QMediaRecorderControl(parent), |
103 m_state(QMediaRecorder::StoppedState), |
103 m_state(QMediaRecorder::StoppedState), |
104 m_position(0) {} |
104 m_position(0), |
|
105 m_muted(false) {} |
105 |
106 |
106 ~MockMediaRecorderControl() {} |
107 ~MockMediaRecorderControl() {} |
107 |
108 |
108 QUrl outputLocation() const { return m_sink; } |
109 QUrl outputLocation() const { return m_sink; } |
109 bool setOutputLocation(const QUrl &sink) { m_sink = sink; return true; } |
110 bool setOutputLocation(const QUrl &sink) { m_sink = sink; return true; } |
110 QMediaRecorder::State state() const { return m_state; } |
111 QMediaRecorder::State state() const { return m_state; } |
111 qint64 duration() const { return m_position; } |
112 qint64 duration() const { return m_position; } |
112 void applySettings() {} |
113 void applySettings() {} |
|
114 bool isMuted() const { return m_muted; } |
113 |
115 |
114 public slots: |
116 public slots: |
115 void record() |
117 void record() |
116 { |
118 { |
117 m_state = QMediaRecorder::RecordingState; |
119 m_state = QMediaRecorder::RecordingState; |
130 m_position=0; |
132 m_position=0; |
131 m_state = QMediaRecorder::StoppedState; |
133 m_state = QMediaRecorder::StoppedState; |
132 emit stateChanged(m_state); |
134 emit stateChanged(m_state); |
133 } |
135 } |
134 |
136 |
|
137 void setMuted(bool muted) |
|
138 { |
|
139 if (m_muted != muted) |
|
140 emit mutedChanged(m_muted = muted); |
|
141 } |
|
142 |
135 public: |
143 public: |
136 QUrl m_sink; |
144 QUrl m_sink; |
137 QMediaRecorder::State m_state; |
145 QMediaRecorder::State m_state; |
138 qint64 m_position; |
146 qint64 m_position; |
|
147 bool m_muted; |
139 }; |
148 }; |
140 |
149 |
141 class MockAudioEndpointSelector : public QAudioEndpointSelector |
150 class MockAudioEndpointSelector : public QAudioEndpointSelector |
142 { |
151 { |
143 Q_OBJECT |
152 Q_OBJECT |
211 delete mockAudioEncoderControl; |
220 delete mockAudioEncoderControl; |
212 delete mockMediaRecorderControl; |
221 delete mockMediaRecorderControl; |
213 delete mockAudioEndpointSelector; |
222 delete mockAudioEndpointSelector; |
214 } |
223 } |
215 |
224 |
216 QMediaControl* control(const char *iid) const |
225 QMediaControl* requestControl(const char *iid) |
217 { |
226 { |
218 if (qstrcmp(iid, QAudioEncoderControl_iid) == 0) |
227 if (qstrcmp(iid, QAudioEncoderControl_iid) == 0) |
219 return mockAudioEncoderControl; |
228 return mockAudioEncoderControl; |
220 |
229 |
221 if (qstrcmp(iid, QMediaRecorderControl_iid) == 0) |
230 if (qstrcmp(iid, QMediaRecorderControl_iid) == 0) |
224 if (hasAudioDeviceControl && qstrcmp(iid, QAudioEndpointSelector_iid) == 0) |
233 if (hasAudioDeviceControl && qstrcmp(iid, QAudioEndpointSelector_iid) == 0) |
225 return mockAudioEndpointSelector; |
234 return mockAudioEndpointSelector; |
226 |
235 |
227 return 0; |
236 return 0; |
228 } |
237 } |
|
238 |
|
239 void releaseControl(QMediaControl*) {} |
229 |
240 |
230 MockAudioEncoderControl *mockAudioEncoderControl; |
241 MockAudioEncoderControl *mockAudioEncoderControl; |
231 MockMediaRecorderControl *mockMediaRecorderControl; |
242 MockMediaRecorderControl *mockMediaRecorderControl; |
232 MockAudioEndpointSelector *mockAudioEndpointSelector; |
243 MockAudioEndpointSelector *mockAudioEndpointSelector; |
233 bool hasAudioDeviceControl; |
244 bool hasAudioDeviceControl; |