Character B being a player and A being an NPC is the usual case for this happening, and when it has happened it's always caught me off guard.
The reverse is something that I feel could occur in, perhaps, a skill challenge or something... But I haven't actually seen it occur.
If a player wants to roll a die against another player, I rule that the other player is the DM for that roll. Basically "It's between you two, so it's your problem to figure out." This hasn't happened in any of my games though, luckily. Players getting along with one another is a good thing. So no, both being players is not in the question.
And if they're both NPCs, then why am I rolling at the table? (Hey, who wants to watch a puppet show that doesn't involve your characters?)
-----
Generally, when it's happened, I've always had an internal reaction of "Huh? Why would you find that not to be believable? Are you rolling just because you want to throw in a D20 roll?", followed by "Well, if I don't roll anything and just say "You believe they're telling the truth", the player isn't likely to feel like that's fun."
Statements on the level of: "Some of the town guards like to stop at the inn for a drink after their shift."
Like... Why are you even rolling insight on that?
So having a mechanics-level response ready for the roll will allow me to put more of my brain into "What does the player actually need right now? What's not being fun enough?"
-----
So your suggestion is basically to take out the diplomacy roll that I was having assist that insight against the DC. I really only threw that in there so the player didn't get their answer before the result comes, because if it IS a lie, then A rolls bluff, so not hearing a die hit the table behind the screen would give a meta-answer... But really, that's fine since it's almost always stuff the player shouldn't really need to roll insight on... So that makes sense. Thanks.