[YouTube] Add fallback to system playlists when fetching age-restricted stream channel tabs directly
- [x] I carefully read the contribution guidelines and agree to them.
- [ ] I have tested the API against NewPipe.
This PR adds support of the channel tabs fallback to system YouTube upload playlists when fetching directly Videos, Shorts or Live tabs of an age-restricted channel.
It makes the data returned in this case consistent as the ones returned when getting the data of tabs got from a YouTube ChannelExtractor instance.
If other tabs are requested directly, no items will be returned, like before this PR.
I updated the corresponding Shorts tab test, which fetches now directly the tabs, and added a Videos tab test which do so too.
I also kept the test using the original behavior of fetching the Videos channel tab from the channel tabs got by a ChannelExtractor instance, in order to ensure both approaches work properly.
As the Videos tab tests expect the same data, I put the common code of these two test classes inside an abstract test class.
I also removed unneeded test method overrides in YoutubeChannelTabExtractorTest, and updated the channel tabs tests' mocks.
any reason why this PR was not merged?