MockHttpServletRequest对于http前台信息的验证

来源:互联网 发布:plc编程小游戏 编辑:程序博客网 时间:2024/05/21 09:01
@RunWith(SpringJUnit4ClassRunner.class)@ContextConfiguration({ "classpath:META-INF/spring/spring-config.xml" })public class BargainTest {    private MockHttpServletRequest request;    private MockHttpServletResponse response;    private MockHttpSession session;    private User user;    private User usernull = null;    private String productno = "tester";    private String addressno = "tester";    private User user_real;    private User user_NoIsNull;    @Autowired    private IBargainOrderService bargainOrderService;    @Rule    public ExpectedException thrown = ExpectedException.none();    @Before    public void setUp() {        request = new MockHttpServletRequest();        request.setCharacterEncoding("UTF-8");        response = new MockHttpServletResponse();        session=new MockHttpSession();        InitUser();    }    public void InitUser() {        user = new User();        user.setUseNo("i am a tester");        user.setUsername("Tester");        user_real=new User();        user_real.setUseNo("51fb5f2c23ac4c15ad9d6c47fa6c636a");        user_NoIsNull=new User();    }    @Test    public void ParametersAreNull() {        // 当参数全部为空            //request.addParameter("user", "usernull");            request.setSession(session);            session.setAttribute("user", usernull);            JsonResponse response = createOrder(request, null, null, null);            assertTrue(response.getStatus().contains("erro"));    }    @Test    public void UserNotNull() {        // 当user not null        //request.addParameter("user", "user");        request.setSession(session);        session.setAttribute("user", user);        JsonResponse response = createOrder(request, null, null, null);        assertTrue(response.getStatus().contains("erro"));    }    @Test    public void UserNoNull() {        // 当userno null        //request.addParameter("user", "user_NoIsNull");        request.setSession(session);        session.setAttribute("user", user_NoIsNull);        JsonResponse response = createOrder(request, null, null, null);        assertTrue(response.getStatus().contains("erro"));    }    @Test    public void ProductNotNull() {        // user not null        // productno not null        //request.addParameter("user", "user");        request.setSession(session);        session.setAttribute("user", user);        JsonResponse response = createOrder(request, productno, null, null);        assertTrue(response.getStatus().contains("erro"));    }    @Test    public void addressNotNull(){        // user not null but user is not real         // productno not null        //addressno not null        //request.addParameter("user", "user");        request.setSession(session);        session.setAttribute("user", user);        JsonResponse response = createOrder(request, productno, addressno, null);        assertTrue(response.getStatus().contains("erro"));    }    @Test    public void userfrozen(){        // user not null but user is not real         // productno not null        //addressno not null        user_real.setUseState(User.USESTATE_FREEZE);        //request.addParameter("user", "user_real");        request.setSession(session);        session.setAttribute("user", user_real);        JsonResponse response = createOrder(request, productno, addressno, null);        assertTrue(response.getStatus().contains("erro"));    }    @Test    public void addressIsNull(){        // user not null but user is not real         // productno not null        //addressno not null        user_real.setUseState(User.USESTATE_NORMAL);        request.setSession(session);        session.setAttribute("user", user_real);        //request.addParameter("user", "user_real");        JsonResponse response = createOrder(request, productno, addressno, null);        assertTrue(response.getStatus().contains("erro"));    }    @Test    public void OneBargainCheck(){        //只能一次砍价        user_real.setUseState(User.USESTATE_NORMAL);        addressno="42ac19af23e14704b7a4fbc9f7baf4ea";        productno="4db354c943ba471d8b88478c376771b8";        request.setSession(session);        session.setAttribute("user", user_real);        //request.addParameter("user", "user_real");        JsonResponse response = createOrder(request, productno, addressno, null);        assertTrue(response.getStatus().contains("erro"));    }    public JsonResponse createOrder(HttpServletRequest req, String productNo,            String addressNo, String bzh) {        JsonResponse resp = new JsonResponse();        try {            User user = (User) req.getSession().getAttribute("user");            if (user == null)                throw new Exception("用户登录超时,请重新登录");            Order order = bargainOrderService.createOrder(user.getUseNo(),                    productNo, addressNo, bzh);            resp.setStatus("success");            resp.setResult(order);        } catch (Exception e) {            resp.setStatus("error");            resp.setResult(e.getMessage());        }        return resp;    }}
1 0
原创粉丝点击