We carry out a priori tests of linear and nonlinear eddy viscosity models using direct numerical simulation (DNS) data of square duct flow up to friction Reynolds number {text {Re}}_tau =1055. We focus on the ability of eddy viscosity models to reproduce the anisotropic Reynolds stress tensor components a_{ij} responsible for turbulent secondary flows, namely the normal stress a_{22} and the secondary shear stress a_{23}. A priori tests on constitutive relations for a_{ij} are performed using the tensor polynomial expansion of Pope (J Fluid Mech 72:331–340, 1975), whereby one tensor base corresponds to the linear eddy viscosity hypothesis and five bases return exact representation of a_{ij}. We show that the bases subset has an important effect on the accuracy of the stresses and the best results are obtained when using tensor bases which contain both the strain rate and the rotation rate. Models performance is quantified using the mean correlation coefficient with respect to DNS data {widetilde{C}}_{ij}, which shows that the linear eddy viscosity hypothesis always returns very accurate values of the primary shear stress a_{12} ({widetilde{C}}_{12}>0.99), whereas two bases are sufficient to achieve good accuracy of the normal stress and secondary shear stress ({widetilde{C}}_{22}=0.911, {widetilde{C}}_{23}=0.743). Unfortunately, RANS models rely on additional assumptions and a priori analysis carried out on popular models, including k–varepsilon and v^2–f, reveals that none of them achieves ideal accuracy. The only model based on Pope’s expansion which approaches ideal performance is the quadratic correction of Spalart (Int J Heat Fluid Flow 21:252–263, 2000), which has similar accuracy to models using four or more tensor bases. Nevertheless, the best results are obtained when using the linear correction to the v^2–f model developed by Pecnik and Iaccarino (AIAA Paper 2008-3852, 2008), although this is not built on the canonical tensor polynomial as the other models.