Song {
    metadata: Metadata {
        title: Some(
            "Test Song",
        ),
        subtitles: [],
        artists: [
            "Someone Famous",
        ],
        composers: [
            "J.S. Bach",
        ],
        lyricists: [
            "William Blake",
        ],
        album: Some(
            "Greatest Hits",
        ),
        year: Some(
            "2024",
        ),
        key: Some(
            "Am",
        ),
        tempo: Some(
            "120",
        ),
        time: Some(
            "4/4",
        ),
        capo: Some(
            "3",
        ),
        sort_title: None,
        sort_artist: None,
        arrangers: [],
        copyright: None,
        duration: None,
        tags: [],
        custom: [
            (
                "custom_field",
                "some custom value",
            ),
            (
                "mood",
                "melancholy",
            ),
        ],
    },
    lines: [
        Directive(
            Directive {
                name: "title",
                value: Some(
                    "Test Song",
                ),
                kind: Title,
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "Someone Famous",
                ),
                kind: Meta(
                    "artist",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "Am",
                ),
                kind: Meta(
                    "key",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "J.S. Bach",
                ),
                kind: Meta(
                    "composer",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "William Blake",
                ),
                kind: Meta(
                    "lyricist",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "Greatest Hits",
                ),
                kind: Meta(
                    "album",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "2024",
                ),
                kind: Meta(
                    "year",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "120",
                ),
                kind: Meta(
                    "tempo",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "4/4",
                ),
                kind: Meta(
                    "time",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "3",
                ),
                kind: Meta(
                    "capo",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "some custom value",
                ),
                kind: Meta(
                    "custom_field",
                ),
                selector: None,
            },
        ),
        Directive(
            Directive {
                name: "meta",
                value: Some(
                    "melancholy",
                ),
                kind: Meta(
                    "mood",
                ),
                selector: None,
            },
        ),
        Empty,
        Directive(
            Directive {
                name: "start_of_verse",
                value: None,
                kind: StartOfVerse,
                selector: None,
            },
        ),
        Lyrics(
            LyricsLine {
                segments: [
                    LyricsSegment {
                        chord: Some(
                            Chord {
                                name: "Am",
                                detail: Some(
                                    ChordDetail {
                                        root: A,
                                        root_accidental: None,
                                        quality: Minor,
                                        extension: None,
                                        bass_note: None,
                                    },
                                ),
                                display: None,
                            },
                        ),
                        text: "Hello ",
                        spans: [],
                    },
                    LyricsSegment {
                        chord: Some(
                            Chord {
                                name: "G",
                                detail: Some(
                                    ChordDetail {
                                        root: G,
                                        root_accidental: None,
                                        quality: Major,
                                        extension: None,
                                        bass_note: None,
                                    },
                                ),
                                display: None,
                            },
                        ),
                        text: "world",
                        spans: [],
                    },
                ],
            },
        ),
        Directive(
            Directive {
                name: "end_of_verse",
                value: None,
                kind: EndOfVerse,
                selector: None,
            },
        ),
    ],
}
