Guest User

Untitled

a guest
Feb 17th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.32 KB | None | 0 0
  1. @RunWith(PowerMockRunner.class)
  2. @PrepareForTest({ Calendar.class })
  3.  
  4. public void determineDefaultMaximumScans() throws ParseException{
  5. parseTime();
  6. Calendar cal = Calendar.getInstance();
  7. int dayOfWeek = cal.get(Calendar.DAY_OF_WEEK);
  8. System.out.println(cal.get(Calendar.DAY_OF_WEEK));
  9.  
  10. if(dayOfWeek == (Calendar.SATURDAY) || dayOfWeek == (Calendar.SUNDAY)){
  11. setDefaultMax(calculateNewDefaultMax(getDefaultMax()));
  12. System.out.println("defaultMax increased by 20%");
  13. } else {
  14. if(currentTime.after(afterHoursBegin) && currentTime.before(afterHoursEnd)){
  15. System.out.println("Not afterhours. Maintaining current maximum.");
  16. setDefaultMax(defaultMax);
  17. System.out.println("Current Maximum number of scans: " + getDefaultMax());
  18. }
  19.  
  20. }
  21. }
  22.  
  23. @SuppressWarnings("static-access")
  24. @Test
  25. public void testDetermineMaximumScans() throws ParseException{
  26. PowerMock.mockStatic(Calendar.class);
  27. String beginningTime = "18:00";
  28. String endingTime = "05:00";
  29.  
  30. mockAfterHoursBegin = parser.parse(beginningTime);
  31. mockAfterHoursEnd = parser.parse(endingTime);
  32. mockCurrentTime = parser.parse(parser.format(new Date()));
  33.  
  34. EasyMock.expect(Calendar.getInstance()).andReturn(mockCalendar);
  35. EasyMock.expect(mockCalendar.get(Calendar.DAY_OF_WEEK)).andReturn(6);
  36.  
  37.  
  38. EasyMock.replay(mocks);
  39. offHourMaximumCalculator.determineDefaultMaximumScans();
  40. EasyMock.verify(mocks);
  41. }
  42.  
  43. java.lang.AssertionError:
  44. Expectation failure on verify:
  45. Calendar.get(7): expected: 1, actual: 0
  46.  
  47. protected Calendar newCalendar() {
  48. return Calendar.getInstance(); // or new GregorianCalendar()
  49. }
  50.  
  51. @RunWith(PowerMockRunner.class)
  52. @PrepareForTest(Calendar.class)
  53. public class MyTest {
  54.  
  55. @Test
  56. public void testDetermineMaximumScans() throws ParseException {
  57. PowerMock.mockStatic(Calendar.class);
  58.  
  59. Calendar calendar = mock(Calendar.class);
  60.  
  61. EasyMock.expect(Calendar.getInstance()).andReturn(calendar);
  62. EasyMock.expect(calendar.get(Calendar.DAY_OF_WEEK)).andReturn(6);
  63.  
  64. // really important to replayAll to replay the static expectation
  65. PowerMock.replayAll(calendar);
  66. assertThat(Calendar.getInstance().get(Calendar.DAY_OF_WEEK)).isEqualTo(6);
  67.  
  68. // and verifyAll is you want to verify that the static call actually happened
  69. PowerMock.verifyAll();
  70. }
  71.  
  72. }
Add Comment
Please, Sign In to add comment