add admin register
This commit is contained in:
parent
1207d4a8c4
commit
0f06125338
|
@ -1,87 +1,101 @@
|
|||
package org.bench4q.master.api;
|
||||
|
||||
import org.bench4q.master.domain.service.UserService;
|
||||
import org.bench4q.master.domain.service.auth.AccessToken;
|
||||
import org.bench4q.master.domain.service.auth.AuthenticationManager;
|
||||
import org.bench4q.share.models.master.AuthorizeResponseModel;
|
||||
import org.bench4q.share.models.master.RegisterResponseModel;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/user")
|
||||
public class UserController {
|
||||
private UserService userService;
|
||||
private AuthenticationManager authenticationManager;
|
||||
|
||||
private UserService getUserService() {
|
||||
return userService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserService(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
private AuthenticationManager getAuthenticationManager() {
|
||||
return authenticationManager;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setAuthenticationManager(
|
||||
AuthenticationManager authenticationManager) {
|
||||
this.authenticationManager = authenticationManager;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/register", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public RegisterResponseModel register(@RequestParam String userName,
|
||||
@RequestParam String password) {
|
||||
boolean success = this.getUserService().register(userName, password);
|
||||
RegisterResponseModel registerUserResponseModel = new RegisterResponseModel();
|
||||
registerUserResponseModel.setSuccess(success);
|
||||
return registerUserResponseModel;
|
||||
}
|
||||
|
||||
private AuthorizeResponseModel authorize(String userName, String password,
|
||||
byte requiredScope) {
|
||||
boolean authorized = this.getUserService().validateUser(userName,
|
||||
password, requiredScope);
|
||||
if (!authorized) {
|
||||
return buildAuthorizeResponseModel(null, -1, false);
|
||||
}
|
||||
AccessToken accessToken = this.getAuthenticationManager()
|
||||
.generateAccessToken(userName);
|
||||
String credential = this.getAuthenticationManager().generateCredential(
|
||||
userName);
|
||||
return buildAuthorizeResponseModel(credential,
|
||||
accessToken.getExpiresIn(), true);
|
||||
}
|
||||
|
||||
private AuthorizeResponseModel buildAuthorizeResponseModel(
|
||||
String accessToken, int expiresIn, boolean success) {
|
||||
AuthorizeResponseModel authorizeResponseModel = new AuthorizeResponseModel();
|
||||
authorizeResponseModel.setAccessToken(accessToken);
|
||||
authorizeResponseModel.setExpiresIn(expiresIn);
|
||||
authorizeResponseModel.setSuccess(success);
|
||||
return authorizeResponseModel;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/adminAuthorize", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public AuthorizeResponseModel adminAuthorize(@RequestParam String userName,
|
||||
@RequestParam String password) {
|
||||
return authorize(userName, password, UserService.SUPER_AUTHENTICATION);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/normalAuthorize", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public AuthorizeResponseModel normalAuthorize(
|
||||
@RequestParam String userName, @RequestParam String password) {
|
||||
return authorize(userName, password, UserService.NORAML_AUTHENTICATION);
|
||||
}
|
||||
}
|
||||
package org.bench4q.master.api;
|
||||
|
||||
import org.bench4q.master.domain.service.UserService;
|
||||
import org.bench4q.master.domain.service.auth.AccessToken;
|
||||
import org.bench4q.master.domain.service.auth.AuthenticationManager;
|
||||
import org.bench4q.share.models.master.AuthorizeResponseModel;
|
||||
import org.bench4q.share.models.master.RegisterResponseModel;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/user")
|
||||
public class UserController {
|
||||
private UserService userService;
|
||||
private AuthenticationManager authenticationManager;
|
||||
|
||||
private UserService getUserService() {
|
||||
return userService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserService(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
private AuthenticationManager getAuthenticationManager() {
|
||||
return authenticationManager;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setAuthenticationManager(
|
||||
AuthenticationManager authenticationManager) {
|
||||
this.authenticationManager = authenticationManager;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/register", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public RegisterResponseModel register(@RequestParam String userName,
|
||||
@RequestParam String password, @RequestParam byte scope) {
|
||||
boolean success = this.getUserService().register(userName, password,
|
||||
scope);
|
||||
RegisterResponseModel registerUserResponseModel = new RegisterResponseModel();
|
||||
registerUserResponseModel.setSuccess(success);
|
||||
return registerUserResponseModel;
|
||||
}
|
||||
|
||||
private AuthorizeResponseModel authorize(String userName, String password,
|
||||
byte requiredScope) {
|
||||
boolean authorized = this.getUserService().validateUser(userName,
|
||||
password, requiredScope);
|
||||
if (!authorized) {
|
||||
return buildAuthorizeResponseModel(null, -1, false);
|
||||
}
|
||||
AccessToken accessToken = this.getAuthenticationManager()
|
||||
.generateAccessToken(userName);
|
||||
String credential = this.getAuthenticationManager().generateCredential(
|
||||
userName);
|
||||
return buildAuthorizeResponseModel(credential,
|
||||
accessToken.getExpiresIn(), true);
|
||||
}
|
||||
|
||||
private AuthorizeResponseModel buildAuthorizeResponseModel(
|
||||
String accessToken, int expiresIn, boolean success) {
|
||||
AuthorizeResponseModel authorizeResponseModel = new AuthorizeResponseModel();
|
||||
authorizeResponseModel.setAccessToken(accessToken);
|
||||
authorizeResponseModel.setExpiresIn(expiresIn);
|
||||
authorizeResponseModel.setSuccess(success);
|
||||
return authorizeResponseModel;
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/adminAuthorize", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public AuthorizeResponseModel adminAuthorize(@RequestParam String userName,
|
||||
@RequestParam String password) {
|
||||
return authorize(userName, password, UserService.SUPER_AUTHENTICATION);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/normalAuthorize", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public AuthorizeResponseModel normalAuthorize(
|
||||
@RequestParam String userName, @RequestParam String password) {
|
||||
return authorize(userName, password, UserService.NORAML_AUTHENTICATION);
|
||||
}
|
||||
|
||||
@RequestMapping(value = "/deleteUser/{userName}", method = RequestMethod.GET)
|
||||
@ResponseBody
|
||||
public AuthorizeResponseModel deleteUser(@PathVariable String userName) {
|
||||
|
||||
AuthorizeResponseModel authorizeResponseModel = new AuthorizeResponseModel();
|
||||
authorizeResponseModel.setSuccess(this.getUserService().deleteUser(
|
||||
userName));
|
||||
return authorizeResponseModel;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,28 +1,28 @@
|
|||
package org.bench4q.master.domain.factory;
|
||||
|
||||
import org.bench4q.master.domain.entity.User;
|
||||
import org.bench4q.master.helper.HashHelper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class UserFactory {
|
||||
private HashHelper hashHelper;
|
||||
|
||||
private HashHelper getHashHelper() {
|
||||
return hashHelper;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setHashHelper(HashHelper hashHelper) {
|
||||
this.hashHelper = hashHelper;
|
||||
}
|
||||
|
||||
public User createUser(String userName, String password) {
|
||||
User user = new User();
|
||||
user.setUserName(userName);
|
||||
user.setPassword(this.getHashHelper().sha1Hash(password));
|
||||
user.setScope((byte) 0);
|
||||
return user;
|
||||
}
|
||||
}
|
||||
package org.bench4q.master.domain.factory;
|
||||
|
||||
import org.bench4q.master.domain.entity.User;
|
||||
import org.bench4q.master.helper.HashHelper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class UserFactory {
|
||||
private HashHelper hashHelper;
|
||||
|
||||
private HashHelper getHashHelper() {
|
||||
return hashHelper;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setHashHelper(HashHelper hashHelper) {
|
||||
this.hashHelper = hashHelper;
|
||||
}
|
||||
|
||||
public User createUser(String userName, String password, byte scope) {
|
||||
User user = new User();
|
||||
user.setUserName(userName);
|
||||
user.setPassword(this.getHashHelper().sha1Hash(password));
|
||||
user.setScope(scope);
|
||||
return user;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,58 +1,63 @@
|
|||
package org.bench4q.master.domain.service;
|
||||
|
||||
import org.bench4q.master.domain.entity.User;
|
||||
import org.bench4q.master.domain.factory.UserFactory;
|
||||
import org.bench4q.master.domain.repository.UserRepository;
|
||||
import org.bench4q.master.helper.SessionHelper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class UserService {
|
||||
private UserFactory userFactory;
|
||||
private UserRepository userRepository;
|
||||
public static byte NORAML_AUTHENTICATION = 0;
|
||||
public static byte SUPER_AUTHENTICATION = 1;
|
||||
|
||||
private UserFactory getUserFactory() {
|
||||
return userFactory;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserFactory(UserFactory userFactory) {
|
||||
this.userFactory = userFactory;
|
||||
}
|
||||
|
||||
private UserRepository getUserRepository() {
|
||||
return userRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserRepository(UserRepository userRepository) {
|
||||
this.userRepository = userRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setSessionHelper(SessionHelper sessionHelper) {
|
||||
}
|
||||
|
||||
public boolean register(String userName, String password) {
|
||||
return this.getUserRepository().attatch(
|
||||
this.getUserFactory().createUser(userName, password));
|
||||
}
|
||||
|
||||
public boolean validateUser(String userName, String password,
|
||||
byte requiredScope) {
|
||||
if (!this.getUserRepository().isExist(
|
||||
this.getUserFactory().createUser(userName, password))) {
|
||||
return false;
|
||||
}
|
||||
User user = this.getUserRepository().getUser(userName);
|
||||
return isScopeMeet(user, requiredScope);
|
||||
}
|
||||
|
||||
private boolean isScopeMeet(User user, byte requiredScope) {
|
||||
return user.getScope() >= requiredScope;
|
||||
}
|
||||
|
||||
}
|
||||
package org.bench4q.master.domain.service;
|
||||
|
||||
import org.bench4q.master.domain.entity.User;
|
||||
import org.bench4q.master.domain.factory.UserFactory;
|
||||
import org.bench4q.master.domain.repository.UserRepository;
|
||||
import org.bench4q.master.helper.SessionHelper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class UserService {
|
||||
private UserFactory userFactory;
|
||||
private UserRepository userRepository;
|
||||
public static byte NORAML_AUTHENTICATION = 0;
|
||||
public static byte SUPER_AUTHENTICATION = 1;
|
||||
|
||||
private UserFactory getUserFactory() {
|
||||
return userFactory;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserFactory(UserFactory userFactory) {
|
||||
this.userFactory = userFactory;
|
||||
}
|
||||
|
||||
private UserRepository getUserRepository() {
|
||||
return userRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserRepository(UserRepository userRepository) {
|
||||
this.userRepository = userRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setSessionHelper(SessionHelper sessionHelper) {
|
||||
}
|
||||
|
||||
public boolean register(String userName, String password, byte scope) {
|
||||
return this.getUserRepository().attatch(
|
||||
this.getUserFactory().createUser(userName, password, scope));
|
||||
}
|
||||
|
||||
public boolean validateUser(String userName, String password,
|
||||
byte requiredScope) {
|
||||
if (!this.getUserRepository().isExist(
|
||||
this.getUserFactory().createUser(userName, password,
|
||||
requiredScope))) {
|
||||
return false;
|
||||
}
|
||||
User user = this.getUserRepository().getUser(userName);
|
||||
return isScopeMeet(user, requiredScope);
|
||||
}
|
||||
|
||||
private boolean isScopeMeet(User user, byte requiredScope) {
|
||||
return user.getScope() >= requiredScope;
|
||||
}
|
||||
|
||||
public boolean deleteUser(String userName) {
|
||||
return this.getUserRepository().detach(userName);
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,38 +1,74 @@
|
|||
package org.bench4q.master.test.controller;
|
||||
|
||||
import java.io.IOException;
|
||||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import org.bench4q.share.communication.HttpRequester.HttpResponse;
|
||||
import org.bench4q.share.helper.MarshalHelper;
|
||||
import org.bench4q.share.models.master.AuthorizeResponseModel;
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class UserControllerTest extends TestBase {
|
||||
|
||||
@Test
|
||||
public void testNormalAuth() throws IOException, JAXBException {
|
||||
String urlString = BASE_URL
|
||||
+ "/user/normalAuthorize?userName=chen&password=123";
|
||||
HttpResponse httpResponse = this.httpRequester.sendGet(urlString, null,
|
||||
null);
|
||||
AuthorizeResponseModel ret = (AuthorizeResponseModel) MarshalHelper
|
||||
.unmarshal(AuthorizeResponseModel.class,
|
||||
httpResponse.getContent());
|
||||
assertTrue(ret.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAdminAuth() throws IOException, JAXBException {
|
||||
String url = BASE_URL
|
||||
+ "/user/adminAuthorize?userName=chen&password=123";
|
||||
HttpResponse httpResponse = this.httpRequester.sendGet(url, null, null);
|
||||
AuthorizeResponseModel ret = (AuthorizeResponseModel) MarshalHelper
|
||||
.unmarshal(AuthorizeResponseModel.class,
|
||||
httpResponse.getContent());
|
||||
assertTrue(ret.isSuccess());
|
||||
}
|
||||
|
||||
}
|
||||
package org.bench4q.master.test.controller;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import org.bench4q.share.communication.HttpRequester.HttpResponse;
|
||||
import org.bench4q.share.helper.MarshalHelper;
|
||||
import org.bench4q.share.models.master.AuthorizeResponseModel;
|
||||
import org.bench4q.share.models.master.RegisterResponseModel;
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class UserControllerTest extends TestBase {
|
||||
|
||||
@Test
|
||||
public void testNormalAuth() throws IOException, JAXBException {
|
||||
String urlString = BASE_URL
|
||||
+ "/user/normalAuthorize?userName=chen&password=123";
|
||||
HttpResponse httpResponse = this.httpRequester.sendGet(urlString, null,
|
||||
null);
|
||||
AuthorizeResponseModel ret = (AuthorizeResponseModel) MarshalHelper
|
||||
.unmarshal(AuthorizeResponseModel.class,
|
||||
httpResponse.getContent());
|
||||
assertTrue(ret.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAdminAuth() throws IOException, JAXBException {
|
||||
String url = BASE_URL
|
||||
+ "/user/adminAuthorize?userName=chen&password=123";
|
||||
HttpResponse httpResponse = this.httpRequester.sendGet(url, null, null);
|
||||
AuthorizeResponseModel ret = (AuthorizeResponseModel) MarshalHelper
|
||||
.unmarshal(AuthorizeResponseModel.class,
|
||||
httpResponse.getContent());
|
||||
assertTrue(ret.isSuccess());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testAdminRegister() throws IOException {
|
||||
String userName = "test";
|
||||
clearUser(userName);
|
||||
String url = BASE_URL + "/user/register";
|
||||
Map<String, String> params = new HashMap<String, String>();
|
||||
|
||||
params.put("userName", userName);
|
||||
params.put("password", "test");
|
||||
params.put("scope", "1");
|
||||
HttpResponse httpResponse = this.httpRequester.sendGet(url, params,
|
||||
null);
|
||||
RegisterResponseModel registerResponseModel = (RegisterResponseModel) MarshalHelper
|
||||
.tryUnmarshal(RegisterResponseModel.class,
|
||||
httpResponse.getContent());
|
||||
assertNotNull(registerResponseModel);
|
||||
assertTrue(registerResponseModel.isSuccess());
|
||||
assertTrue(clearUser(userName).isSuccess());
|
||||
|
||||
}
|
||||
|
||||
private AuthorizeResponseModel clearUser(String userName)
|
||||
throws IOException {
|
||||
String url = BASE_URL + "/user/deleteUser" + "/" + userName;
|
||||
HttpResponse httpResponse = this.httpRequester.sendGet(url, null, null);
|
||||
System.out.println(httpResponse.getContent());
|
||||
AuthorizeResponseModel authorizeResponseModel = (AuthorizeResponseModel) MarshalHelper
|
||||
.tryUnmarshal(AuthorizeResponseModel.class,
|
||||
httpResponse.getContent());
|
||||
|
||||
return authorizeResponseModel;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,182 +1,182 @@
|
|||
package org.bench4q.master.test.service;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.Date;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.bench4q.master.domain.entity.Script;
|
||||
import org.bench4q.master.domain.entity.User;
|
||||
import org.bench4q.master.domain.repository.UserRepository;
|
||||
import org.bench4q.master.domain.service.ScriptService;
|
||||
import org.bench4q.master.domain.service.UserService;
|
||||
import org.bench4q.share.helper.MarshalHelper;
|
||||
import org.bench4q.share.models.agent.RunScenarioModel;
|
||||
import org.bench4q.share.models.agent.scriptrecord.PageModel;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
@ContextConfiguration(locations = { "classpath:service-test-context.xml" })
|
||||
public class Test_ScriptService {
|
||||
private ScriptService scriptService;
|
||||
private UserService userService;
|
||||
private UserRepository userRepository;
|
||||
private User userForTest;
|
||||
|
||||
private ScriptService getScriptService() {
|
||||
return scriptService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setScriptService(ScriptService scriptService) {
|
||||
this.scriptService = scriptService;
|
||||
}
|
||||
|
||||
private UserService getUserService() {
|
||||
return userService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserService(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
private UserRepository getUserRepository() {
|
||||
return userRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserRepository(UserRepository userRepository) {
|
||||
this.userRepository = userRepository;
|
||||
}
|
||||
|
||||
private User getUserForTest() {
|
||||
return userForTest;
|
||||
}
|
||||
|
||||
private void setUserForTest(User userForTest) {
|
||||
this.userForTest = userForTest;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSaveScript() throws JAXBException {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
assertNotNull(user);
|
||||
assertTrue(doSaveAScript(user));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSaveScriptWithDefinedParameters() throws IOException {
|
||||
User user = this.getUserRepository().getUser("admin");
|
||||
this.getScriptService().saveScript(
|
||||
"HBaseScript",
|
||||
user.getId(),
|
||||
FileUtils.readFileToString(new File("Scripts"
|
||||
+ System.getProperty("file.separator")
|
||||
+ "HBaseScript.xml")), null);
|
||||
}
|
||||
|
||||
private boolean doSaveAScript(User user) throws JAXBException {
|
||||
return this.getScriptService().saveScript(
|
||||
"ad",
|
||||
user.getId(),
|
||||
MarshalHelper.marshal(RunScenarioModel.class,
|
||||
new RunScenarioModel()), null);
|
||||
}
|
||||
|
||||
@Before
|
||||
public void prepare() {
|
||||
this.getUserService().register("test1", "test1");
|
||||
this.setUserForTest(this.getUserRepository().getUser("test1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLoadScripts() throws JAXBException {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
assertNotNull(user);
|
||||
assertTrue(this.getScriptService().saveScript(
|
||||
"adef",
|
||||
user.getId(),
|
||||
MarshalHelper.marshal(RunScenarioModel.class,
|
||||
new RunScenarioModel()), null));
|
||||
assertEquals(1, this.getScriptService().loadScripts(user).size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetScript() throws JAXBException {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
doSaveAScript(user);
|
||||
Script script = this.getScriptService().getScript(
|
||||
getUploadScriptId(user));
|
||||
assertNotNull(script);
|
||||
assertEquals("test1", script.getUser().getUserName());
|
||||
}
|
||||
|
||||
private int getUploadScriptId(User user) {
|
||||
return this.getScriptService().loadScripts(user).get(0).getId();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testQueryScriptsByCreateTime() throws JAXBException {
|
||||
this.doSaveAScript(this.getUserForTest());
|
||||
List<Script> result = this.getScriptService().queryScriptsByCreateTime(
|
||||
new Date(0), new Date(), this.getUserForTest());
|
||||
assertEquals(1, result.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateScript() throws JAXBException {
|
||||
doSaveAScript(getUserForTest());
|
||||
RunScenarioModel runScenarioModel = new RunScenarioModel();
|
||||
runScenarioModel.setPages(new LinkedList<PageModel>() {
|
||||
private static final long serialVersionUID = 1L;
|
||||
{
|
||||
add(new PageModel());
|
||||
}
|
||||
});
|
||||
assertTrue(this.getScriptService()
|
||||
.alterScriptContent(
|
||||
getUploadScriptId(getUserForTest()),
|
||||
getUserForTest().getId(),
|
||||
MarshalHelper.marshal(RunScenarioModel.class,
|
||||
runScenarioModel)));
|
||||
String content = this.getScriptService()
|
||||
.getScript(getUploadScriptId(getUserForTest()))
|
||||
.getScriptContent();
|
||||
RunScenarioModel afterUpdate = (RunScenarioModel) MarshalHelper
|
||||
.unmarshal(RunScenarioModel.class, content);
|
||||
assertEquals(1, afterUpdate.getPages().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetRunScenarioModelById() throws JAXBException {
|
||||
doSaveAScript(getUserForTest());
|
||||
assertNotNull(this.getScriptService().getRunSceniroModelByScriptId(
|
||||
getUploadScriptId(getUserForTest())));
|
||||
|
||||
}
|
||||
|
||||
@After
|
||||
public void cleanUp() {
|
||||
try {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
int uploadScriptId = getUploadScriptId(user);
|
||||
assertTrue(this.getScriptService().deleteScript(uploadScriptId,
|
||||
user.getId()));
|
||||
this.getUserRepository().detach("test1");
|
||||
} catch (Exception e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
package org.bench4q.master.test.service;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.Date;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
|
||||
import javax.xml.bind.JAXBException;
|
||||
|
||||
import org.apache.commons.io.FileUtils;
|
||||
import org.bench4q.master.domain.entity.Script;
|
||||
import org.bench4q.master.domain.entity.User;
|
||||
import org.bench4q.master.domain.repository.UserRepository;
|
||||
import org.bench4q.master.domain.service.ScriptService;
|
||||
import org.bench4q.master.domain.service.UserService;
|
||||
import org.bench4q.share.helper.MarshalHelper;
|
||||
import org.bench4q.share.models.agent.RunScenarioModel;
|
||||
import org.bench4q.share.models.agent.scriptrecord.PageModel;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
@ContextConfiguration(locations = { "classpath:service-test-context.xml" })
|
||||
public class Test_ScriptService {
|
||||
private ScriptService scriptService;
|
||||
private UserService userService;
|
||||
private UserRepository userRepository;
|
||||
private User userForTest;
|
||||
|
||||
private ScriptService getScriptService() {
|
||||
return scriptService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setScriptService(ScriptService scriptService) {
|
||||
this.scriptService = scriptService;
|
||||
}
|
||||
|
||||
private UserService getUserService() {
|
||||
return userService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserService(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
private UserRepository getUserRepository() {
|
||||
return userRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserRepository(UserRepository userRepository) {
|
||||
this.userRepository = userRepository;
|
||||
}
|
||||
|
||||
private User getUserForTest() {
|
||||
return userForTest;
|
||||
}
|
||||
|
||||
private void setUserForTest(User userForTest) {
|
||||
this.userForTest = userForTest;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSaveScript() throws JAXBException {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
assertNotNull(user);
|
||||
assertTrue(doSaveAScript(user));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSaveScriptWithDefinedParameters() throws IOException {
|
||||
User user = this.getUserRepository().getUser("admin");
|
||||
this.getScriptService().saveScript(
|
||||
"HBaseScript",
|
||||
user.getId(),
|
||||
FileUtils.readFileToString(new File("Scripts"
|
||||
+ System.getProperty("file.separator")
|
||||
+ "HBaseScript.xml")), null);
|
||||
}
|
||||
|
||||
private boolean doSaveAScript(User user) throws JAXBException {
|
||||
return this.getScriptService().saveScript(
|
||||
"ad",
|
||||
user.getId(),
|
||||
MarshalHelper.marshal(RunScenarioModel.class,
|
||||
new RunScenarioModel()), null);
|
||||
}
|
||||
|
||||
@Before
|
||||
public void prepare() {
|
||||
this.getUserService().register("test1", "test1",(byte)1);
|
||||
this.setUserForTest(this.getUserRepository().getUser("test1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testLoadScripts() throws JAXBException {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
assertNotNull(user);
|
||||
assertTrue(this.getScriptService().saveScript(
|
||||
"adef",
|
||||
user.getId(),
|
||||
MarshalHelper.marshal(RunScenarioModel.class,
|
||||
new RunScenarioModel()), null));
|
||||
assertEquals(1, this.getScriptService().loadScripts(user).size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetScript() throws JAXBException {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
doSaveAScript(user);
|
||||
Script script = this.getScriptService().getScript(
|
||||
getUploadScriptId(user));
|
||||
assertNotNull(script);
|
||||
assertEquals("test1", script.getUser().getUserName());
|
||||
}
|
||||
|
||||
private int getUploadScriptId(User user) {
|
||||
return this.getScriptService().loadScripts(user).get(0).getId();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testQueryScriptsByCreateTime() throws JAXBException {
|
||||
this.doSaveAScript(this.getUserForTest());
|
||||
List<Script> result = this.getScriptService().queryScriptsByCreateTime(
|
||||
new Date(0), new Date(), this.getUserForTest());
|
||||
assertEquals(1, result.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdateScript() throws JAXBException {
|
||||
doSaveAScript(getUserForTest());
|
||||
RunScenarioModel runScenarioModel = new RunScenarioModel();
|
||||
runScenarioModel.setPages(new LinkedList<PageModel>() {
|
||||
private static final long serialVersionUID = 1L;
|
||||
{
|
||||
add(new PageModel());
|
||||
}
|
||||
});
|
||||
assertTrue(this.getScriptService()
|
||||
.alterScriptContent(
|
||||
getUploadScriptId(getUserForTest()),
|
||||
getUserForTest().getId(),
|
||||
MarshalHelper.marshal(RunScenarioModel.class,
|
||||
runScenarioModel)));
|
||||
String content = this.getScriptService()
|
||||
.getScript(getUploadScriptId(getUserForTest()))
|
||||
.getScriptContent();
|
||||
RunScenarioModel afterUpdate = (RunScenarioModel) MarshalHelper
|
||||
.unmarshal(RunScenarioModel.class, content);
|
||||
assertEquals(1, afterUpdate.getPages().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetRunScenarioModelById() throws JAXBException {
|
||||
doSaveAScript(getUserForTest());
|
||||
assertNotNull(this.getScriptService().getRunSceniroModelByScriptId(
|
||||
getUploadScriptId(getUserForTest())));
|
||||
|
||||
}
|
||||
|
||||
@After
|
||||
public void cleanUp() {
|
||||
try {
|
||||
User user = this.getUserRepository().getUser("test1");
|
||||
int uploadScriptId = getUploadScriptId(user);
|
||||
assertTrue(this.getScriptService().deleteScript(uploadScriptId,
|
||||
user.getId()));
|
||||
this.getUserRepository().detach("test1");
|
||||
} catch (Exception e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,64 +1,64 @@
|
|||
package org.bench4q.master.test.service;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import org.bench4q.master.domain.repository.UserRepository;
|
||||
import org.bench4q.master.domain.service.UserService;
|
||||
import org.junit.After;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
@ContextConfiguration(locations = { "classpath:service-test-context.xml" })
|
||||
public class Test_UserService {
|
||||
private UserService userService;
|
||||
private UserRepository usreRepository;
|
||||
|
||||
private UserService getUserService() {
|
||||
return userService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserService(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
private UserRepository getUsreRepository() {
|
||||
return usreRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUsreRepository(UserRepository usreRepository) {
|
||||
this.usreRepository = usreRepository;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
assertNotNull(this.getUserService());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRegister() {
|
||||
assertTrue(this.getUserService().register("test1", "test1"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testValidate() {
|
||||
this.getUserService().register("test1", "test1");
|
||||
assertTrue(this.getUserService().validateUser("test1", "test1",
|
||||
(byte) 0));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetUserByName() {
|
||||
this.getUserService().register("test1", "test1");
|
||||
assertNotNull(this.getUsreRepository().getUser("test1"));
|
||||
}
|
||||
|
||||
@After
|
||||
public void cleanUp() {
|
||||
this.getUsreRepository().detach("test1");
|
||||
}
|
||||
}
|
||||
package org.bench4q.master.test.service;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
import org.bench4q.master.domain.repository.UserRepository;
|
||||
import org.bench4q.master.domain.service.UserService;
|
||||
import org.junit.After;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.test.context.ContextConfiguration;
|
||||
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
|
||||
|
||||
@RunWith(SpringJUnit4ClassRunner.class)
|
||||
@ContextConfiguration(locations = { "classpath:service-test-context.xml" })
|
||||
public class Test_UserService {
|
||||
private UserService userService;
|
||||
private UserRepository usreRepository;
|
||||
|
||||
private UserService getUserService() {
|
||||
return userService;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUserService(UserService userService) {
|
||||
this.userService = userService;
|
||||
}
|
||||
|
||||
private UserRepository getUsreRepository() {
|
||||
return usreRepository;
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private void setUsreRepository(UserRepository usreRepository) {
|
||||
this.usreRepository = usreRepository;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test() {
|
||||
assertNotNull(this.getUserService());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testRegister() {
|
||||
assertTrue(this.getUserService().register("test1", "test1",(byte)1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testValidate() {
|
||||
this.getUserService().register("test1", "test1",(byte)1);
|
||||
assertTrue(this.getUserService().validateUser("test1", "test1",
|
||||
(byte) 0));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetUserByName() {
|
||||
this.getUserService().register("test1", "test1",(byte)1);
|
||||
assertNotNull(this.getUsreRepository().getUser("test1"));
|
||||
}
|
||||
|
||||
@After
|
||||
public void cleanUp() {
|
||||
this.getUsreRepository().detach("test1");
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue