Code Monkey home page Code Monkey logo

intellij-java-plugin's People

Contributors

artpar avatar kartikeytewari-ul avatar theamg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

rohankumardubey

intellij-java-plugin's Issues

No Stack trace assertion options for methods that throw exceptions

Describe the bug

On trying to save a candidate that throws an exception, stack trace can't be asserted.
The actual trace is serialized on candidate hover, but on save assertions aren't created.
Return type seems to be considered void.

Screenshot 2024-06-20 at 3 16 12 PM

Reproduction steps

  1. DirectInvoke a method that throws an exception.
  2. Try to save it as a replay, there will be no assertion options on save
    ...

Expected behavior

An assertion for the stack trace or part of it to be possible.

Additional context

No response

Handling responses that contain symbols like "<"

Describe the bug

When response strings contain "<" in them, these symbols are excluded in string previewed during candidate save.
This also affects replay cases when saved and run.

Response:
Screenshot 2024-06-13 at 3 53 01 PM

On Save:
Screenshot 2024-06-13 at 3 53 18 PM

On Replay case run:
Screenshot 2024-06-13 at 3 51 52 PM

Reproduction steps

  1. DirectInvoke method getSortedIdOrder from StreamOpsController from unlogged-spring-maven-demo
  2. On trying to save it's candidates all "<" symbols are dropped. Save candidate.
  3. Run testRunner, case will fail.
    ...

Expected behavior

"<" should be included and saved cases should pass.

Additional context

No response

Map<Boolan,List<Pojo>> fails to serialize on 0.6.2 for a certain method

Describe the bug

A method with return type Map<Boolean,List> (from unlogged-spring-maven-demo) doesn't serialize properly.
This results in no assertions being generated when trying to save the candidate.

Screen.Recording.2024-06-13.at.4.02.05.PM.mov
Screenshot 2024-06-13 at 4 02 54 PM

Reproduction steps

  1. Start unlogged-spring-maven-demo with SDK 0.6.2
  2. DirectInvoke the method partitionBy in StreamOpsController
  3. Check the recorded value for this candidate/Try to save.

Expected behavior

Map<Boolean,List> should get serialized properly and proper assertions should get generated when trying to save a candidate for this method.

Additional context

No response

Improvement on automatic spam filter exclude

Describe the bug

On DirectInvoking a method that calls a 2nd method that generates enough candidates at once for it to be automatically excluded (from the same class), the filters are always set to exclude the current class. This will prevent candidates from other methods from the same class from showing up.

Example :
DirectInvokeunlogged-spring-maven-demo -> RecursionController -> getFibonacciSeries().
Candidates for getFibonacciSeries will be excluded on clicking the inlay hint above the method due to the 109 candidates from fibonacci method. (input 10). Removing the entry in excluded class manually is necessary for this candidate to show up.

https://github.com/unloggedio/intellij-java-plugin/assets/68552461/00b66be5-934b-4396-aa6b-b9ee48a24e9a

Reproduction steps

  1. Start unlogged-spring-maven-demo
  2. DirectInvoke RecursionController -> getFibonacciSeries
  3. Try to save candidate for getFibonacciSeries

Expected behavior

The spam filter should ideally only filter out only the spammy method from that class and not all the methods from that class.

Additional context

No response

Switching method return type for a method will cause plugin to throw an exception

Describe the bug

On trying to change the return type of a method the following exception is thrown from a balloon notification.
This was observed on changing a Boolean return type method to List without changing the name or body of the method.

Reproduction steps

  1. When IDE is indexed and plugin is installed create a new method that returns a Boolean. (No need to run project)
  2. Change the return type from Boolean to List (type)
  3. The Exception should popup when as you are typing "<" or "B" right after adding "<".
    ...

Expected behavior

No Exceptions to popup on method signature change.

Additional context

Stack trace -

java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0
	at com.insidious.plugin.util.ClassTypeUtils.getDottedToDescriptorName(ClassTypeUtils.java:195)
	at com.insidious.plugin.util.ClassTypeUtils.getDottedToDescriptorName(ClassTypeUtils.java:846)
	at com.insidious.plugin.pojo.atomic.MethodUnderTest.buildMethodSignature(MethodUnderTest.java:88)
	at com.insidious.plugin.pojo.atomic.MethodUnderTest.fromPsiCallExpression(MethodUnderTest.java:162)
	at com.insidious.plugin.inlay.InsidiousInlayHintsCollector.collect(InsidiousInlayHintsCollector.java:197)
	at com.intellij.codeInsight.hints.CollectorWithSettings.collectHints(InlayHintsUtils.kt:91)
	at com.intellij.codeInsight.hints.InlayHintsPass.doCollectInformation$lambda$0(InlayHintsPass.kt:46)
	at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:142)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1133)
	at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$1(ApplierCompleter.java:98)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
	at com.intellij.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:110)
	at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:91)
	at java.base/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:754)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
	at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

list the available mocks from the direct invoke execution

Show the list of available mocks even without saving the mock definitions.

  1. Dev direct invokes a method
  2. Dev clicks on the mock icon on a line.
  3. Show the list of available mocks, even when the dev hasn't saved them and allow them to inject those mocks.

Session Corrupt - methodCallExpression is null

Describe the bug

The following exception trace was sent by a user ->

Exception trace -

2024-07-30 17:25:41,957 [3243372]   WARN - #com.insidious.plugin.client.SessionInstance - processing [3263] events from [2] log files: 2432009
2024-07-30 17:25:41,959 [3243374]   WARN - #com.insidious.plugin.client.SessionEventReader - Finished reading events [2] log files in [43 ms ]
2024-07-30 17:25:42,023 [3243438]   INFO - STDERR - java.lang.NullPointerException: Cannot invoke "com.insidious.plugin.pojo.dao.MethodCallExpression.getCallTimeNano()" because "methodCallExpression" is null
2024-07-30 17:25:42,035 [3243450]   INFO - STDERR - 	at com.insidious.plugin.client.SessionInstance.processLogFile(SessionInstance.java:3526)
2024-07-30 17:25:42,035 [3243450]   INFO - STDERR - 	at com.insidious.plugin.client.SessionInstance.processPendingThreadFiles(SessionInstance.java:2467)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at com.insidious.plugin.client.SessionInstance.scanDataAndBuildReplay(SessionInstance.java:2379)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at com.insidious.plugin.client.SessionInstance.run(SessionInstance.java:4161)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
2024-07-30 17:25:42,036 [3243451]   INFO - STDERR - 	at java.base/java.lang.Thread.run(Thread.java:833)
2024-07-30 17:25:42,039 [3243454]   WARN - #com.insidious.plugin.client.SessionInstance - Exception in scan and build session
java.lang.NullPointerException: Cannot invoke "com.insidious.plugin.pojo.dao.MethodCallExpression.getCallTimeNano()" because "methodCallExpression" is null
	at com.insidious.plugin.client.SessionInstance.processLogFile(SessionInstance.java:3526)
	at com.insidious.plugin.client.SessionInstance.processPendingThreadFiles(SessionInstance.java:2467)
	at com.insidious.plugin.client.SessionInstance.scanDataAndBuildReplay(SessionInstance.java:2379)
	at com.insidious.plugin.client.SessionInstance.run(SessionInstance.java:4161)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:833)
2024-07-30 17:25:42,198 [3243613]   WARN - #com.insidious.plugin.factory.UsageInsightTracker - RecordEvent [SESSION_CORRUPT]
2024-07-30 17:25:42,411 [3243826]   INFO - #com.insidious.plugin.client.ZipConsumer - open archive [/home/./.unlogged/sessions/selogger-output-20240730-074646486/index-00079-1722340480938.zip] last modified=[1722340542393], lastChecked = [1722340540603]

Reproduction steps

To be Identified.
...

Expected behavior

For Scan to not break.

Additional context

Logs : https://drive.google.com/file/d/1lR9wn--gJRG13Zoc4T9T9HpLXGIGxWzT/view?usp=sharing

Candidates for "doFilter" methods from spring's custom filters don't show up on LiveView timeline

Describe the bug

On triggering custom filters, candidates for "doFilter" won't show up on the liveView timeline.
The InlayHints for the methods update correctly (count), but candidates never load.

Screenshot 2024-06-19 at 11 00 16 AM Screenshot 2024-06-19 at 11 00 09 AM

Reproduction steps

  1. Start unlogged-spring-maven-demo
  2. Hit any API from the project from an external source
  3. Go to GlobalFilter, you will see inlayhints with correct call counts for both methods here, but candidates for the doFilter method will not load.

Example curls -

curl --location 'http://localhost:8080/perf/ping'
curl --location 'http://localhost:8080/future/futureResult'

Expected behavior

For the candidate for "doFilter" to show up in liveLive timeline.

Additional context

No response

Cancel button on decompilation phase when trying to save a candidate will not work on high memory loads

Describe the bug

If the system you are using unlogged with has low available memory and you try to cancel the decompilation phase (before seeing the confirm option), it will not cancel. This leaves the user stuck, in need of force quitting Idea.

Reproduction steps

  1. Load up your system with a lot of applications (get to very high ram usage)
  2. DirectInvoke a method that returns a very large response, try to save this candidate. The method should take a long time decompiling as you click on save. Alternatively try to save many candidates.
  3. Click on cancel
    ...

Expected behavior

For there to be no UI blocker if the user wants to cancel.

Additional context

No response

Visibility of save Replay button

Describe the bug

The issue I'm encountering involves a visibility problem with the "Save Replay" button, specifically related to color.
The current color scheme of button and text color used for the button is causing the text within it to be indiscernible or difficult to read. This lack of contrast or visibility is impeding my ability to perceive the text on the button, making it challenging to identify or interact with the "Save Replay" option. I believe addressing the color issue with the button's design or adjusting the text color could enhance the overall user experience and make the functionality more accessible.

please refer the following attachment
button color issue.pdf

Reproduction steps

1.Install Unlogged plugin in Intellij IDEA and add unlogged dependency based on your Java version.
2.Add Unlogged annotation above your main method of your project.
3.Run "mvn clean" command and start your application.
4.Click on direct invoke and pass the required parameters and get the response
5. The text of the 'save replay' button is obscured by the same button colour. This button navigates to the assertion and mock data tabs

Expected behavior

color scheme of the "Save Replay" button to be modified in a way that improves visibility and contrast. This adjustment should make the text within the button more discernible and easier to read. Users should be able to clearly identify and interact with the "Save Replay" option without facing challenges related to text visibility.

Additional context

No response

Mock save Crud breaks on multimodule projects

Describe the bug

Mocks are not deleted from the Library tab via the delete button (toolbar).

Reproduction steps

  1. Clone and start the project multimodule-demo-1
  2. DirectInvoke getCustomer from CustomerController
  3. Save all replays generated in Unit mode.
  4. Go to Library and try to delete mocks by selecting all and clicking on delete.
    ...

Expected behavior

These mocks should be removed (also no longer injected) when an attempt to delete is made.

Additional context

No response

StackOverflow Exception on attempted junit boiler plate generation

Describe the bug

This can be reproduced on -

  • Project : unlogged-spring-webflux-demo
  • Branch : main or main-archive
  • Classname : BulkHeadController
  • Method : fib
Screenshot 2024-06-28 at 12 02 19 PM

[sdk 0.6.4 and plugin 2024.2.11]

Reproduction steps

  1. Select the gutter icon for the method mentioned above and try to generate a junit boilerplate for it (dummy data mode)

Expected behavior

For a Junit template with dummy data to be generated for this method.

Additional context

Exception -
stackOverflowException.txt

[Windows] - Running a project with sdk when a session already exists will not delete the older session

Describe the bug

On starting a process with the sdk through docker on windows for the 2nd time will cause a few issues.

  • The older session will not be deleted.
  • DirectInvoke will work, but no candidates will be seen.

To recreate -

  • Start an application with sdk on windows through docker.

  • Stop process and DO NOT delete sessions manually.

  • Start the process again/start another process. New candidates from your current session will not show up.

  • This can be observed easily in the frequency logging UI test in the test branch on UI testrun.

Reproduction steps

  1. Start unlogged-spring-maven-demo on windows with docker (ui-test-clean)
  2. Stop process, don't delete sessions. Remove containers, images and volumes.
  3. Start the process through docker again, no new candidates show up.
    ...

Alternative

  1. Run UI tests on Windows

Expected behavior

For the older session to be deleted and candidates from only the current session to be seen.

Additional context

No response

Session Corrupt - `AbstractQueuedSynchronizer `

Describe the bug

This Exception has been seen on 2 occasions. The following are the 2 traces seen -
[sdk 0.6.9]

Trace 1 -

"classLoaderName":null,"moduleName":"java.base","moduleVersion":"11.0.15","methodName":"reportInterruptAfterWait","fileName":"AbstractQueuedSynchronizer.java","lineNumber":2056,"className":"java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject","nativeMethod":false},{"classLoaderName":null,"moduleName":"java.base","moduleVersion":"11.0.15","methodName":"await","fileName":"Abstr

Trace 2 -

{"classLoaderName":null,"moduleName":"java.base","moduleVersion":"17.0.11","methodName":"await","fileName":"AbstractQueuedSynchronizer.java","lineNumber":1640,"nativeMethod":false,"className":"java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject"},{"classLoaderName":null,"moduleName":"java.base","moduleVersion":"17.0.11","methodName":"take","fileName":"ArrayBlockingQueue.java","l

Reproduction steps

To be idetified.

Expected behavior

For session corrupt to not occur and candidates to load correctly.

Additional context

No response

Junit test are not created if base project is on a path with "/test/" keyword

Describe the bug

If a project is inside a path with /test/ string in it, then Junit test generation will not happen.

Video Demo is here. The stack trace is:

Failed to generate test case

java.lang.RuntimeException: java.lang.NullPointerException: Cannot invoke "java.util.Collection.toArray()" because "c" is null
	at com.insidious.plugin.ui.stomp.StompComponent.lambda$generateTestCaseSingle$22(StompComponent.java:1113)
	at com.intellij.openapi.project.DumbService.lambda$runReadActionInSmartMode$0(DumbService.java:112)
	at com.intellij.openapi.project.DumbService.lambda$runReadActionInSmartMode$1(DumbService.java:156)
	at com.intellij.openapi.application.impl.ApplicationImpl.runReadAction(ApplicationImpl.java:889)
	at com.intellij.openapi.application.ReadAction.compute(ReadAction.java:69)
	at com.intellij.openapi.project.DumbService.runReadActionInSmartMode(DumbService.java:149)
	at com.intellij.openapi.project.DumbService.runReadActionInSmartMode(DumbService.java:112)
	at com.intellij.openapi.project.DumbService.tryRunReadActionInSmartMode(DumbService.java:129)
	at com.insidious.plugin.ui.stomp.StompComponent.generateTestCaseSingle(StompComponent.java:1107)
	at com.insidious.plugin.ui.stomp.StompComponent.onGenerateJunitTestCaseRequest(StompComponent.java:1067)
	at com.insidious.plugin.ui.stomp.StompComponent.lambda$createJunitFromSelected$6(StompComponent.java:430)
	at com.intellij.openapi.progress.impl.CoreProgressManager$2.run(CoreProgressManager.java:281)
	at com.intellij.openapi.progress.impl.CoreProgressManager.startTask(CoreProgressManager.java:429)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.startTask(ProgressManagerImpl.java:114)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressSynchronously$9(CoreProgressManager.java:513)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$new$0(ProgressRunner.java:84)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:252)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:186)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:173)
	at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$4(ProgressRunner.java:252)
	at java.base/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:702)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:699)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:699)
	at java.base/java.lang.Thread.run(Thread.java:840)
Caused by: java.lang.NullPointerException: Cannot invoke "java.util.Collection.toArray()" because "c" is null
	at java.base/java.util.ArrayList.addAll(ArrayList.java:670)
	at com.insidious.plugin.factory.testcase.TestCaseService.buildTestCaseUnit(TestCaseService.java:274)
	at com.insidious.plugin.ui.stomp.StompComponent.lambda$generateTestCaseSingle$22(StompComponent.java:1109)
	... 32 more

Reproduction steps

  1. Create a project with path ~/test/unlogged-spring-maven-demo
  2. Direct Invoke any method
  3. Click on the Junit button, an exception will be thrown by Intellij IDE.
    ...

Expected behavior

Junit test case should have generated

Additional context

No response

IDE freeze seen on Windows in remote mode - UI tests

Describe the bug

Running the full UI test suite on windows will cause the IDE window to freeze and become unresponsive by the end of test case 31.

On closing the IDE and reopening without clean the following exception is seen -
[Doesn't happen if case is run in isolation, seen twice at the same point if the whole suite is run].

Freeze for 178 seconds
IDE KILLED! Sampled time: 152000ms, sampling rate: 100ms, GC time: 2134ms (1%), Class loading: 0%, cpu load: 2%

The stack is from the thread that was blocking EDT

com.intellij.diagnostic.Freeze
	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:211)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:715)
	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1047)
	at [email protected]/java.util.concurrent.CountDownLatch.await(CountDownLatch.java:230)
	at com.insidious.plugin.client.NetworkSessionInstanceClient.getClassMethodAggregates(NetworkSessionInstanceClient.java:1111)
	at com.insidious.plugin.factory.InsidiousService.getClassMethodAggregates(InsidiousService.java:1564)
	at com.insidious.plugin.inlay.InsidiousInlayHintsCollector.collect(InsidiousInlayHintsCollector.java:176)
	at com.intellij.codeInsight.hints.CollectorWithSettings.collectHints(InlayHintsUtils.kt:92)
	at com.intellij.codeInsight.hints.InlayHintsPass.doCollectInformation$lambda$0(InlayHintsPass.kt:47)
	at com.intellij.codeInsight.hints.InlayHintsPass$$Lambda$4276/0x0000000102106bf8.process(Unknown Source)
	at com.intellij.concurrency.ApplierCompleter.execAndForkSubTasks(ApplierCompleter.java:136)
	at com.intellij.concurrency.ApplierCompleter$$Lambda$7461/0x0000000102ee7668.run(Unknown Source)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1111)
	at com.intellij.concurrency.ApplierCompleter.lambda$wrapInReadActionAndIndicator$1(ApplierCompleter.java:92)
	at com.intellij.concurrency.ApplierCompleter$$Lambda$4286/0x0000000102109d40.run(Unknown Source)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$13(CoreProgressManager.java:604)
	at com.intellij.openapi.progress.impl.CoreProgressManager$$Lambda$813/0x0000000100981590.compute(Unknown Source)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:679)
	at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:635)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:603)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
	at com.intellij.concurrency.ApplierCompleter.wrapInReadActionAndIndicator(ApplierCompleter.java:104)
	at com.intellij.concurrency.ApplierCompleter.compute(ApplierCompleter.java:86)
	at [email protected]/java.util.concurrent.CountedCompleter.exec(CountedCompleter.java:754)
	at [email protected]/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373)
	at [email protected]/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182)
	at [email protected]/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655)
	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622)
	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)

Reproduction steps

  1. Run full UI test suite on a Windows system

Expected behavior

For the UI freeze to not occur and the cases to proceed without issue.

Additional context

server_logs.txt.txt

Candidates that return boolean - false, don't have assertions on saving

Describe the bug

On trying to save a candidate for a method that returns false (of type boolean/Boolean), there are no assertions generated for that method.
This does not happen for true, assertions will be generated for true.

Screen.Recording.2024-06-14.at.10.20.21.AM.mov

Example method :

  • Project : unlogged-spring-maven-demo
  • Classname : RecursionController
  • Methodname : getIsPalindrome

Reproduction steps

  1. DirectInvoke any method that returns a boolean -> false value.
  2. Try to save the candidate and check it's assertion.

Expected behavior

For an assertion to be created on trying to save candidates with boolean false return values.

Additional context

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.