It varies according to dose. In a urine test, you can test positive for cannabis for up to ~21 days following consumption depending on the dosage. Other factors that can affect the duration of your high or the prevalence of cannabis in your system include: level of hydration, how quickly your body processes THC, and frequency of use.