@Test(expectedExceptions=DataAccessException.class)
public void testUpdateSubModuleOrderDateExceptionCheck() {
//some code to initialize//
UserSubModuleDao userSubModuleDao = mock(UserSubModuleDao.class);
userModuleServiceImpl.setUserSubModuleDao(userSubModuleDao);
UserSubModule userSubModule=new UserSubModule();
UserSubModuleId userSubModuleId=new UserSubModuleId();
when(userSubModuleDao.findById(any(UserSubModuleId.class),eq(false))).thenThrow(DataAccessException.class);
userModuleServiceImpl.updateSubModuleOrder(data, moduleSysId, userId);
Run Code Online (Sandbox Code Playgroud)
我想为代码覆盖抛出Db异常.它的工作如果我给出预期的例外:Exception.class但不是DataAccessException.class
原始类中的方法如下:
public void updateSubModuleOrder(Long[] data, Long moduleSysId, Long userId) {
try {
for (int i = 0; i < data.length; i++) {
SubModule subModule=new SubModule();
subModule.setSubModuleId(data[i]);
UserSubModuleId userSubModuleId = new UserSubModuleId();
userSubModuleId.setSubModuleId(subModule);
userSubModuleId.setUserId(userId);
userSubModuleId.setUserModuleId(moduleSysId);
UserSubModule userSubmodule = new UserSubModule();
userSubmodule = userSubModuleDao.findById(userSubModuleId,
false);
catch (DataAccessException ewmsDataExp) {
LOGGER.error(
"Database Exception while updateSubModuleOrder …Run Code Online (Sandbox Code Playgroud) 嗨,我有我需要转换的要求List的Long数据类型,以逗号分隔String.这将是适当的方式.我已经考虑过使用字符串构建器或将其转换为List<String>然后使用StringUtilsjoin来获取String.
我正在寻找java 7解决方案,不使用guava或java 8.
我在服务和测试类中的方法:
public void updateSubModuleOrder(Long[] data, Long moduleSysId, Long userId) {
try {
for (int i = 0; i < data.length; i++) {
SubModule subModule=new SubModule();
int temp = i + 1;
userSubmodule.setDsplySeq(temp);
userSubModuleDao.saveOrUpdate(userSubmodule);
@Test
public void testupdateSubModuleOrder(){
UserModuleServiceImpl userModuleServiceImpl = new UserModuleServiceImpl();
UserSubModuleDao userSubModuleDao = mock(User//set the required param ,some code here//
UserSubModuleId userSubModuleId=new UserSubModuleId();
//some code//
when(userSubModuleDao.findById((any(UserSubModuleId.class)),false)).thenReturn(userSubModule);
when(userSubModuleDao.saveOrUpdate(any(UserSubModule.class))).thenReturn(null);
userModuleServiceImpl.updateSubModuleOrder(data, moduleSysId, userId);
};*
Run Code Online (Sandbox Code Playgroud)
我得到的错误是
FAILED: testupdateSubModuleOrder
org.mockito.exceptions.misusing.InvalidUseOfMatchersException:
Invalid use of argument matchers!
2 matchers expected, 1 recorded:
-> at com.TestUserModuleServiceImpl.testupdateSubModuleOrder(TestUserModuleServiceImpl.java:267) …Run Code Online (Sandbox Code Playgroud) 嗨,我是角度js的新手,我正在研究anglarjs本地存储技术,以便数据在刷新时持续存在.有什么方法可以删除本地存储一体机,并将范围存储分配给模型并使用html中的模型而不是$ storage.id.我很新,请分享并帮助我.谢谢
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<title>
</title>
<script type="text/javascript" src="angular.min.js"></script>
<script type="text/javascript" src="angular-local-storage.js"></script>
<script type="text/javascript" src="angular-route.js"> </script>
<script>
var myApp=angular.module("myApp",['ngStorage','ngRoute']);
myApp.controller('myAppCtrl', ['$scope','$localStorage','$location', function($scope,$localStorage,$location){
$scope.$storage=$localStorage.$default({
myname:"",
myid:"",
mynumber:"",
});
$scope.add=function()
{
alert("asdsd")
delete $scope.$storage.myid;
delete $scope.$storage.myname;
delete $scope.$storage.mynumber;
$location.path("/add");
} }]);
myApp.config(['$routeProvider','$locationProvider',function($routeProvider,$locationProvider) {
$routeProvider.
when('/', {
templateUrl: 'search.html',
controller:'myAppCtrl'
}).
when('/add',{
templateUrl:'add.html',
controller:'myAppCtrl'
}).
otherwise({
redirectTo: '/'
});
}]);
</script>
</head>
<body >
<div ng-view>
Run Code Online (Sandbox Code Playgroud)
我的模板如下.
<script type="text/ng-template" id="search.html">
<button ng-click="add();"> add </button>
</script>
<script type="text/ng-template" id="add.html">
<div>
<input …Run Code Online (Sandbox Code Playgroud) 当我将abcd与abcd进行比较时,下面的代码抛出警报匹配,并且 当我将abcd与abdc 进行比较时警告不匹配.奇怪的是当我将abcd与abc进行比较时,它显示匹配而不是不匹配.我究竟做错了什么.我的问题陈述是比较列表中是否存在输入的代码.
var enteredCode=$scope.enteredCode;
var code= $filter('filter')( $scope.codeList, enteredCode);
if(code.length>0){
alert("element present");
} else{
alert("element not present");
}
Run Code Online (Sandbox Code Playgroud)
请让我知道我在做什么错.