You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: pick_open_auction_winner.rs
    path of file: ./repos/joystream/runtime-modules/content/src/tests/nft
    
    the code of the file until where you have to start completion: #![cfg(test)]
use crate::tests::fixtures::*;
use crate::tests::mock::*;
use crate::*;
use frame_support::{assert_err, assert_noop, assert_ok};

const NEXT_BID_OFFSET: u64 = 10;
const AUCTION_DURATION: u64 = 10;

#[test]
fn pick_open_auction_winner() {
    with_default_mock_builder(|| {
        let video_id = NextVideoId::<Test>::get();

        ContentTest::default().with
    
fn pick_open_auction_ok_with_channel_owner_correctly_credited() {
    with_default_mock_builder(|| {
        increase_account_balance_helper(SECOND_MEMBER_ACCOUNT_ID, ed() + DEFAULT_NFT_PRICE);
        let platform_fee = Content::platform_fee_percentage().mul_floor(DEFAULT_NFT_PRICE);
        ContentTest::default().with_video().setup();
        IssueNftFixture::default()
            .with_royalty(Perbill::from_percent(1))
            .call_and_assert(Ok(()));
        StartOpenAuctionFixture::default().call_and_assert(Ok(()));
        MakeOpenAuctionBidFixture::default()
            .with_bid(DEFAULT_NFT_PRICE)
            .call_and_assert(Ok(()));

        assert_ok!(Content::pick_open_auction_winner(
            Origin::signed(DEFAULT_MEMBER_ACCOUNT_ID),
            ContentActor::Member(DEFAULT_MEMBER_ID),
            VideoId::one(),
            SECOND_MEMBER_ID,
            DEFAULT_NFT_PRICE
        ));

        // net revenue for creator owner : NFT PRICE - FEE
        assert_eq!(
            channel_reward_account_balance(ChannelId::one()),
            DEFAULT_CHANNEL_STATE_BLOAT_BOND + DEFAULT_NFT_PRICE - platform_fee
        );
    })
}