At least the eUpgrades are charged based on direct miles to your destination, so that yyt-yyz-bda (which earns 2449 miles) costs only 6 credits (because yyt-bda is only 1225 miles).
As opposed to Aeroplan, which often wants to charge me 25K miles to fly yyt-yul (a 15K short haul) because the only routings they make available are via yyz or yow...