So I was playing around with /blockdata and /testforblock with Jukeboxes, I wondered what would happen if I changed the block data to something else. So I tried Prismarine Shards, and they successful where ejected and the music would stop at the same time. So I tried again with Air and Piston Heads, and some strange things happened. Nothing was able to be ejected, and thus the music disc would never stop playing. Even when I broke the Jukebox, nothing "came out" and the disc kept playing.
My solution was to insert a disc into a jukebox in the exact same spot as where the original disc was played, then eject that disc.
What I expected to happen was...:
The music disc stopped playing.
What actually happened was...:
The disc kept playing.
Steps to Reproduce:
1. Place a jukebox.
2. Insert a disc.
3. Run the command
/blockdata x y z {RecordItem:{id:"minecraft:air",Count:1b,Damage:0s}}
or /blockdata x y z {RecordItem:{id:"minecraft:piston_head",Count:1b,Damage:0s}}
but change the x y z to the coordinates of the juke box.
4. Attempt to eject something from the jukebox.
5. Break the jukebox.
6. Observe the disc is still playing.
Does this only "works as intended" because technical blocks were used?