Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: Add flyway repair for the migration #37103

Closed
wants to merge 8 commits into from
Closed

Conversation

AnaghHegde
Copy link
Member

@AnaghHegde AnaghHegde commented Oct 25, 2024

Description

The reason for doing this is that we want to introduce the spotless on the SQL files. Post this, the existing migrations checksum will change and the validation fails because of this. Hence introducing the flyway.repair()
We have considered the other alternatives like ignoreMigration (not available in OSS), change baseline version(not working out ex ecpected), make flyway to ignore the validation on few files by setting checksum as NULL

In this setup, calling migrate() explicitly after repair() ensures that all pending migrations are applied immediately after any necessary repairs to the schema history. This approach is beneficial because:

Order of Execution: Spring Boot’s default Flyway configuration may automatically call migrate() at application startup if spring.flyway.enabled=true, but this will not account for any issues that repair() might have resolved.
Ensures Continuity: Calling repair() fixes schema history inconsistencies like checksum mismatches, and calling migrate() right afterward ensures that migrations proceed smoothly with any errors addressed first. This can prevent unexpected issues in production environments.
Creating the Flyway Instance: In the configuration, creating the Flyway instance allows you to customize the setup before Spring Boot runs any migrations. Specifically:

Custom Configuration: By creating the Flyway instance yourself, you can set properties directly on it (like baselineVersion, locations, dataSource, etc.) based on what’s defined in application.properties. This setup also gives flexibility to add conditional logic, if needed, for different environments.
Control over Repair and Migration: By defining your own Flyway bean, you gain explicit control over when repair() and migrate() are called and in what order, which can be important if you need to fix schema inconsistencies before applying any migrations.

Automation

/ok-to-test tags=""

🔍 Cypress test results

Warning

Tests have not run on the HEAD c23d8ef yet


Mon, 04 Nov 2024 09:41:52 UTC

Communication

Should the DevRel and Marketing teams inform users about this change?

  • Yes
  • No

Summary by CodeRabbit

  • New Features

    • Introduced a new configuration for database migration management with FlywayRepairConfig.
    • Enhanced application readiness handling with new event-driven approaches in UserConfig, ThemesConfig, and SeedMongoData.
    • Added a test configuration for Flyway migrations to ensure a clean database state during tests.
  • Bug Fixes

    • Improved clarity in configuration properties comments.
  • Chores

    • Removed outdated Flyway configuration properties to streamline database migration processes.
    • Updated SQL debugging configuration to utilize environment variables.
    • Added a new property to enable Flyway migrations during application tests.

@AnaghHegde AnaghHegde self-assigned this Oct 25, 2024
Copy link
Contributor

coderabbitai bot commented Oct 25, 2024

Walkthrough

A new configuration class, FlywayRepairConfig, has been added to manage Flyway database migrations within the Spring application. This class is responsible for creating and configuring a Flyway instance, which includes setting up connection details and executing migration scripts. Additionally, several Flyway-related properties have been removed from the application.properties file, indicating a shift in migration management practices.

Changes

File Path Change Summary
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java Added class FlywayRepairConfig with method public void onApplicationEvent(ApplicationStartingEvent event) to configure Flyway instance.
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/TenantConfig.java Updated to implement ApplicationListener<ApplicationReadyEvent>, changing event handling timing.
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/ThemesConfig.java Modified to implement ApplicationListener<ApplicationReadyEvent>, replacing createSystemTheme with onApplicationEvent.
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/UserConfig.java Updated to implement ApplicationListener<ApplicationReadyEvent>, replacing createSuperUsers with onApplicationEvent.
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayTestConfig.java Added test configuration class FlywayTestConfig with method public ApplicationRunner testFlywayMigrationRunner(Flyway flyway).
app/server/appsmith-server/src/main/resources/application.properties Removed properties: spring.flyway.enabled, spring.flyway.locations, spring.flyway.baseline-on-migrate, spring.flyway.baseline-version. Updated spring.jpa.show-sql to reference an environment variable.
app/server/appsmith-server/src/test/resources/application-test.properties Added property: spring.flyway.enabled=true to enable Flyway migrations during tests.

Possibly related PRs

Suggested labels

Task, ok-to-test, Move to Postgres, DB Infrastructure Pod

Suggested reviewers

  • abhvsn
  • nidhi-nair

🎉 In the code we see a new way,
Flyway's here to lead the way!
With properties trimmed, and clarity bright,
Migrations now take graceful flight.
So here's to changes, fresh and bold,
In the world of code, new stories unfold! 🎊


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Outside diff range and nitpick comments (1)
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (1)

1-34: Consider adding logging for migration operations.

Adding debug/info level logging would help track migration progress and troubleshooting.

Add logging statements:

+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;

 @Configuration
 public class FlywayRepairConfig {
+    private static final Logger logger = LoggerFactory.getLogger(FlywayRepairConfig.class);

     @Bean
     public Flyway flyway() {
+        logger.info("Initializing Flyway migration...");
         // ... existing code ...
+        logger.debug("Executing Flyway repair...");
         flyway.repair();
+        logger.debug("Executing Flyway migrate...");
         flyway.migrate();
+        logger.info("Flyway migration completed successfully");
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 96ad460 and 3717f0a.

📒 Files selected for processing (2)
  • app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (1 hunks)
  • app/server/appsmith-server/src/main/resources/application.properties (1 hunks)
🔇 Additional comments (5)
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (3)

1-8: LGTM! Dependencies look good.

All necessary Spring and Flyway imports are present.


9-18: LGTM! Clean constructor injection.

Good use of constructor injection with @Autowired annotation.


30-31: Verify concurrent migration safety.

The sequential repair() and migrate() calls could potentially cause issues in a multi-instance deployment.

Let's check if there are any distributed locking mechanisms in place:

✅ Verification successful

The previous search was too narrow. Let's broaden our search to understand how Flyway is configured and if there are any migration-related classes that might handle concurrency. Flyway has built-in locking mechanisms, but we need to verify how they're configured in this codebase.


Let's examine the complete Flyway configuration and any Spring configurations that might handle concurrent startup scenarios. We also need to check if there are any custom migration implementations that might affect the concurrent execution.


Flyway's built-in locking mechanism handles concurrent migrations safely

The current implementation is safe for concurrent execution because:

  • Flyway provides built-in distributed locking at the database level using its schema history table
  • The configuration uses default Flyway settings which include these safety mechanisms
  • The repair() operation is also protected by Flyway's internal locking
🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for distributed lock implementations
rg -l "DistributedLock|@Lock|@Synchronized" 

Length of output: 45


Script:

#!/bin/bash
# Let's search for Flyway configuration and locking mechanisms more broadly
rg -i "flyway.*lock|lock.*flyway" -A 5

# Also check for any custom Flyway configuration
rg -i "flywayconfig|flyway\.configure" -A 5

# Look for any database migration related classes
fd -e java -e xml -H migration

Length of output: 2550


Script:

#!/bin/bash
# Let's check the Flyway configuration class in detail
cat app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java

# Also check for any Spring configuration that might handle concurrent startup
rg -i "@configuration.*flyway|bean.*flyway" -A 5

# Check if there are any custom migration implementations
cat app/server/appsmith-server/src/main/java/com/appsmith/server/migrations/AppsmithJavaMigration.java

Length of output: 3057

app/server/appsmith-server/src/main/resources/application.properties (2)

17-18: LGTM: Environment-based SQL debugging configuration.

The change to use APPSMITH_SHOW_SQL environment variable provides better flexibility for different environments.


Line range hint 1-150: Verify Flyway configuration migration.

The removal of Flyway properties (spring.flyway.enabled, locations, baseline-on-migrate, baseline-version) aligns with the PR objective of programmatic configuration. However, ensure these settings are properly configured in the new FlywayRepairConfig class.

Let's verify the new configuration:

✅ Verification successful

Flyway configuration successfully migrated to Java-based configuration

The Flyway properties have been properly migrated from application.properties to the FlywayRepairConfig class with all essential configurations:

  • Baseline version and migrate settings preserved
  • Migration files location correctly set to classpath:com/appsmith/server/migrations
  • Database connection properly configured via DataSourceProperties
  • Migration files (V001-V007) present in the correct location

The programmatic configuration is complete and correct.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Description: Verify Flyway configuration in FlywayRepairConfig class
# Test: Search for Flyway configuration settings
rg -A 10 "class FlywayRepairConfig"

# Test: Check for potential Flyway property references
rg "spring.flyway"

Length of output: 1447


Script:

#!/bin/bash
# Let's check the complete Flyway configuration implementation
cat app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java

# Also check for any Flyway migration files
fd -t f -e sql "V[0-9].*\.sql$"

# Check for any other Flyway related configurations
rg -g "*.java" -A 5 "Flyway|@FlywayConfiguration"

Length of output: 5216

Copy link
Contributor

@abhvsn abhvsn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AnaghHegde now this is a bean how do we guarantee that flyway migration runs before the other beans are created?

@AnaghHegde
Copy link
Member Author

@abhvsn Thanks for highlighting this. This is fixed by using the ApplicationRunner.

Copy link

Failed server tests

  • com.appsmith.server.fork.ApplicationForkingServiceTests#cloneApplicationForkWithConfigurationFalseWithActionsThrice

@appsmithorg appsmithorg deleted a comment from github-actions bot Oct 25, 2024
@appsmithorg appsmithorg deleted a comment from github-actions bot Oct 25, 2024
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Outside diff range and nitpick comments (8)
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/ThemesConfig.java (2)

Line range hint 91-92: Remove duplicate repository call

The themeRepository.getSystemThemeByName() is called twice consecutively.

-            themeRepository.getSystemThemeByName(theme.getName());
             Theme savedTheme =
                     themeRepository.getSystemThemeByName(theme.getName()).orElse(null);

Line range hint 117-122: Consider using anyMatch() instead of filter().findFirst().isPresent()

The current stream operation chain can be simplified.

-            boolean isThemePermissionPresent = permissions.stream()
-                    .filter(p -> p.getAclPermission().equals(READ_THEMES)
-                            && p.getDocumentId().equals(finalSavedTheme.getId()))
-                    .findFirst()
-                    .isPresent();
+            boolean isThemePermissionPresent = permissions.stream()
+                    .anyMatch(p -> p.getAclPermission().equals(READ_THEMES)
+                            && p.getDocumentId().equals(finalSavedTheme.getId()));
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (2)

15-15: @Autowired annotation on the constructor is unnecessary

Since the class has only one constructor, the @Autowired annotation can be omitted for brevity.


34-34: Address the TODO comment

Ensure to remove the migration runner once the pg and release branches are merged, as indicated by the TODO.

Would you like me to open a GitHub issue to track this task?

app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/UserConfig.java (4)

Line range hint 73-73: Handle Optional.empty() before calling get() to prevent NoSuchElementException

You're calling get() on instanceAdminConfigurationOptional without ensuring it's present. If it's empty, this will throw a NoSuchElementException. Since you've logged an error when it's empty, you should return or handle the empty case appropriately.

Apply this diff to fix the issue:

 if (instanceAdminConfigurationOptional.isEmpty()) {
     log.error("Instance configuration not found. Cannot create super users.");
+    return;
 }
 Config instanceAdminConfiguration = instanceAdminConfigurationOptional.get();

Line range hint 83-83: Handle Optional.empty() before calling get() to prevent NoSuchElementException

You're calling get() on instanceAdminPGOptional without ensuring it's present. If it's empty, this will throw a NoSuchElementException. Since you've logged an error when it's empty, you should return or handle the empty case appropriately.

Apply this diff to fix the issue:

 if (instanceAdminPGOptional.isEmpty()) {
     log.error("Instance admin permission group not found. Cannot create super users.");
+    return;
 }
 PermissionGroup instanceAdminPG = instanceAdminPGOptional.get();

Line range hint 89-89: Handle Optional.empty() before calling get() to prevent NoSuchElementException

You're calling get() on tenantOptional without ensuring it's present. If it's empty, this will throw a NoSuchElementException. Since you've logged an error when it's empty, you should return or handle the empty case appropriately.

Apply this diff to fix the issue:

 if (tenantOptional.isEmpty()) {
     log.error("Default tenant not found. Cannot create super users.");
+    return;
 }
 Tenant tenant = tenantOptional.get();

Line range hint 100-114: Simplify user retrieval and creation logic using orElseGet

You can simplify the user retrieval and creation logic by using orElseGet on the Optional, making the code more concise and readable.

Apply this diff to refactor the code:

 Set<String> userIds = adminEmails.stream()
     .map(String::trim)
     .map(String::toLowerCase)
     .map(email -> {
-        User user = null;
-        Optional<User> userOptional = userRepository.findByEmail(email);
-        if (userOptional.isPresent()) {
-            user = userOptional.get();
-        }
-
-        if (user == null) {
+        User user = userRepository.findByEmail(email).orElseGet(() -> {
             log.info("Creating super user with username {}", email);
             return updateSuperUserHelper.createNewUser(
                     email,
                     tenant,
                     instanceAdminPG,
                     userRepository,
                     permissionGroupRepository,
                     policySolution,
                     policyGenerator);
-        }
+        });
         return user.getId();
     })
     .collect(Collectors.toSet());
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between 3717f0a and b16ee47.

📒 Files selected for processing (5)
  • app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (1 hunks)
  • app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/TenantConfig.java (3 hunks)
  • app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/ThemesConfig.java (2 hunks)
  • app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/UserConfig.java (3 hunks)
  • app/server/appsmith-server/src/main/resources/application.properties (1 hunks)
🚧 Files skipped from review as they are similar to previous changes (1)
  • app/server/appsmith-server/src/main/resources/application.properties
🔇 Additional comments (4)
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/TenantConfig.java (1)

10-10: LGTM: Good choice switching to ApplicationReadyEvent

The change from ApplicationStartedEvent to ApplicationReadyEvent is appropriate as it ensures tenant cleanup happens after all beans are fully initialized, which is crucial when working with database migrations.

Also applies to: 20-21

app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/ThemesConfig.java (1)

36-36: LGTM: Good choice using ApplicationListener

The change from @bean method to ApplicationListener is a better approach for initialization that depends on application readiness.

app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (2)

22-30: Externalize Flyway configuration properties

The Flyway configuration values are hardcoded. Consider moving locations, baselineOnMigrate, and baselineVersion to application.properties for flexibility and ease of maintenance.


38-39: Add error handling around Flyway operations

There is no error handling for flyway.repair() and flyway.migrate(). Including try-catch blocks will help manage potential exceptions during migration.

@appsmithorg appsmithorg deleted a comment from github-actions bot Oct 28, 2024
@appsmithorg appsmithorg deleted a comment from github-actions bot Oct 28, 2024
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Outside diff range and nitpick comments (2)
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/ThemesConfig.java (2)

114-115: Consider using method reference for predicate.

The lambda expression can be simplified using method reference.

-                    .anyMatch(p -> p.getAclPermission().equals(READ_THEMES)
-                            && p.getDocumentId().equals(finalSavedTheme.getId()));
+                    .anyMatch(p -> READ_THEMES.equals(p.getAclPermission())
+                            && finalSavedTheme.getId().equals(p.getDocumentId()));

Race conditions possible during theme initialization

The current implementation in ThemesConfig has potential race conditions during concurrent application startups:

  • Double check on getSystemThemeByName followed by save/update operations is not atomic
  • Multiple instances could simultaneously attempt to create/update the same theme
  • No transactional boundaries around the theme and permission group updates

Recommendations:

  • Use MongoDB's atomic findAndModify operation instead of separate find and save
  • Add @Transactional to ensure atomic updates across theme and permission group changes
  • Consider adding version field to themes for optimistic locking
🔗 Analysis chain

Line range hint 41-124: Verify database operations for potential race conditions.

The theme creation/update logic involves multiple database operations. We should ensure there are no race conditions during concurrent application startups.


Let me search for transaction management and synchronization in the relevant server code, particularly around theme-related operations. I'm also checking the theme repository implementation to understand how the database operations are handled.


I need to verify if we're using Spring's reactive MongoDB, which would handle concurrency differently than traditional MongoDB operations. This will help determine if the current implementation is safe for concurrent operations.


I need to verify the MongoDB configuration and repository pattern being used to understand if the operations are atomic and safe for concurrent access.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for any synchronized blocks or transaction management in similar config classes
rg -t java "synchronized|@Transactional" --glob "server/configurations/*.java"

Length of output: 229


Script:

#!/bin/bash
# Search for any synchronized blocks or transaction management in the server directory
rg -t java "synchronized|@Transactional" app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/

# Search for theme-related repository implementations
ast-grep --pattern 'class $_ implements ThemeRepository'

# Search for any transaction management in theme-related classes
rg -t java "@Transactional" -A 2 -B 2 app/server/appsmith-server/src/main/java/com/appsmith/server/ | grep -C 2 -i "theme"

Length of output: 2550


Script:

#!/bin/bash
# Check if ThemeRepository uses Spring's reactive MongoDB
ast-grep --pattern 'interface $_ extends ReactiveMongoRepository<Theme, String>'

# Look for the actual implementation of getSystemThemeByName
rg -t java "getSystemThemeByName" -A 5 app/server/appsmith-server/src/main/java/com/appsmith/server/

# Check if we're using reactive MongoDB operations
rg -t java "extends ReactiveMongoTemplate|extends ReactiveMongoOperations" app/server/appsmith-server/src/main/java/com/appsmith/server/

Length of output: 11221


Script:

#!/bin/bash
# Check the base repository class being used
rg -t java "class CustomThemeRepositoryCEImpl extends" -A 2 app/server/appsmith-server/src/main/java/com/appsmith/server/

# Look for MongoDB repository configuration
rg -t java "@EnableMongoRepositories|@Configuration.*Mongo" app/server/appsmith-server/src/main/java/com/appsmith/server/

# Check if we're using MongoDB's atomic operations
rg -t java "findAndModify|@Query.*value\s*=.*\$set" app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/

Length of output: 1356

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Files that changed from the base of the PR and between b16ee47 and 9459633.

📒 Files selected for processing (2)
  • app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/ThemesConfig.java (3 hunks)
  • app/server/appsmith-server/src/test/java/com/appsmith/server/configurations/SeedMongoData.java (2 hunks)
🔇 Additional comments (5)
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/ThemesConfig.java (3)

36-36: LGTM! Good transition to event-driven initialization.

The change to implement ApplicationListener is a better approach for initialization timing control.


41-52: Skip comment about method extraction.

A previous review already suggested extracting the resource loading logic to a separate method.


56-61: LGTM! Improved error handling.

The error handling has been enhanced with a more descriptive error message for JSON processing exceptions.

app/server/appsmith-server/src/test/java/com/appsmith/server/configurations/SeedMongoData.java (2)

18-19: LGTM: Import changes align with the new ApplicationListener implementation.


Line range hint 40-48: Verify test stability with the new ApplicationListener timing.

The change from ApplicationRunner to ApplicationListener affects when the test data is seeded. While this aligns with other configuration changes, we should verify that tests aren't impacted by this timing change.

Consider documenting the initialization order dependencies in a README or configuration guide, as this change is part of a broader initialization timing update across multiple configuration classes.

Copy link
Contributor

@abhvsn abhvsn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left few comments for clarity.

@@ -17,7 +17,7 @@
@Configuration
@RequiredArgsConstructor
@Slf4j
public class TenantConfig implements ApplicationListener<ApplicationStartedEvent> {
public class TenantConfig implements ApplicationListener<ApplicationReadyEvent> {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this was a deliberate choice to avoid any conflicts to fix the tenant object before the application ready event. Any reasone we are changing this?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is due to the migration issue. This would otherwise throw error that table does not exists.

@@ -31,20 +33,32 @@
@Configuration
@Slf4j
@RequiredArgsConstructor
public class ThemesConfig {
public class ThemesConfig implements ApplicationListener<ApplicationReadyEvent> {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's keep all the repetitive migration on ApplicationStartedEvent so that we will be sure on before the InstanceConfig all the migrations are completed.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is due to the migration issue. This would otherwise throw error that table does not exists.

// ApplicationRunner bean to run migrations at startup
// TODO - Remove this once the pg and release branch is merged
@Bean
public ApplicationRunner flywayMigrationRunner(Flyway flyway) {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you provide some insights when the flyway bean will be instantiated on the spring lifecycle events and at what point we are expecting the flyway will execute the migrations?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abhvsn This is done during ApplicationStartedEvent and flyway executes the migration and then the repetable migrations are executed.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AnaghHegde I don't think this will work as expected when we add a new field to the entity class as the structure of the table will be affected and repository beans will start complaining. Can we make sure the flyway migration is executed even before the beans are executed just like what it's present today?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abhvsn How does this cause the repository beans will start complaining

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AnaghHegde IMO this will be the case when we update the entity object which getting stored in the DB.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Outside diff range and nitpick comments (1)
app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (1)

35-36: Enhance logging for better observability

The current logging only shows total migration time. Consider adding more detailed logging:

-        MigrateResult result = flyway.migrate();
-        log.info(" Migration completed, total time " + result.getTotalMigrationTime());
+        MigrateResult result = flyway.migrate();
+        log.info("Migration completed - Success: {}, Migrations executed: {}, Time taken: {}ms",
+                result.success,
+                result.migrationsExecuted,
+                result.totalMigrationTime);
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL

📥 Commits

Reviewing files that changed from the base of the PR and between 9459633 and c23d8ef.

📒 Files selected for processing (3)
  • app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (1 hunks)
  • app/server/appsmith-server/src/test/java/com/appsmith/server/configurations/FlywayTestConfig.java (1 hunks)
  • app/server/appsmith-server/src/test/resources/application-test.properties (1 hunks)
✅ Files skipped from review due to trivial changes (1)
  • app/server/appsmith-server/src/test/resources/application-test.properties
🔇 Additional comments (4)
app/server/appsmith-server/src/test/java/com/appsmith/server/configurations/FlywayTestConfig.java (3)

1-8: LGTM! Clean and well-organized imports.


9-10: LGTM! Appropriate use of @TestConfiguration.


13-13: Verify @primary bean override behavior.

Ensure that overriding other ApplicationRunner beans with @primary doesn't affect critical startup sequences.

✅ Verification successful

@primary annotation is safe in this test configuration

The @primary ApplicationRunner bean in FlywayTestConfig is specifically scoped to tests (@TestConfiguration) and doesn't interfere with the main Flyway configuration, which uses ApplicationListener instead of ApplicationRunner. The test bean's purpose is to ensure proper database state during tests.

🏁 Scripts executed

The following scripts were executed for the analysis:

Script:

#!/bin/bash
# Search for other ApplicationRunner beans that might be affected
ast-grep --pattern 'class $_ {
  $$$
  @Bean
  $$$
  ApplicationRunner $_($$$) {
    $$$
  }
  $$$
}'

Length of output: 103


Script:

#!/bin/bash
# Let's try a different approach to find ApplicationRunner beans
# Search for ApplicationRunner implementations and Bean annotations
rg -U "ApplicationRunner.*implements|@Bean.*ApplicationRunner" -A 5

# Also search for Primary annotations near ApplicationRunner
rg -U "@Primary.*ApplicationRunner|ApplicationRunner.*@Primary" -A 5

# Search for files containing both Bean and ApplicationRunner
rg -l "@Bean" | xargs rg -l "ApplicationRunner"

Length of output: 284


Script:

#!/bin/bash
# Let's examine the content of the FlywayTestConfig file
cat app/server/appsmith-server/src/test/java/com/appsmith/server/configurations/FlywayTestConfig.java

# Also search for any other Flyway-related configuration files
rg -l "Flyway" --type java

Length of output: 879


Script:

#!/bin/bash
# Let's check the content of the main Flyway configuration
cat app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java

# Search for any test classes that might be affected by this configuration
rg -l "FlywayTestConfig" --type java

Length of output: 1735

app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/FlywayRepairConfig.java (1)

16-21: LGTM!

Clean implementation with proper dependency injection.

Comment on lines +12 to +19
@Bean
@Primary
public ApplicationRunner testFlywayMigrationRunner(Flyway flyway) {
return args -> {
flyway.repair();
flyway.migrate();
};
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Add error handling for Flyway operations.

The Flyway repair and migrate operations can throw FlywayException. Consider adding appropriate error handling:

 @Bean
 @Primary
 public ApplicationRunner testFlywayMigrationRunner(Flyway flyway) {
     return args -> {
-        flyway.repair();
-        flyway.migrate();
+        try {
+            flyway.repair();
+            flyway.migrate();
+        } catch (FlywayException e) {
+            throw new RuntimeException("Failed to execute Flyway migrations", e);
+        }
     };
 }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
@Bean
@Primary
public ApplicationRunner testFlywayMigrationRunner(Flyway flyway) {
return args -> {
flyway.repair();
flyway.migrate();
};
}
@Bean
@Primary
public ApplicationRunner testFlywayMigrationRunner(Flyway flyway) {
return args -> {
try {
flyway.repair();
flyway.migrate();
} catch (FlywayException e) {
throw new RuntimeException("Failed to execute Flyway migrations", e);
}
};
}

Comment on lines +8 to +14
import org.springframework.boot.context.event.ApplicationStartingEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.Configuration;

@Configuration
@Slf4j
public class FlywayRepairConfig implements ApplicationListener<ApplicationStartingEvent> {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue

Consider using a later lifecycle event for Flyway execution

Using ApplicationStartingEvent is too early in the Spring lifecycle and could cause initialization issues. Consider using ApplicationStartedEvent, CommandLineRunner, or ApplicationRunner instead to ensure proper initialization order.

-import org.springframework.boot.context.event.ApplicationStartingEvent;
+import org.springframework.boot.context.event.ApplicationStartedEvent;
 import org.springframework.context.ApplicationListener;
 import org.springframework.context.annotation.Configuration;

 @Configuration
 @Slf4j
-public class FlywayRepairConfig implements ApplicationListener<ApplicationStartingEvent> {
+public class FlywayRepairConfig implements ApplicationListener<ApplicationStartedEvent> {
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
import org.springframework.boot.context.event.ApplicationStartingEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.Configuration;
@Configuration
@Slf4j
public class FlywayRepairConfig implements ApplicationListener<ApplicationStartingEvent> {
import org.springframework.boot.context.event.ApplicationStartedEvent;
import org.springframework.context.ApplicationListener;
import org.springframework.context.annotation.Configuration;
@Configuration
@Slf4j
public class FlywayRepairConfig implements ApplicationListener<ApplicationStartedEvent> {

.baselineOnMigrate(true)
.baselineVersion("0")
.load();
flyway.repair();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Refactor suggestion

Make repair() execution conditional

Since repair() is needed specifically for Spotless-related checksum changes, consider making it conditional to avoid unnecessary execution during every startup.

+        boolean needsRepair = Boolean.getBoolean("flyway.repair");
+        if (needsRepair) {
         flyway.repair();
+            log.info("Flyway repair completed");
+        }
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
flyway.repair();
boolean needsRepair = Boolean.getBoolean("flyway.repair");
if (needsRepair) {
flyway.repair();
log.info("Flyway repair completed");
}

Copy link

github-actions bot commented Nov 4, 2024

Failed server tests

  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceCECompatibleEeSameImplMethod_ceCompatibleImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceCECompatibleEeSameImplMethod_eeImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeDiffMethodReturnsFlux_ceImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeDiffMethodReturnsFlux_eeImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeDiffMethod_ceImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeDiffMethod_eeImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeSyncMethod_ceImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeSyncMethod_eeImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeThrowAppsmithException_eeImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#ceEeThrowNonAppsmithException_eeImplTest_throwExceptionFromAspect
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#eeCeCompatibleDiffMethod_ceCompatibleImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#eeCeCompatibleDiffMethod_eeImplTest
  • com.appsmith.server.aspect.FeatureFlaggedMethodInvokerAspectTest#testEEOnlyMethod
  • com.appsmith.server.configurations.CommonConfigTest#objectMapper_BeanCreated_WithPublicJsonViewAsDefault
  • com.appsmith.server.connectionpoolconfig.configurations.ConnectionPoolConfigCETest#
  • com.appsmith.server.connectionpoolconfig.configurations.ConnectionPoolConfigCETest#verifyGetMaxConnectionPoolSizeProvidesDefaultValue
  • com.appsmith.server.controllers.ApplicationControllerTest#
  • com.appsmith.server.controllers.ApplicationControllerTest#whenFileUploadedWithLongHeader_thenVerifyErrorStatus
  • com.appsmith.server.controllers.ApplicationControllerTest#whenFileUploadedWithShortHeader_thenVerifySuccessStatus
  • com.appsmith.server.controllers.PageControllerTest#
  • com.appsmith.server.controllers.PageControllerTest#emptyCustomSlugShouldBeOkay
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[10]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[11]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[12]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[13]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[14]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[15]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[1]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[2]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[3]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[4]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[5]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[6]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[7]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[8]
  • com.appsmith.server.controllers.PageControllerTest#invalidCustomSlug(String)[9]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[10]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[11]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[12]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[13]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[14]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[15]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[16]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[17]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[18]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[19]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[1]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[20]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[21]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[22]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[23]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[24]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[25]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[26]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[27]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[28]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[29]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[2]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[30]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[31]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[32]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[33]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[34]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[35]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[36]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[37]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[38]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[39]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[3]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[40]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[41]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[42]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[43]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[44]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[45]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[46]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[47]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[48]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[49]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[4]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[50]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[51]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[52]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[53]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[54]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[55]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[56]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[57]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[58]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[59]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[5]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[60]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[61]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[62]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[63]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[64]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[65]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[66]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[67]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[68]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[69]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[6]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[70]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[71]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[72]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[73]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[74]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[75]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[76]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[77]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[78]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[79]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[7]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[80]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[81]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[82]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[83]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[84]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[85]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[86]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[87]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[88]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[89]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[8]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[90]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[91]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[92]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[93]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[94]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[95]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[96]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[97]
  • com.appsmith.server.controllers.PageControllerTest#invalidName(String)[9]
  • com.appsmith.server.controllers.PageControllerTest#noBody
  • com.appsmith.server.controllers.WorkspaceControllerTest#
  • com.appsmith.server.controllers.WorkspaceControllerTest#getWorkspaceNoName
  • com.appsmith.server.fork.ForkingServiceTest#cloneApplication_whenDslParsingFails_shouldSucceed
  • com.appsmith.server.git.CommonGitServiceCETest#
  • com.appsmith.server.git.CommonGitServiceCETest#checkoutBranch_branchNotProvided_throwInvalidParameterError
  • com.appsmith.server.git.CommonGitServiceCETest#checkoutRemoteBranch_CustomThemeSetToDefaultAppAndRemoteBranch_AppAndThemesCreated
  • com.appsmith.server.git.CommonGitServiceCETest#checkoutRemoteBranch_WhenApplicationObjectIsPresent_NewAppNotCreated
  • com.appsmith.server.git.CommonGitServiceCETest#checkoutRemoteBranch_notPresentInLocal_newApplicationCreated
  • com.appsmith.server.git.CommonGitServiceCETest#checkoutRemoteBranch_presentInLocal_throwError
  • com.appsmith.server.git.CommonGitServiceCETest#commitAndPushApplication_WithMultipleUsers_success
  • com.appsmith.server.git.CommonGitServiceCETest#commitAndPushApplication_cancelledMidway_pushSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#commitAndPushApplication_commitAndPushChanges_success
  • com.appsmith.server.git.CommonGitServiceCETest#commitAndPushApplication_noChangesToCommitWithLocalCommitsToPush_pushSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#commitArtifact_BranchIsProtected_Failure
  • com.appsmith.server.git.CommonGitServiceCETest#commitArtifact_applicationNotConnectedToGit_throwInvalidGitConfigException
  • com.appsmith.server.git.CommonGitServiceCETest#commitArtifact_commitChanges_success
  • com.appsmith.server.git.CommonGitServiceCETest#commitArtifact_localRepoNotAvailable_throwRepoNotFoundException
  • com.appsmith.server.git.CommonGitServiceCETest#commitArtifact_noChangesInLocal_emptyCommitMessage
  • com.appsmith.server.git.CommonGitServiceCETest#commitArtifact_protectedBranch_pushFails
  • com.appsmith.server.git.CommonGitServiceCETest#commitArtifact_pushFails_verifyAppNotPublished_throwUpstreamChangesFoundException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_ClonedRepoNotEmpty_Failure
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_EmptyOriginHeader_ThrowInvalidParameterException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_EmptyPrivateKey_ThrowInvalidGitConfigurationException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_EmptyPublicKey_ThrowInvalidGitConfigurationException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_EmptyRemoteUrl_ThrowInvalidParameterException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_InvalidFilePath_ThrowIOException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_InvalidGitApplicationMetadata_ThrowInvalidGitConfigurationException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_InvalidRemoteUrlHttp_ThrowInvalidRemoteUrl
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_InvalidRemoteUrl_ThrowInvalidRemoteUrl
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_WhenUserDoesNotHaveRequiredPermission_OperationFails
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_WithEmptyPublishedPages_CloneSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_WithNonEmptyPublishedPages_CloneSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_WithValidCustomGitDomain_CloneSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_WithoutGitProfileUsingDefaultProfile_CloneSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_WithoutGitProfileUsingLocalProfile_ThrowAuthorNameUnavailableError
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_cancelledMidway_cloneSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_cloneException_throwGitException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_moreThanSupportedPrivateRepos_throwException
  • com.appsmith.server.git.CommonGitServiceCETest#connectArtifactToGit_toggleAccessibilityToPublicForConnectedApp_connectSuccessful
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_BranchDeleteLogo_SrcLogoRemainsUnchanged
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_BranchHasCustomApplicationSettings_SrcBranchRemainsUnchanged
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_BranchSetPageIcon_SrcBranchPageIconRemainsNull
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_BranchUploadLogo_SrcBranchRemainsUnchanged
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_SrcHasCustomTheme_newApplicationCreatedWithThemesCopied
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_branchWithOriginPrefix_throwUnsupportedException
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_cancelledMidway_newApplicationCreated
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_duplicateNameBranchPresentInRemote_throwDuplicateKeyException
  • com.appsmith.server.git.CommonGitServiceCETest#createBranch_validCreateBranchRequest_newApplicationCreated
  • com.appsmith.server.git.CommonGitServiceCETest#deleteBranch_BranchIsProtected_Success
  • com.appsmith.server.git.CommonGitServiceCETest#deleteBranch_branchDoesNotExist_ThrowError
  • com.appsmith.server.git.CommonGitServiceCETest#deleteBranch_cancelledMidway_success
  • com.appsmith.server.git.CommonGitServiceCETest#deleteBranch_defaultBranchUpdated_Success
  • com.appsmith.server.git.CommonGitServiceCETest#deleteBranch_defaultBranch_ThrowError
  • com.appsmith.server.git.CommonGitServiceCETest#deleteBranch_existsInDB_Success
  • com.appsmith.server.git.CommonGitServiceCETest#deleteBranch_staleBranchNotInDB_NotFoundError
  • com.appsmith.server.git.CommonGitServiceCETest#detachRemote_EmptyGitData_NoChange
  • com.appsmith.server.git.CommonGitServiceCETest#detachRemote_WhenUserDoesNotHaveRequiredPermission_OperationFails
  • com.appsmith.server.git.CommonGitServiceCETest#detachRemote_applicationWithActionAndActionCollection_Success
  • com.appsmith.server.git.CommonGitServiceCETest#discardChanges_cancelledMidway_discardSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#discardChanges_upstreamChangesAvailable_discardSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#fetchFromRemote_WhenSuccessful_ReturnsResponse
  • com.appsmith.server.git.CommonGitServiceCETest#generateSSHKeyDefaultType_DataNotExistsInCollection_Success
  • com.appsmith.server.git.CommonGitServiceCETest#generateSSHKeyDefaultType_KeyExistsInCollection_Success
  • com.appsmith.server.git.CommonGitServiceCETest#generateSSHKeyRSAType_DataNotExistsInCollection_Success
  • com.appsmith.server.git.CommonGitServiceCETest#generateSSHKeyRSA_KeyExistsInCollection_Success
  • com.appsmith.server.git.CommonGitServiceCETest#getGitConnectedApps_privateRepositories_Success
  • com.appsmith.server.git.CommonGitServiceCETest#getProtectedBranches_WhenProtectedBranchListDoestNotExists_EmptyListReturned
  • com.appsmith.server.git.CommonGitServiceCETest#getProtectedBranches_WhenProtectedBranchListExists_ListReturned
  • com.appsmith.server.git.CommonGitServiceCETest#getProtectedBranches_WhenUserHasMultipleBranchProtected_ReturnsEmptyOrDefaultBranchOnly
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_InvalidRemoteUrl_ThrowError
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_emptyRepo_ThrowError
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_emptyWorkspaceId_ThrowError
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_privateRepoLimitReached_ThrowApplicationLimitError
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_validRequestWithDuplicateApplicationName_Success
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_validRequestWithDuplicateDatasourceOfDifferentType_ThrowError
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_validRequestWithDuplicateDatasourceOfSameTypeCancelledMidway_Success
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_validRequestWithDuplicateDatasourceOfSameType_Success
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_validRequestWithEmptyRepo_ThrowError
  • com.appsmith.server.git.CommonGitServiceCETest#importArtifactFromGit_validRequest_Success
  • com.appsmith.server.git.CommonGitServiceCETest#isBranchMergeable_checkMergingWithRemoteBranch_throwsUnsupportedOperationException
  • com.appsmith.server.git.CommonGitServiceCETest#isBranchMergeable_conflictingChanges_canNotBeMerged
  • com.appsmith.server.git.CommonGitServiceCETest#isBranchMergeable_nonConflictingChanges_canBeMerged
  • com.appsmith.server.git.CommonGitServiceCETest#isBranchMergeable_remoteAhead_remoteAheadErrorMessage
  • com.appsmith.server.git.CommonGitServiceCETest#listBranchForArtifact_WhenLocalRepoDoesNotExist_RepoIsClonedFromRemote
  • com.appsmith.server.git.CommonGitServiceCETest#listBranchForArtifact_applicationWithInvalidGitConfig_throwError
  • com.appsmith.server.git.CommonGitServiceCETest#listBranchForArtifact_defaultBranchChangesInRemoteDoesNotExistsInDB_Success
  • com.appsmith.server.git.CommonGitServiceCETest#listBranchForArtifact_defaultBranchChangesInRemoteExistsInDB_Success
  • com.appsmith.server.git.CommonGitServiceCETest#listBranchForArtifact_defaultBranchNotChangesInRemote_Success
  • com.appsmith.server.git.CommonGitServiceCETest#listBranchForArtifact_emptyGitMetadata_throwError
  • com.appsmith.server.git.CommonGitServiceCETest#pullChanges_FileSystemAccessError_throwError
  • com.appsmith.server.git.CommonGitServiceCETest#pullChanges_noUpstreamChanges_nothingToPullMessage
  • com.appsmith.server.git.CommonGitServiceCETest#pullChanges_upstreamChangesAvailable_pullSuccess
  • com.appsmith.server.git.CommonGitServiceCETest#toggleAutoCommit
  • com.appsmith.server.git.CommonGitServiceCETest#toggleAutoCommit_WhenUserDoesNotHavePermission_ExceptionThrown
  • com.appsmith.server.git.CommonGitServiceCETest#updateGitMetadata_EmptyData_Success
  • com.appsmith.server.git.CommonGitServiceCETest#updateGitMetadata_validData_Success
  • com.appsmith.server.git.CommonGitServiceCETest#updateProtectedBranches_WhenListContainsOnlyDefaultBranch_Success
  • com.appsmith.server.git.CommonGitServiceCETest#updateProtectedBranches_WhenListDoesNotContainOnlyDefaultBranch_ExceptionThrown
  • com.appsmith.server.git.CommonGitServiceCETest#updateProtectedBranches_WhenListIsEmpty_CurrentProtectedBranchesRemoved
  • com.appsmith.server.git.CommonGitServiceCETest#updateProtectedBranches_WhenOneOperationFails_ChangesReverted
  • com.appsmith.server.git.CommonGitServiceCETest#updateProtectedBranches_WhenUserDoesNotHaveRequiredPermission_OperationFails
  • com.appsmith.server.git.GitExecutorTest#
  • com.appsmith.server.git.GitExecutorTest#checkoutBranch_InvalidBranchName_ThrowError
  • com.appsmith.server.git.GitExecutorTest#checkoutBranch_ModifiedFileContent_Success
  • com.appsmith.server.git.GitExecutorTest#checkoutBranch_ModifiedFilesNonConflictingChanges_Success
  • com.appsmith.server.git.GitExecutorTest#checkoutBranch_NothingToCommit_Success
  • com.appsmith.server.git.GitExecutorTest#checkoutBranch_ValidBranchName_Success
  • com.appsmith.server.git.GitExecutorTest#commit_validChange_Success
  • com.appsmith.server.git.GitExecutorTest#createBranch_duplicateName_ThrowError
  • com.appsmith.server.git.GitExecutorTest#createBranch_validName_success
  • com.appsmith.server.git.GitExecutorTest#deleteBranch_emptyRepo_Success
  • com.appsmith.server.git.GitExecutorTest#deleteBranch_inValidBranch_Success
  • com.appsmith.server.git.GitExecutorTest#deleteBranch_validBranch_Success
  • com.appsmith.server.git.GitExecutorTest#getCommitHistory_EmptyRepo_Error
  • com.appsmith.server.git.GitExecutorTest#getCommitHistory_NonEmptyRepo_Success
  • com.appsmith.server.git.GitExecutorTest#getStatus_ChangeInDatasources_Success
  • com.appsmith.server.git.GitExecutorTest#getStatus_ChangeInJsLibs_Success
  • com.appsmith.server.git.GitExecutorTest#getStatus_ChangeInJsObjects_Success
  • com.appsmith.server.git.GitExecutorTest#getStatus_ChangeInPages_Success
  • com.appsmith.server.git.GitExecutorTest#getStatus_ChangeInQueries_Success
  • com.appsmith.server.git.GitExecutorTest#getStatus_ChangesInBranch_Success
  • com.appsmith.server.git.GitExecutorTest#getStatus_noChangesInBranch_Success
  • com.appsmith.server.git.GitExecutorTest#isMergeBranch_NoChanges_CanBeMerged
  • com.appsmith.server.git.GitExecutorTest#isMergeBranch_NonConflictingChanges_CanBeMerged
  • com.appsmith.server.git.GitExecutorTest#listBranches_LocalMode_Success
  • com.appsmith.server.git.GitExecutorTest#mergeBranchStatus_NoChanges_Mergeable
  • com.appsmith.server.git.GitExecutorTest#mergeBranchStatus_WithConflicts_ShowConflictFiles
  • com.appsmith.server.git.GitExecutorTest#mergeBranchStatus_WithOutConflicts_Mergeable
  • com.appsmith.server.git.GitExecutorTest#mergeBranch_NoChanges_SuccessUpToDate
  • com.appsmith.server.git.GitExecutorTest#mergeBranch_WithConflicts_Failure
  • com.appsmith.server.git.GitExecutorTest#mergeBranch_WithOutConflicts_Success
  • com.appsmith.server.git.GitExecutorTest#resetToLastCommit_WithOutStaged_CleanStateForRepo
  • com.appsmith.server.git.ServerSchemaMigrationEnforcerTest#
  • com.appsmith.server.git.ServerSchemaMigrationEnforcerTest#autocommitMigration_WhenServerVersionIsBehindDiffOccursAnd_CommitSuccess
  • com.appsmith.server.git.ServerSchemaMigrationEnforcerTest#importApplication_ThenExportApplication_MatchJson_equals_Success
  • com.appsmith.server.git.ServerSchemaMigrationEnforcerTest#saveGitRepo_ImportAndThenExport_diffOccurs
  • com.appsmith.server.git.ServerSchemaMigrationEnforcerTest#savedFile_reSavedWithSameSerialisationLogic_noDiffOccurs
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitDSLMigration_WhenAutoCommitAlreadyStarted_ReturnsFalse
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitDSLMigration_WhenNoAutoCommitInProgress_AllStepsSuccessfullyCompleted
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitDSLMigration_WhenPageDslAlreadyLatest_NoCommitMade
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitDSLMigration_WithFS_WhenNoAutoCommitInProgress_AllStepsSuccessfullyCompleted
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitServerMigration_WhenAutoCommitAlreadyStarted_ReturnsFalse
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitServerMigration_WhenNoAutoCommitInProgress_AllStepsSuccessfullyCompleted_CaseJsonSchemaMigration
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitServerMigration_WhenServerHasNoChanges_NoCommitMade
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autoCommitServerMigration_WhenServerRequiresMigration
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autocommitServerMigration_WhenJsonSchemaMigrationPresent_CommitSuccess
  • com.appsmith.server.git.autocommit.AutoCommitEventHandlerImplTest#autocommitServerMigration_WhenSerialisationLogicDoesNotChange_CommitFailure
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenAutoCommitAlreadyInProgressOnAnotherBranch_returnsLocked
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenAutoCommitAlreadyInProgressOnSameBranch_returnsInProgress
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenAutoCommitEligibleButPrerequisiteNotComplete_returnsRequired
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenAutoCommitNotEligible_returnsFalse
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenNoGitMetadata_returnsNonGitApp
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenOnlyClientIsEligibleForMigration_commitSuccess
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenOnlyServerIsEligibleForMigration_commitSuccess
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenServerIsRunningMigrationCallsAutocommitAgainOnDiffBranch_ReturnsAutoCommitLocked
  • com.appsmith.server.git.autocommit.AutoCommitServiceTest#testAutoCommit_whenServerIsRunningMigrationCallsAutocommitAgainOnSameBranch_ReturnsAutoCommitInProgress
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isAutoCommitRequired_whenClientAndServerAreEligible_verifyDTOReturnsTrue
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isAutoCommitRequired_whenClientAndServerAreNotEligible_verifyDTOReturnFalse
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isAutoCommitRequired_whenFeatureIsFlagFalse_returnsAllFalse
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isAutoCommitRequired_whenOnlyClientIsEligible_verifyDTOReturnTrue
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isAutoCommitRequired_whenOnlyServerIsEligible_verifyDTOReturnTrue
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isClientMigrationRequired_whenFeatureFlagIsFalse_returnsFalse
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isClientMigrationRequired_whenLatestDslIsAhead_returnsTrue
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isClientMigrationRequired_whenLatestDslIsNotAhead_returnsFalse
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isServerMigrationRequired_fileSystemOperation_returnsTrue
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isServerMigrationRequired_whenFeatureIsFlagFalse_returnsFalse
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isServerMigrationRequired_whenJsonSchemaIsAhead_returnsTrue
  • com.appsmith.server.git.autocommit.helpers.AutoCommitEligibilityHelperTest#isServerMigrationRequired_whenJsonSchemaIsNotAhead_returnsFalse
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#autoCommitApplication_WhenAllConditionsMatched_AutoCommitTriggered
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#autoCommitApplication_WhenAnotherCommitIsRunning_AutoCommitNotTriggered
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#autoCommitApplication_WhenAutoCommitDisabled_AutoCommitNotTriggered
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#autoCommitApplication_WhenBranchIsProtected_AutoCommitNotTriggered
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#autoCommitApplication_WhenRemoteAhead_AutoCommitNotTriggered
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#autoCommitApplication_WhenServerDoesNotRequireMigration_returnFalse
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#autoCommitApplication_WhenServerRequiresMigration_successIfEverythingIsRight
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#getAutoCommitProgress_WhenAutoCommitRunning_ReturnsValidResponse
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#getAutoCommitProgress_WhenNoAutoCommitFinished_ReturnsValidResponse
  • com.appsmith.server.git.autocommit.helpers.GitAutoCommitHelperImplTest#getAutoCommitProgress_WhenNoAutoCommitRunning_ReturnsValidResponse
  • com.appsmith.server.helpers.CacheableTemplateHelperTemplateJsonDataTest#getApplicationJson_cacheIsDirty_verifyDataIsFetchedFromSource
  • com.appsmith.server.helpers.CacheableTemplateHelperTemplateJsonDataTest#getApplicationJson_cacheIsEmpty_VerifyDataSavedInCache
  • com.appsmith.server.helpers.CacheableTemplateHelperTemplateJsonDataTest#getApplicationJson_cacheKeyIsMissing_verifyDataIsFetchedFromSource
  • com.appsmith.server.helpers.CacheableTemplateHelperTemplateMetadataTest#getTemplateData_cacheIsEmpty_VerifyDataSavedInCache
  • com.appsmith.server.helpers.FeatureFlagMigrationHelperTest#checkAndExecuteMigrationsForFeatureFlag_nullFeatureFlag_success
  • com.appsmith.server.helpers.FeatureFlagMigrationHelperTest#checkAndExecuteMigrationsForFeatureFlag_validFeatureFlag_success
  • com.appsmith.server.helpers.FeatureFlagMigrationHelperTest#getUpdatedFlagsWithPendingMigration_diffForExistingAndLatestFlag_pendingMigrationReportedWithDisableStatus
  • com.appsmith.server.helpers.FeatureFlagMigrationHelperTest#getUpdatedFlagsWithPendingMigration_diffForExistingAndLatestFlag_pendingMigrationReportedWithEnableStatus
  • com.appsmith.server.helpers.FeatureFlagMigrationHelperTest#getUpdatedFlagsWithPendingMigration_diffForExistingAndLatestFlag_sameFlagIsFlippedAsPerDBState_flagGetsRemovedFromPendingMigrationList
  • com.appsmith.server.helpers.FeatureFlagMigrationHelperTest#getUpdatedFlagsWithPendingMigration_fetchTenantFlagsFailedFromCS_pendingMigrationReported
  • com.appsmith.server.helpers.FeatureFlagMigrationHelperTest#getUpdatedFlagsWithPendingMigration_noDiffForExistingAndLatestFlag_noPendingMigrations
  • com.appsmith.server.helpers.GitFileUtilsTest#
  • com.appsmith.server.helpers.GitFileUtilsTest#getSerializableResource_allEntitiesArePresentForApplication_keysIncludesSeparator
  • com.appsmith.server.helpers.GitFileUtilsTest#getSerializableResource_withDeletedEntities_excludeDeletedEntities
  • com.appsmith.server.helpers.GitFileUtilsTest#reconstructApplicationFromLocalRepo_allResourcesArePresent_getClonedPublishedResources
  • com.appsmith.server.helpers.GitFileUtilsTest#saveApplicationToLocalRepo_allResourcesArePresent_removePublishedResources
  • com.appsmith.server.helpers.ObservationHelperTest#testCreateSpan_withNoMDC_returnsNOOP
  • com.appsmith.server.helpers.ObservationHelperTest#testCreateSpan_withNoSpanIdInMDC_returnsNOOP
  • com.appsmith.server.helpers.ObservationHelperTest#testCreateSpan_withNoTraceIdInMDC_returnsNOOP
  • com.appsmith.server.helpers.ce.EmailServiceHelperCETest#
  • com.appsmith.server.helpers.ce.EmailServiceHelperCETest#testEnrichWithBrandParams
  • com.appsmith.server.helpers.ce.EmailServiceHelperCETest#testGetAdminInstanceInviteTemplate
  • com.appsmith.server.helpers.ce.EmailServiceHelperCETest#testGetEmailVerificationTemplate
  • com.appsmith.server.helpers.ce.EmailServiceHelperCETest#testGetForgotPasswordTemplate
  • com.appsmith.server.helpers.ce.EmailServiceHelperCETest#testGetWorkspaceInviteTemplate
  • com.appsmith.server.helpers.ce.GitPrivateRepoCEImplTest#
  • com.appsmith.server.helpers.ce.GitPrivateRepoCEImplTest#isBranchProtected
  • com.appsmith.server.helpers.ce.GitPrivateRepoCEImplTest#isRepoLimitReached_connectedAppCountIsLessThanLimit_Success
  • com.appsmith.server.helpers.ce.GitPrivateRepoCEImplTest#isRepoLimitReached_connectedAppCountIsMoreThanLimit_Success
  • com.appsmith.server.helpers.ce.GitPrivateRepoCEImplTest#isRepoLimitReached_connectedAppCountIsSameAsLimit_Success
  • com.appsmith.server.helpers.ce.ImportArtifactPermissionProviderTest#tesBuilderIsSettingTheCorrectParametersToPermissionProvider
  • com.appsmith.server.helpers.ce.ImportArtifactPermissionProviderTest#tesHasCreatePermissionOnDomains_WhenPermissionGroupDoesNotMatch_ReturnsFalse
  • com.appsmith.server.helpers.ce.ImportArtifactPermissionProviderTest#tesHasEditPermissionOnDomains_WhenPermissionGroupDoesNotMatch_ReturnsFalse
  • com.appsmith.server.helpers.ce.ImportArtifactPermissionProviderTest#testAllPermissionsRequiredIsSettingAllPermissionsAsRequired
  • com.appsmith.server.helpers.ce.ImportArtifactPermissionProviderTest#testCheckPermissionMethods_WhenNoPermissionProvided_ReturnsTrue
  • com.appsmith.server.migrations.JsonSchemaMigrationTest#migrateApplicationJsonToLatestSchema_whenFeatureFlagIsOn_returnsIncrementedValue
  • com.appsmith.server.migrations.JsonSchemaMigrationTest#migrateArtifactToLatestSchema_whenFeatureFlagIsOn_returnsIncrementedValue
  • com.appsmith.server.migrations.JsonSchemaVersionsTest#getServerVersion_whenFeatureFlagIsOn_returnsIncremented
  • com.appsmith.server.notifications.EmailSenderTest#
  • com.appsmith.server.notifications.EmailSenderTest#itShouldNotSendMailsWithInvalidAddresses
  • com.appsmith.server.refactors.ce.RefactoringServiceCEImplTest#
  • com.appsmith.server.refactors.ce.RefactoringServiceCEImplTest#testRefactorCollectionName_withActions_returnsValidLayout
  • com.appsmith.server.refactors.ce.RefactoringServiceCEImplTest#testRefactorCollectionName_withDuplicateName_throwsError
  • com.appsmith.server.refactors.ce.RefactoringServiceCEImplTest#testRefactorCollectionName_withEmptyActions_returnsValidLayout
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#refactorActionName
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#refactorActionNameToDeletedName
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#refactorActionName_forGitConnectedAction_success
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#refactorDuplicateActionName
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#simpleWidgetNameRefactor
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#tableWidgetKeyEscapeRefactorName
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#testRefactorActionName_withInvalidName_throwsError
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#testRefactorCollection_withModifiedName_ignoresName
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#testRefactorWidgetName_forDefaultWidgetsInList_updatesBothWidgetsAndTemplateReferences
  • com.appsmith.server.refactors.ce.RefactoringServiceCETest#testWidgetNameRefactor_withSimpleUpdate_refactorsActionCollectionAndItsAction
  • com.appsmith.server.refactors.ce.RefactoringServiceTest#
  • com.appsmith.server.refactors.ce.RefactoringServiceTest#jsActionWithoutCollectionIdShouldBeIgnoredDuringNameChecking
  • com.appsmith.server.refactors.ce.RefactoringServiceTest#testIsNameAllowed_withRepeatedActionCollectionName_throwsError
  • com.appsmith.server.repositories.ApplicationSnapshotRepositoryTest#
  • com.appsmith.server.repositories.ApplicationSnapshotRepositoryTest#deleteAllByApplicationId_WhenMatched_ReturnsMatchedDocumentWithoutData
  • com.appsmith.server.repositories.ApplicationSnapshotRepositoryTest#findByApplicationId_WhenMatched_ReturnsMatchedDocumentWithoutData
  • com.appsmith.server.repositories.ApplicationSnapshotRepositoryTest#findWithoutData_WhenMatched_ReturnsMatchedDocumentWithoutData
  • com.appsmith.server.repositories.ApplicationSnapshotRepositoryTest#findWithoutData_WhenMultipleChunksArePresent_ReturnsSingleOne
  • com.appsmith.server.repositories.CacheableRepositoryTest#
  • com.appsmith.server.repositories.CacheableRepositoryTest#getUserPermissionsTest_onPermissionGroupDelete_valid
  • com.appsmith.server.repositories.CustomApplicationRepositoryImplTest#
  • com.appsmith.server.repositories.CustomApplicationRepositoryImplTest#getAllApplicationId_WhenDataExists_ReturnsList
  • com.appsmith.server.repositories.CustomApplicationRepositoryImplTest#getAllApplicationId_WhenNoneExists_ReturnsEmptyList
  • com.appsmith.server.repositories.CustomPluginRepositoryTest#
  • com.appsmith.server.repositories.CustomPluginRepositoryTest#findDefaultPluginIcons_WhenResultFound_OnlyDefaultInstallPluginsReturned
  • com.appsmith.server.repositories.CustomUserDataRepositoryTest#
  • com.appsmith.server.repositories.CustomUserDataRepositoryTest#fetchMostRecentlyUsedWorkspaceId_withAndWithoutRecentlyUsedIds_success
  • com.appsmith.server.repositories.CustomUserDataRepositoryTest#findPhotoAssetsByUserIds_WhenPhotoAssetIdExist_ReturnsPhotoAssetId
  • com.appsmith.server.repositories.CustomUserDataRepositoryTest#removeIdFromRecentlyUsedList_WhenWorkspaceIdAlreadyExists_WorkspaceIdRemoved
  • com.appsmith.server.repositories.CustomUserDataRepositoryTest#removeIdFromRecentlyUsedList_WhenWorkspaceIdDoesNotExist_NothingRemoved
  • com.appsmith.server.repositories.CustomUserDataRepositoryTest#removeIdFromRecentlyUsedList_WhenWorkspaceIdExists_BothAreRemoved
  • com.appsmith.server.repositories.UserRepositoryTest#
  • com.appsmith.server.repositories.UserRepositoryTest#findByCaseInsensitiveEmail_WhenCaseIsDifferent_ReturnsResult
  • com.appsmith.server.repositories.UserRepositoryTest#findByCaseInsensitiveEmail_WhenCaseIsSame_ReturnsResult
  • com.appsmith.server.repositories.UserRepositoryTest#findByCaseInsensitiveEmail_WhenMultipleMatches_ReturnsResult
  • com.appsmith.server.repositories.UserRepositoryTest#findByCaseInsensitiveEmail_WhenNoMatch_ReturnsNone
  • com.appsmith.server.repositories.UserRepositoryTest#testSkipAndLimitForUserRepo
  • com.appsmith.server.repositories.ce.CustomActionCollectionRepositoryCEImplTest#
  • com.appsmith.server.repositories.ce.CustomActionCollectionRepositoryCEImplTest#bulkInsert_WhenDuplicateId_ExceptionThrown
  • com.appsmith.server.repositories.ce.CustomActionCollectionRepositoryCEImplTest#bulkInsert_WhenInsertedWithProvidedId_InsertedWithProvidedId
  • com.appsmith.server.repositories.ce.CustomActionCollectionRepositoryCEImplTest#bulkUpdate_WhenIdMatches_ActionCollectionsUpdated
  • com.appsmith.server.repositories.ce.CustomNewActionRepositoryCEImplTest#
  • com.appsmith.server.repositories.ce.CustomNewActionRepositoryCEImplTest#archiveDeletedUnpublishedActions_WhenApplicationIdMatchesAndDeletedFromEditMode_ActionDeleted
  • com.appsmith.server.repositories.ce.CustomNewActionRepositoryCEImplTest#bulkInsert_WhenDuplicateId_ExceptionThrown
  • com.appsmith.server.repositories.ce.CustomNewActionRepositoryCEImplTest#bulkInsert_WhenInsertedWithProvidedId_InsertedWithProvidedId
  • com.appsmith.server.repositories.ce.CustomNewActionRepositoryCEImplTest#bulkUpdate_WhenIdMatches_NewActionsUpdated
  • com.appsmith.server.repositories.ce.CustomNewActionRepositoryCEImplTest#countActionsByPluginType_WhenMatchedApplicationId_ReturnsActualCount
  • com.appsmith.server.repositories.ce.CustomNewActionRepositoryCEImplTest#publishActions_WhenApplicationIdMatches_ActionPublished
  • com.appsmith.server.repositories.ce.CustomNewPageRepositoryTest#
  • com.appsmith.server.repositories.ce.CustomNewPageRepositoryTest#findPageWithoutBranchName
  • com.appsmith.server.repositories.ce.CustomNewPageRepositoryTest#publishPages_WhenIdMatches_Published
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#searchEntity_emptySizeParam_returnsNullForEntityList
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#searchEntity_fetchAllEntities_entriesPresentWithSearchString_returnsPaginatedResult
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#searchEntity_fetchAllEntities_nullSearchString_returnsPaginatedResult
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#searchEntity_fetchApplicationWithDefaultBranch_entriesPresentWithSearchString_returnsPaginatedResult
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#searchEntity_fetchApplications_entriesPresentWithSearchString_returnsPaginatedResult
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#searchEntity_fetchWorkspaces_entriesPresentWithSearchString_returnsPaginatedResult
  • com.appsmith.server.searchentities.SearchEntitySolutionCETest#searchEntity_noEntitiesWithSearchString_returnsEmptyList
  • com.appsmith.server.services.ActionCollectionServiceTest#
  • com.appsmith.server.services.ActionCollectionServiceTest#createValidActionCollectionAndCheckPermissions
  • com.appsmith.server.services.ActionCollectionServiceTest#refactorNameForActionRefactorsNameInCollection
  • com.appsmith.server.services.ActionCollectionServiceTest#testActionCollectionInViewMode
  • com.appsmith.server.services.ActionCollectionServiceTest#testCreateActionCollection
  • com.appsmith.server.services.ActionCollectionServiceTest#testCreateActionCollection_verifySoftDeletedCollectionIsNotLoaded
  • com.appsmith.server.services.ActionCollectionServiceTest#testDeleteActionCollection_afterApplicationPublish_clearsActionCollection
  • com.appsmith.server.services.ActionCollectionServiceTest#testMoveActionCollection_whenMovedAcrossPages_thenContainsNewPageId
  • com.appsmith.server.services.ActionCollectionServiceTest#testRefactorActionName_withActionNameEqualsRun_doesNotRefactorApiRunCalls
  • com.appsmith.server.services.ActionCollectionServiceTest#testUpdateUnpublishedActionCollection_withValidCollection_callsPageLayoutOnlyOnce
  • com.appsmith.server.services.ApplicationPageServiceTest#
  • com.appsmith.server.services.ApplicationPageServiceTest#cloneApplication_WhenClonedSuccessfully_ApplicationIsPublished
  • com.appsmith.server.services.ApplicationPageServiceTest#createApplicationWithId_throwsException
  • com.appsmith.server.services.ApplicationPageServiceTest#createOrUpdateSuffixedApplication_GitConnectedAppExistsWithSameName_AppCreatedWithSuffixedName
  • com.appsmith.server.services.ApplicationPageServiceTest#deleteUnpublishedPage_WhenPageDeleted_ApplicationEditDateSet
  • com.appsmith.server.services.ApplicationPageServiceTest#getPageAndMigrateDslByBranchAndDefaultPageId_WhenDSLHasNotVersion_DslMigratedToLatest
  • com.appsmith.server.services.ApplicationPageServiceTest#getPageAndMigrateDslByBranchAndDefaultPageId_WhenDslIsLatest_MigrationNotTriggered
  • com.appsmith.server.services.ApplicationPageServiceTest#getPageAndMigrateDslByBranchAndDefaultPageId_WhenEditModeDslIsNotLatest_EditModeDslMigrated
  • com.appsmith.server.services.ApplicationPageServiceTest#getPageAndMigrateDslByBranchAndDefaultPageId_WhenViewModeDslIsNotLatest_ViewModeDslMigrated
  • com.appsmith.server.services.ApplicationPageServiceTest#verifyGetPagesBasedOnApplicationMode_ReturnsRigthNumberOfPages_BasedOnApplicationMode
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#createApplicationSnapshot_OlderSnapshotExists_OlderSnapshotsRemoved
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#createApplicationSnapshot_WhenGitBranchExists_SnapshotCreatedWithBranchedAppId
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#createApplicationSnapshot_WhenNoPreviousSnapshotExists_NewCreated
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#createApplicationSnapshot_WhenSnapshotExists_ExistingSnapshotUpdated
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#deleteSnapshot_WhenSnapshotExists_Deleted
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#getWithoutDataByApplicationId_WhenSnapshotNotFound_ReturnsEmptySnapshot
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#restoreSnapshot_WhenNewPagesAddedAfterSnapshotTaken_NewPagesRemovedAfterSnapshotIsRestored
  • com.appsmith.server.services.ApplicationSnapshotServiceTest#restoreSnapshot_WhenSuccessfullyRestored_SnapshotDeleted
  • com.appsmith.server.services.ApplicationTemplateServiceTest#
  • com.appsmith.server.services.ApplicationTemplateServiceTest#test_application_published_as_community_template
  • com.appsmith.server.services.ConsolidateAPIServiceTest#
  • com.appsmith.server.services.ConsolidateAPIServiceTest#testErrorResponseWhenAnonymousUserAccessPrivateApp
  • com.appsmith.server.services.CurlImporterServiceTest#
  • com.appsmith.server.services.CurlImporterServiceTest#checkActionConfigurationFormDataForApiContentKey
  • com.appsmith.server.services.CurlImporterServiceTest#chromeCurlCommands1
  • com.appsmith.server.services.CurlImporterServiceTest#dontEatBackslashesInSingleQuotes
  • com.appsmith.server.services.CurlImporterServiceTest#firefoxCurlCommands1
  • com.appsmith.server.services.CurlImporterServiceTest#importInvalidCurlCommand
  • com.appsmith.server.services.CurlImporterServiceTest#importInvalidHeader
  • com.appsmith.server.services.CurlImporterServiceTest#importInvalidMethod
  • com.appsmith.server.services.CurlImporterServiceTest#importValidCurlCommand
  • com.appsmith.server.services.CurlImporterServiceTest#lexComments
  • com.appsmith.server.services.CurlImporterServiceTest#lexWhiteSpace
  • com.appsmith.server.services.CurlImporterServiceTest#missingMethod
  • com.appsmith.server.services.CurlImporterServiceTest#multilineCommand
  • com.appsmith.server.services.CurlImporterServiceTest#parseCurlCommand1
  • com.appsmith.server.services.CurlImporterServiceTest#parseMultiFormData
  • com.appsmith.server.services.CurlImporterServiceTest#parseMultipleData
  • com.appsmith.server.services.CurlImporterServiceTest#parseWithDashedUrlArgument
  • com.appsmith.server.services.CurlImporterServiceTest#parseWithDashedUrlArgument2
  • com.appsmith.server.services.CurlImporterServiceTest#parseWithJson
  • com.appsmith.server.services.CurlImporterServiceTest#parseWithSpacedHeader
  • com.appsmith.server.services.CurlImporterServiceTest#parseWithoutProtocol
  • com.appsmith.server.services.CurlImporterServiceTest#postmanCreateDatasource
  • com.appsmith.server.services.CurlImporterServiceTest#postmanCreateProvider
  • com.appsmith.server.services.CurlImporterServiceTest#postmanExportCommands1
  • com.appsmith.server.services.CurlImporterServiceTest#testImportActionOnEmptyInput
  • com.appsmith.server.services.CurlImporterServiceTest#testImportActionOnInvalidInput
  • com.appsmith.server.services.CurlImporterServiceTest#testImportActionOnNullInput
  • com.appsmith.server.services.CurlImporterServiceTest#testImportActionOnURLWithCurlyBraces
  • com.appsmith.server.services.CurlImporterServiceTest#testUrlEncodedData
  • com.appsmith.server.services.CurlImporterServiceTest#urlInSingleQuotes
  • com.appsmith.server.services.DatasourceContextServiceImplTest#
  • com.appsmith.server.services.DatasourceContextServiceImplTest#testDatasourceCache_afterDatasourceDeleted_doesNotReturnOldConnection
  • com.appsmith.server.services.DatasourceContextServiceTest#
  • com.appsmith.server.services.DatasourceContextServiceTest#checkDecryptionOfAuthenticationDTONullPassword
  • com.appsmith.server.services.DatasourceContextServiceTest#checkDecryptionOfAuthenticationDTOTest
  • com.appsmith.server.services.DatasourceContextServiceTest#testCachedDatasourceCreate
  • com.appsmith.server.services.DatasourceContextServiceTest#testDatasourceContextIsInvalid_whenCachedDatasourceContextMono_isInErrorState
  • com.appsmith.server.services.DatasourceContextServiceTest#testDatasourceCreate_withUpdatableConnection_recreatesConnectionAlways
  • com.appsmith.server.services.DatasourceContextServiceTest#testNewDatasourceContextCreate_whenCachedDatasourceContextMono_isInErrorState
  • com.appsmith.server.services.DatasourceContextServiceTest#testUpdateDatasourceAndSetAuthentication_withNoRealChange_keepsDatasourceConfigurationValuesDecrypted
  • com.appsmith.server.services.DatasourceContextServiceTest#verifyDatasourceContextHasRightCredentialsAfterVariableReplacement
  • com.appsmith.server.services.DatasourceContextServiceTest#verifyDatasourceContext_withRateLimitExceeded_returnsTooManyRequests
  • com.appsmith.server.services.DatasourceContextServiceTest#verifyDeleteDatasourceContext_whenContextDoesNotExist_returnsEmptyMono
  • com.appsmith.server.services.DatasourceContextServiceTest#verifyInitialiseDatasourceContextReturningRightIdentifier
  • com.appsmith.server.services.DatasourceServiceTest#
  • com.appsmith.server.services.DatasourceServiceTest#checkEncryptionOfAuthenticationDTOAfterRemoval
  • com.appsmith.server.services.DatasourceServiceTest#checkEncryptionOfAuthenticationDTOAfterUpdate
  • com.appsmith.server.services.DatasourceServiceTest#checkEncryptionOfAuthenticationDTONullPassword
  • com.appsmith.server.services.DatasourceServiceTest#checkEncryptionOfAuthenticationDTOTest
  • com.appsmith.server.services.DatasourceServiceTest#createAndUpdateDatasourceDifferentAuthentication
  • com.appsmith.server.services.DatasourceServiceTest#createAndUpdateDatasourceValidDB
  • com.appsmith.server.services.DatasourceServiceTest#createDatasourceNotInstalledPlugin
  • com.appsmith.server.services.DatasourceServiceTest#createDatasourceValid
  • com.appsmith.server.services.DatasourceServiceTest#createDatasourceWithHostnameStartingWithSpace
  • com.appsmith.server.services.DatasourceServiceTest#createDatasourceWithId
  • com.appsmith.server.services.DatasourceServiceTest#createDatasourceWithInvalidCharsInHost
  • com.appsmith.server.services.DatasourceServiceTest#createDatasourceWithNullPluginId
  • com.appsmith.server.services.DatasourceServiceTest#createNamelessDatasource
  • com.appsmith.server.services.DatasourceServiceTest#datasourceDefaultNameCounterAsPerWorkspaceId
  • com.appsmith.server.services.DatasourceServiceTest#deleteDatasourceWithActions
  • com.appsmith.server.services.DatasourceServiceTest#deleteDatasourceWithDeletedActions
  • com.appsmith.server.services.DatasourceServiceTest#deleteDatasourceWithoutActions
  • com.appsmith.server.services.DatasourceServiceTest#getErrorOnCreatingEmptyDatasource
  • com.appsmith.server.services.DatasourceServiceTest#get_WhenDatasourcesPresent_SortedAndIsRecentlyCreatedFlagSet
  • com.appsmith.server.services.DatasourceServiceTest#testDatasourceEmptyFields
  • com.appsmith.server.services.DatasourceServiceTest#testDatasourceValid
  • com.appsmith.server.services.DatasourceServiceTest#testHintMessageNPE
  • com.appsmith.server.services.DatasourceServiceTest#testHintMessageOnLocalhostIPAddressOnUpdateEventOnNonApiDatasource
  • com.appsmith.server.services.DatasourceServiceTest#testHintMessageOnLocalhostUrlOnCreateEventOnApiDatasource
  • com.appsmith.server.services.DatasourceServiceTest#testHintMessageOnLocalhostUrlOnCreateEventOnNonApiDatasource
  • com.appsmith.server.services.DatasourceServiceTest#testHintMessageOnLocalhostUrlOnTestDatasourceEvent
  • com.appsmith.server.services.DatasourceServiceTest#testHintMessageOnLocalhostUrlOnUpdateEventOnApiDatasource
  • com.appsmith.server.services.DatasourceServiceTest#testValidateDatasource_createDatasourceWithNullWorkspaceId
  • com.appsmith.server.services.DatasourceServiceTest#verifyTestDatasourceWithSavedDatasourceButNoDatasourceStorageSucceeds
  • com.appsmith.server.services.DatasourceServiceTest#verifyTestDatasourceWithoutSavedDatasource
  • com.appsmith.server.services.DatasourceServiceTest#verifyTestDatasource_withRateLimitExceeded_returnsTooManyRequests
  • com.appsmith.server.services.DatasourceServiceTest#verifyUpdateDatasourceStorageWithoutDatasourceId
  • com.appsmith.server.services.DatasourceServiceTest#verifyUpdateNameReturnsNullStorages
  • com.appsmith.server.services.DatasourceStorageServiceTest#
  • com.appsmith.server.services.DatasourceStorageServiceTest#verifyFindByDatasourceAndStorageIdGivesErrorWhenNoConfigurationIsPresent
  • com.appsmith.server.services.DatasourceStorageServiceTest#verifyFindByDatasourceAndStorageIdGivesErrorWhenStorageIsAbsent
  • com.appsmith.server.services.DatasourceStorageServiceTest#verifyFindByDatasourceId
  • com.appsmith.server.services.DatasourceStorageServiceTest#verifyStorageCreationErrorsOutWhenStorageAlreadyExists
  • com.appsmith.server.services.DatasourceStorageServiceTest#verifyStorageCreationSucceedsWithDifferentEnvironmentId
  • com.appsmith.server.services.LayoutActionServiceTest#
  • com.appsmith.server.services.LayoutActionServiceTest#OnLoadActionsWhenActionDependentOnActionViaWidget
  • com.appsmith.server.services.LayoutActionServiceTest#OnLoadActionsWhenActionDependentOnWidgetButNotPageLoadCandidate
  • com.appsmith.server.services.LayoutActionServiceTest#deleteUnpublishedAction_WhenActionDeleted_OnPageLoadActionsIsEmpty
  • com.appsmith.server.services.LayoutActionServiceTest#duplicateActionNameCreation
  • com.appsmith.server.services.LayoutActionServiceTest#introduceCyclicDependencyAndRemoveLater
  • com.appsmith.server.services.LayoutActionServiceTest#simpleOnPageLoadActionCreationTest
  • com.appsmith.server.services.LayoutActionServiceTest#tableWidgetKeyEscape
  • com.appsmith.server.services.LayoutActionServiceTest#testExecuteOnPageLoadOrderWhenAllActionsAreOnlyExplicitlySetToExecute
  • com.appsmith.server.services.LayoutActionServiceTest#testHintMessageOnLocalhostUrlOnUpdateActionEvent
  • com.appsmith.server.services.LayoutActionServiceTest#updateActionUpdatesLayout
  • com.appsmith.server.services.LayoutActionServiceTest#updateLayout_WhenOnLoadChanged_ActionExecuted
  • com.appsmith.server.services.LayoutActionServiceTest#updateLayout_WhenPageLoadActionSetBothWaysExplicitlyAndImplicitlyViaWidget_ActionsSaved
  • com.appsmith.server.services.LayoutActionServiceTest#updateLayout_withSelfReferencingWidget_updatesLayout
  • com.appsmith.server.services.LayoutActionServiceTest#updateMultipleLayouts_MultipleLayouts_LayoutsUpdated
  • com.appsmith.server.services.LayoutServiceTest#
  • com.appsmith.server.services.LayoutServiceTest#getActionsExecuteOnLoadWithAstLogic
  • com.appsmith.server.services.LayoutServiceTest#getActionsExecuteOnLoadWithAstLogic_withAllTypesOfActionReferences
  • com.appsmith.server.services.LayoutServiceTest#getActionsExecuteOnLoadWithoutAstLogic
  • com.appsmith.server.services.LayoutServiceTest#testIncorrectDynamicBindingPathInDsl
  • com.appsmith.server.services.LayoutServiceTest#testIncorrectMustacheExpressionInBindingInDsl
  • com.appsmith.server.services.LayoutServiceTest#updateLayoutInvalidAppId
  • com.appsmith.server.services.LayoutServiceTest#updateLayoutInvalidPageId
  • com.appsmith.server.services.LayoutServiceTest#updateLayoutValidPageId
  • com.appsmith.server.services.MockDataServiceTest#
  • com.appsmith.server.services.MockDataServiceTest#testCreateMockDataSetsDuplicateName
  • com.appsmith.server.services.MockDataServiceTest#testCreateMockDataSetsMongo
  • com.appsmith.server.services.MockDataServiceTest#testCreateMockDataSetsPostgres
  • com.appsmith.server.services.MockDataServiceTest#testGetMockDataSets
  • com.appsmith.server.services.NewPageServiceTest#
  • com.appsmith.server.services.NewPageServiceTest#findApplicationPage_CheckPageIcon_IsValid
  • com.appsmith.server.services.NewPageServiceTest#findApplicationPagesByApplicationIdViewMode_WhenApplicationHasNoHomePage_FirstPageIsSetAsHomePage
  • com.appsmith.server.services.NewPageServiceTest#findApplicationPagesInViewMode_WhenApplicationIdPresent_ReturnsViewMode
  • com.appsmith.server.services.NewPageServiceTest#findApplicationPages_WhenApplicationIdAndPageIdNotPresent_ThrowsException
  • com.appsmith.server.services.NewPageServiceTest#findApplicationPages_WhenApplicationIdPresent_ReturnsPages
  • com.appsmith.server.services.NewPageServiceTest#findApplicationPages_WhenPageIdPresent_ReturnsPages
  • com.appsmith.server.services.NewPageServiceTest#publishPages_WhenUserDoesNotHavePermissionOnPages_NotPublished
  • com.appsmith.server.services.NewPageServiceTest#updateDependencyMap_NotNullValueAndPublishApplication_shouldUpdateDependencyMap
  • com.appsmith.server.services.NewPageServiceTest#updateDependencyMap_NotNullValue_shouldUpdateDependencyMap
  • com.appsmith.server.services.NewPageServiceTest#updateDependencyMap_nullValue_shouldUpdateDependencyMap
  • com.appsmith.server.services.NewPageServiceTest#verifyCreateApplicationPagesDTO_ReturnsRightNumberOfPages_BasedOnViewMode
  • com.appsmith.server.services.PageServiceTest#
  • com.appsmith.server.services.PageServiceTest#addDuplicatePageToApplication
  • com.appsmith.server.services.PageServiceTest#clonePage
  • com.appsmith.server.services.PageServiceTest#clonePage_whenPageCloned_defaultIdsRetained
  • com.appsmith.server.services.PageServiceTest#createPageWithNullApplication
  • com.appsmith.server.services.PageServiceTest#createPageWithNullName
  • com.appsmith.server.services.PageServiceTest#createValidPage
  • com.appsmith.server.services.PageServiceTest#createValidPageWithLayout
  • com.appsmith.server.services.PageServiceTest#reOrderPageFromHighOrderToLowOrder
  • com.appsmith.server.services.PageServiceTest#reOrderPageFromLowOrderToHighOrder
  • com.appsmith.server.services.PageServiceTest#reorderPage_pageReordered_success
  • com.appsmith.server.services.PageServiceTest#reuseDeletedPageName
  • com.appsmith.server.services.PageServiceTest#updatePage_WhenCustomSlugSet_CustomSlugIsNotUpdated
  • com.appsmith.server.services.PageServiceTest#validChangePageNameAndPageIcon
  • com.appsmith.server.services.PermissionGroupServiceTest#
  • com.appsmith.server.services.PermissionGroupServiceTest#invalid_leaveRole
  • com.appsmith.server.services.PermissionGroupServiceTest#valid_leaveRole
  • com.appsmith.server.services.PluginServiceTest#
  • com.appsmith.server.services.PluginServiceTest#checkPluginExecutor
  • com.appsmith.server.services.PluginServiceTest#getPluginFormValid
  • com.appsmith.server.services.PluginServiceTest#getPluginFormWithNullEditorConfig
  • com.appsmith.server.services.PluginServiceTest#getPluginFormWithNullFormConfig
  • com.appsmith.server.services.ThemeServiceTest#
  • com.appsmith.server.services.ThemeServiceTest#changeCurrentTheme_WhenSystemThemeSetOverCustomTheme_NewThemeNotCreatedAndOldOneDeleted
  • com.appsmith.server.services.ThemeServiceTest#changeCurrentTheme_WhenSystemThemeSet_NoNewThemeCreated
  • com.appsmith.server.services.ThemeServiceTest#changeCurrentTheme_WhenUserHasNoPermission_ThrowsException
  • com.appsmith.server.services.ThemeServiceTest#changeCurrentTheme_WhenUserHasPermission_ThemesSetInEditMode
  • com.appsmith.server.services.ThemeServiceTest#cloneThemeToApplication_WhenSrcThemeIsCustomSavedTheme_NewCustomThemeCreated
  • com.appsmith.server.services.ThemeServiceTest#cloneThemeToApplication_WhenSrcThemeIsCustomTheme_NewThemeCreated
  • com.appsmith.server.services.ThemeServiceTest#cloneThemeToApplication_WhenSrcThemeIsSystemTheme_NoNewThemeCreated
  • com.appsmith.server.services.ThemeServiceTest#delete_WhenSavedCustomizedTheme_ThemeIsDeleted
  • com.appsmith.server.services.ThemeServiceTest#delete_WhenSystemTheme_NotAllowed
  • com.appsmith.server.services.ThemeServiceTest#delete_WhenUnsavedCustomizedTheme_NotAllowed
  • com.appsmith.server.services.ThemeServiceTest#getApplicationTheme_WhenNoThemeFoundWithId_DefaultThemeReturned
  • com.appsmith.server.services.ThemeServiceTest#getApplicationTheme_WhenThemeIsSet_ThemesReturned
  • com.appsmith.server.services.ThemeServiceTest#getApplicationTheme_WhenUserHasNoPermission_ExceptionThrows
  • com.appsmith.server.services.ThemeServiceTest#persistCurrentTheme_WhenCustomThemeIsSet_NewApplicationThemeCreated
  • com.appsmith.server.services.ThemeServiceTest#publishTheme_WhenApplicationIsPublic_PublishedThemeIsPublic
  • com.appsmith.server.services.ThemeServiceTest#publishTheme_WhenCustomThemeIsSet_ThemeCopiedForPublishedMode
  • com.appsmith.server.services.ThemeServiceTest#publishTheme_WhenNoThemeIsSet_SystemDefaultThemeIsSetToPublishedMode
  • com.appsmith.server.services.ThemeServiceTest#publishTheme_WhenSystemThemeIsSet_NoNewThemeCreated
  • com.appsmith.server.services.ThemeServiceTest#updateName_WhenCustomTheme_NameUpdated
  • com.appsmith.server.services.ThemeServiceTest#updateName_WhenSystemTheme_NotAllowed
  • com.appsmith.server.services.ThemeServiceTest#updateTheme_WhenCustomThemeIsSet_ThemeIsOverridden
  • com.appsmith.server.services.ThemeServiceTest#updateTheme_WhenSystemThemeIsSet_NewThemeCreated
  • com.appsmith.server.services.UsagePulseServiceTest#
  • com.appsmith.server.services.UsagePulseServiceTest#createPulse_inEditMode_withAnonymousUser_throwException
  • com.appsmith.server.services.UsagePulseServiceTest#createUsagePulse_forAppsmithCloud_pulseNotSavedInDB
  • com.appsmith.server.services.UsagePulseServiceTest#test_AnonymousUserPulse_Invalid_AnonymousUserId_ThrowsException
  • com.appsmith.server.services.UsagePulseServiceTest#test_AnonymousUserPulse_Success
  • com.appsmith.server.services.UsagePulseServiceTest#test_Invalid_ViewMode_ThrowsException
  • com.appsmith.server.services.UsagePulseServiceTest#test_loggedInUserPulse_Success
  • com.appsmith.server.services.UserDataServiceTest#
  • com.appsmith.server.services.UserDataServiceTest#deleteProfilePhotot_WhenExists_RemovedFromAssetAndUserData
  • com.appsmith.server.services.UserDataServiceTest#ensureViewedReleaseVersionNotesIsSet
  • com.appsmith.server.services.UserDataServiceTest#getAndUpdateDefaultGitProfile_fallbackValueFromUserProfileIfEmpty_updateWithProfile
  • com.appsmith.server.services.UserDataServiceTest#saveConfig_AuthorEmailNull_ThrowInvalidParameterError
  • com.appsmith.server.services.UserDataServiceTest#saveConfig_AuthorNameEmptyString_ThrowInvalidParameterError
  • com.appsmith.server.services.UserDataServiceTest#saveProfilePhoto_WhenPhotoUploaded_PhotoChangedEventTriggered
  • com.appsmith.server.services.UserDataServiceTest#saveRepoLevelConfig_AuthorEmailNullAndName_SavesGitProfile
  • com.appsmith.server.services.UserDataServiceTest#setViewedReleaseNotesVersion
  • com.appsmith.server.services.UserDataServiceTest#testUploadAndDeleteProfilePhoto_validImage
  • com.appsmith.server.services.UserDataServiceTest#testUploadProfilePhoto_invalidImageContent
  • com.appsmith.server.services.UserDataServiceTest#testUploadProfilePhoto_invalidImageFormat
  • com.appsmith.server.services.UserDataServiceTest#testUploadProfilePhoto_invalidImageSize
  • com.appsmith.server.services.UserDataServiceTest#updateLastUsedAppAndOrgList_TooManyRecentIds_ListsAreTruncated
  • com.appsmith.server.services.UserDataServiceTest#updateLastUsedAppAndWorkspaceList_WhenListIsEmpty_workspaceIdPrepended
  • com.appsmith.server.services.UserDataServiceTest#updateLastUsedAppAndWorkspaceList_WhenListIsNotEmpty_workspaceIdPrepended
  • com.appsmith.server.services.UserDataServiceTest#updateViewedReleaseNotesVersion
  • com.appsmith.server.services.UserServiceTest#
  • com.appsmith.server.services.UserServiceTest#buildUserProfileDTO_WhenAnonymousUser_ReturnsProfile
  • com.appsmith.server.services.UserServiceTest#createNewUserFormSignupNullPassword
  • com.appsmith.server.services.UserServiceTest#createNewUserValid
  • com.appsmith.server.services.UserServiceTest#createNewUser_WhenEmailHasUpperCase_SavedInLowerCase
  • com.appsmith.server.services.UserServiceTest#createUserWithInvalidEmailAddress
  • com.appsmith.server.services.UserServiceTest#emailVerificationTokenGenerate_WhenInstanceEmailVerificationIsNotEnabled_ThrowsException
  • com.appsmith.server.services.UserServiceTest#emailVerificationTokenGenerate_WhenUserEmailAlreadyVerified_ThrowsException
  • com.appsmith.server.services.UserServiceTest#forgotPasswordTokenGenerate_AfterTrying3TimesIn24Hours_ThrowsException
  • com.appsmith.server.services.UserServiceTest#getIntercomConsentOfUserOnCloudHosting_AlwaysTrue
  • com.appsmith.server.services.UserServiceTest#resetPasswordAfterForgotPassword_WhenMalformedToken_ThrowsException
  • com.appsmith.server.services.UserServiceTest#resetPasswordAfterForgotPassword_WhenTokenDoesNotMatch_ThrowsException
  • com.appsmith.server.services.UserServiceTest#signUpAfterBeingInvitedToAppsmithWorkspace
  • com.appsmith.server.services.UserServiceTest#signUpViaFormLoginIfAlreadyInvited
  • com.appsmith.server.services.UserServiceTest#signUpViaGoogleIfAlreadyInvited
  • com.appsmith.server.services.UserServiceTest#testCreateNewUser_assertUserManagementRole
  • com.appsmith.server.services.UserServiceTest#testUpdateCurrentUser_shouldNotUpdatePolicies
  • com.appsmith.server.services.UserServiceTest#testUpdateWithoutPermission_shouldUpdateChangedFields
  • com.appsmith.server.services.UserServiceTest#updateIntercomConsentOfUser
  • com.appsmith.server.services.UserServiceTest#updateInvalidUserWithAnything
  • com.appsmith.server.services.UserServiceTest#updateNameOfUser
  • com.appsmith.server.services.UserServiceTest#updateNameOfUser_WithAccentedCharacters_IsValid
  • com.appsmith.server.services.UserServiceTest#updateNameOfUser_WithNotAllowedSpecialCharacter_InvalidName
  • com.appsmith.server.services.UserServiceTest#updateNameProficiencyAndUseCaseOfUser
  • com.appsmith.server.services.UserServiceTest#updateNameRoleAndUseCaseOfUser
  • com.appsmith.server.services.UserServiceTest#updateRoleOfUser
  • com.appsmith.server.services.UserServiceTest#verifyPasswordResetToken_WhenMalformedToken_ThrowsException
  • com.appsmith.server.services.UserServiceTest#verifyPasswordResetToken_WhenTokenDoesNotExist_ThrowsException
  • com.appsmith.server.services.UserServiceTest#verifyPasswordResetToken_WhenTokenDoesNotMatch_ReturnsFalse
  • com.appsmith.server.services.UserServiceTest#verifyPasswordResetToken_WhenTokenMatches_ReturnsTrue
  • com.appsmith.server.services.UserServiceWithDisabledSignupTest#
  • com.appsmith.server.services.UserServiceWithDisabledSignupTest#createNewAdminValidWhenDisabled
  • com.appsmith.server.services.UserServiceWithDisabledSignupTest#createNewAdminValidWhenDisabled2
  • com.appsmith.server.services.UserServiceWithDisabledSignupTest#createNewUserValidWhenDisabled
  • com.appsmith.server.services.UserServiceWithDisabledSignupTest#signUpViaFormLoginIfAlreadyInvited
  • com.appsmith.server.services.UserWorkspaceServiceTest#
  • com.appsmith.server.services.UserWorkspaceServiceTest#invalid_removeAnotherDeveloperAsDeveloperInWorkspace
  • com.appsmith.server.services.UserWorkspaceServiceTest#leaveWorkspace_WhenUserDoesNotExistInWorkspace_ThrowsException
  • com.appsmith.server.services.UserWorkspaceServiceTest#leaveWorkspace_WhenUserExistsInWorkspace_RemovesUser
  • com.appsmith.server.services.UserWorkspaceServiceTest#updateUserGroupForMember_WhenAdminUserGroupRemovedButOtherAdminExists_MemberRemoved
  • com.appsmith.server.services.UserWorkspaceServiceTest#updateUserGroupForMember_WhenAdminUserGroupRemovedWithNoOtherAdmin_ThrowsExceptions
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#getUserWorkspacesByRecentlyUsedOrder_noRecentWorkspaces_allEntriesAreReturned
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#getUserWorkspacesByRecentlyUsedOrder_withRecentlyUsedWorkspaces_allEntriesWithSameOrderAreReturned
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#getWorkspaceMembers_WhenNoOrgFound_ThrowsException
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#getWorkspaceMembers_WhenRoleIsNull_ReturnsEmptyList
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#getWorkspaceMembers_WhenUserHasProfilePhotoForMultipleWorkspace_ProfilePhotoIncluded
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#getWorkspaceMembers_WhenUserHasProfilePhotoForOneWorkspace_ProfilePhotoIncluded
  • com.appsmith.server.services.UserWorkspaceServiceUnitTest#whenMapPermissionGroup_thenConvertsToPermissionGroupInfoDTO
  • com.appsmith.server.services.WorkspaceServiceTest#
  • com.appsmith.server.services.WorkspaceServiceTest#addNewUserToWorkspaceAsAdmin
  • com.appsmith.server.services.WorkspaceServiceTest#addNewUserToWorkspaceAsViewer
  • com.appsmith.server.services.WorkspaceServiceTest#addNewUsersBulkToWorkspaceAsViewer
  • com.appsmith.server.services.WorkspaceServiceTest#addUserToWorkspaceAsAdminAndCheckApplicationAndDatasourcePermissions
  • com.appsmith.server.services.WorkspaceServiceTest#addUserToWorkspaceAsViewerAndCheckApplicationPermissions
  • com.appsmith.server.services.WorkspaceServiceTest#addUserToWorkspaceIfUserAlreadyMember_throwsError
  • com.appsmith.server.services.WorkspaceServiceTest#checkNewUsersDefaultWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#createDefaultWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#createDuplicateNameWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#delete_WhenWorkspaceHasApp_ThrowsException
  • com.appsmith.server.services.WorkspaceServiceTest#delete_WhenWorkspaceHasNoApp_WorkspaceIsDeleted
  • com.appsmith.server.services.WorkspaceServiceTest#delete_WithoutManagePermission_ThrowsException
  • com.appsmith.server.services.WorkspaceServiceTest#getAllMembersForWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#getAllUserRolesForWorkspaceDomainAsAdministrator
  • com.appsmith.server.services.WorkspaceServiceTest#getWorkspaceInvalidId
  • com.appsmith.server.services.WorkspaceServiceTest#inValidupdateWorkspaceEmptyName
  • com.appsmith.server.services.WorkspaceServiceTest#inviteInvalidEmailTooLongDomainPart
  • com.appsmith.server.services.WorkspaceServiceTest#inviteInvalidEmailTooLongLocalPart
  • com.appsmith.server.services.WorkspaceServiceTest#nullCreateWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#nullName
  • com.appsmith.server.services.WorkspaceServiceTest#save_WhenNameIsPresent_SlugGenerated
  • com.appsmith.server.services.WorkspaceServiceTest#testDeleteLogo_invalidWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#testInviteDuplicateUsers_shouldReturnUniqueUsers
  • com.appsmith.server.services.WorkspaceServiceTest#testUpdateAndDeleteLogo_validLogo
  • com.appsmith.server.services.WorkspaceServiceTest#update_NewName_GroupNamesUpdated
  • com.appsmith.server.services.WorkspaceServiceTest#update_WhenNameIsNotPresent_SlugIsNotGenerated
  • com.appsmith.server.services.WorkspaceServiceTest#uploadWorkspaceLogo_largeFilePart
  • com.appsmith.server.services.WorkspaceServiceTest#uploadWorkspaceLogo_nullFilePart
  • com.appsmith.server.services.WorkspaceServiceTest#validCreateWorkspaceTest
  • com.appsmith.server.services.WorkspaceServiceTest#validGetWorkspaceByName
  • com.appsmith.server.services.WorkspaceServiceTest#validUpdateCorrectWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#validUpdateWorkspace
  • com.appsmith.server.services.WorkspaceServiceTest#validUpdateWorkspaceInvalidEmail
  • com.appsmith.server.services.WorkspaceServiceTest#validUpdateWorkspaceInvalidWebsite
  • com.appsmith.server.services.WorkspaceServiceTest#validUpdateWorkspaceValidEmail
  • com.appsmith.server.services.WorkspaceServiceTest#validUpdateWorkspaceValidWebsite
  • com.appsmith.server.services.ce.ActionServiceCE_Test#
  • com.appsmith.server.services.ce.ActionServiceCE_Test#checkActionInViewMode
  • com.appsmith.server.services.ce.ActionServiceCE_Test#checkNewActionAndNewDatasourceAnonymousPermissionInPublicApp
  • com.appsmith.server.services.ce.ActionServiceCE_Test#createActionWithBranchName_withNullPageId_throwException
  • com.appsmith.server.services.ce.ActionServiceCE_Test#createValidActionAndCheckPermissions
  • com.appsmith.server.services.ce.ActionServiceCE_Test#createValidActionNullActionConfiguration
  • com.appsmith.server.services.ce.ActionServiceCE_Test#createValidActionWithJustName
  • com.appsmith.server.services.ce.ActionServiceCE_Test#createValidAction_forGitConnectedApp_getValidPermissionAndDefaultIds
  • com.appsmith.server.services.ce.ActionServiceCE_Test#findByIdAndBranchName_forGitConnectedAction_getBranchedAction
  • com.appsmith.server.services.ce.ActionServiceCE_Test#getActionInViewMode
  • com.appsmith.server.services.ce.ActionServiceCE_Test#getActionsExecuteOnLoadPaginatedApi
  • com.appsmith.server.services.ce.ActionServiceCE_Test#invalidCreateActionInvalidPageId
  • com.appsmith.server.services.ce.ActionServiceCE_Test#invalidCreateActionNullName
  • com.appsmith.server.services.ce.ActionServiceCE_Test#invalidCreateActionNullPageId
  • com.appsmith.server.services.ce.ActionServiceCE_Test#moveAction_forGitConnectedApp_defaultResourceIdsUpdateSuccess
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testActionHasPathKeyEntryWhenActionIsUpdated
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testActionWithGraphQLDatasourceMoustacheBinding
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testActionWithNonAPITypeDatasourceMoustacheBinding
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testCreateActionWithOutOfRangeTimeout
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testCreateActionWithValidRangeTimeout
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testExecuteOnLoadParamOnActionCreateWithClonePageContext
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testExecuteOnLoadParamOnActionCreateWithDefaultContext
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testUpdateActionWithOutOfRangeTimeout
  • com.appsmith.server.services.ce.ActionServiceCE_Test#testUpdateActionWithValidRangeTimeout
  • com.appsmith.server.services.ce.ActionServiceCE_Test#updateActionShouldSetUpdatedAtField
  • com.appsmith.server.services.ce.ActionServiceCE_Test#updateShouldNotResetUserSetOnLoad
  • com.appsmith.server.services.ce.ActionServiceCE_Test#validMoveAction
  • com.appsmith.server.services.ce.ActionServiceCE_Test#validateAndSaveActionToRepository_ActionDTOHasCreatedAtUpdatedAtFieldsPresent
  • com.appsmith.server.services.ce.ActionServiceCE_Test#validateAndSaveActionToRepository_noDatasourceEditPermission
  • com.appsmith.server.services.ce.ApplicationServiceCETest#
  • com.appsmith.server.services.ce.ApplicationServiceCETest#basicPublishApplicationTest
  • com.appsmith.server.services.ce.ApplicationServiceCETest#changeDefaultPageForAPublishedApplication
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_WhenClonedSuccessfully_InternalFieldsResetToNull
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_WithCustomSavedTheme_ThemesAlsoCopied
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_applicationWithGitMetadataAndActions_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_applicationWithGitMetadata_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_noDatasourceCreateActionPermissions
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_noPageEditPermissions
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_withActionAndActionCollection_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneApplication_withDeletedActionInActionCollection_deletedActionIsNotCloned
  • com.appsmith.server.services.ce.ApplicationServiceCETest#cloneGitConnectedApplication_withUpdatedDefaultBranch_sucess
  • com.appsmith.server.services.ce.ApplicationServiceCETest#createApplicationWithDuplicateName
  • com.appsmith.server.services.ce.ApplicationServiceCETest#createApplicationWithNullName
  • com.appsmith.server.services.ce.ApplicationServiceCETest#createValidApplication
  • com.appsmith.server.services.ce.ApplicationServiceCETest#defaultPageCreateOnCreateApplicationTest
  • com.appsmith.server.services.ce.ApplicationServiceCETest#deleteApplication_WithDeployKeysNotConnectedToRemote_Success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#deleteApplication_withNullGitData_Success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#deleteApplication_withPagesActionsAndActionCollections_resourcesArchived
  • com.appsmith.server.services.ce.ApplicationServiceCETest#deleteUnpublishedPageFromApplication
  • com.appsmith.server.services.ce.ApplicationServiceCETest#deleteUnpublishedPage_FromApplicationConnectedToGit_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#findByWorkspaceIdAndDefaultApplicationsInRecentlyUsedOrder_applicationPresentInWorkspace_recentlyUsedAppsAbsent_allAppsAreReturned
  • com.appsmith.server.services.ce.ApplicationServiceCETest#findByWorkspaceIdAndDefaultApplicationsInRecentlyUsedOrder_applicationPresentInWorkspace_recentlyUsedAppsPresent_orderedListIsReturned
  • com.appsmith.server.services.ce.ApplicationServiceCETest#findByWorkspaceIdAndDefaultApplicationsInRecentlyUsedOrder_invalidWorkspaceId_throwException
  • com.appsmith.server.services.ce.ApplicationServiceCETest#findByWorkspaceIdAndDefaultApplicationsInRecentlyUsedOrder_noApplicationPresentInWorkspace_emptyListIsReturned
  • com.appsmith.server.services.ce.ApplicationServiceCETest#generateSshKeyPair_WhenDefaultApplicationIdNotSet_CurrentAppUpdated
  • com.appsmith.server.services.ce.ApplicationServiceCETest#generateSshKeyPair_WhenDefaultApplicationIdSet_DefaultApplicationUpdated
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationByDefaultIdAndBranchName_emptyBranchName_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationByDefaultIdAndBranchName_invalidBranchName_throwException
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationByDefaultIdAndBranchName_validBranchName_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationConnectedToGit_defaultBranchUpdated_returnBranchSpecificApplication
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationInViewMode
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationInvalidId
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationNullId
  • com.appsmith.server.services.ce.ApplicationServiceCETest#getApplicationsByBranchName_validBranchName_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#invalidUpdateApplication
  • com.appsmith.server.services.ce.ApplicationServiceCETest#makeApplicationPrivate_applicationWithGitMetadata_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#makeApplicationPublic_applicationWithGitMetadata_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#newApplicationShouldHavePublishedState
  • com.appsmith.server.services.ce.ApplicationServiceCETest#publishApplication_noPageEditPermissions
  • com.appsmith.server.services.ce.ApplicationServiceCETest#publishApplication_withArchivedUnpublishedResources_resourcesArchived
  • com.appsmith.server.services.ce.ApplicationServiceCETest#publishApplication_withGitConnectedApp_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#publishApplication_withPageIconSet_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#reuseDeletedAppName
  • com.appsmith.server.services.ce.ApplicationServiceCETest#saveLastEditInformation_WhenUserHasPermission_Updated
  • com.appsmith.server.services.ce.ApplicationServiceCETest#testCacheEviction_whenPagesDeletedInEditModeFollowedByAppPublish_shouldInvalidateCache
  • com.appsmith.server.services.ce.ApplicationServiceCETest#testCreatePage_lastModifiedByShouldGetChanged
  • com.appsmith.server.services.ce.ApplicationServiceCETest#testPublicApp_whenMultiplePublicAppsInWorkspaceAndOneAccessRevoked_otherPublicAppRetainsAccessToWorkspaceLevelResources
  • com.appsmith.server.services.ce.ApplicationServiceCETest#testUpdateApplication_modifiedByShouldUpdate
  • com.appsmith.server.services.ce.ApplicationServiceCETest#testUploadAndDeleteNavigationLogo_validImage
  • com.appsmith.server.services.ce.ApplicationServiceCETest#testUploadNavigationLogo_invalidImageFormat
  • com.appsmith.server.services.ce.ApplicationServiceCETest#testUploadNavigationLogo_invalidImageSize
  • com.appsmith.server.services.ce.ApplicationServiceCETest#updateApplicationByIdAndBranchName_validBranchName_success
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validChangeViewAccessCancelledMidWay
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validCloneApplicationWhenCancelledMidWay
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validGetApplicationById
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validGetApplicationPagesMultiPageApp
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validGetApplications
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validMakeApplicationPrivate
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validMakeApplicationPublic
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validMakeApplicationPublicWithActions
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validPrivateAppUpdateApplication
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validPublicAppUpdateApplication
  • com.appsmith.server.services.ce.ApplicationServiceCETest#validUpdateApplication
  • com.appsmith.server.services.ce.ApplicationSnapshotServiceUnitTest#createApplicationSnapshot_WhenApplicationTooLarge_SnapshotCreatedSuccessfully
  • com.appsmith.server.services.ce.ApplicationSnapshotServiceUnitTest#restoreSnapshot_WhenSnapshotHasMultipleChunks_RestoredSuccessfully
  • com.appsmith.server.services.ce.ApplicationSnapshotServiceUnitTest#test
  • com.appsmith.server.services.ce.ApplicationTemplateServicePublishTemplateTest#
  • com.appsmith.server.services.ce.ApplicationTemplateServicePublishTemplateTest#test_application_published_as_community_template
  • com.appsmith.server.services.ce.ConsolidatedAPIServiceImplTest#
  • com.appsmith.server.services.ce.ConsolidatedAPIServiceImplTest#testErrorResponseWhenAnonymousUserAccessPrivateApp
  • com.appsmith.server.services.ce.ConsolidatedAPIServiceImplTest#testErrorWhenModeIsNullAndPageIdAvailable
  • com.appsmith.server.services.ce.ConsolidatedAPIServiceImplTest#testPageLoadResponseForEditMode
  • com.appsmith.server.services.ce.ConsolidatedAPIServiceImplTest#testPageLoadResponseForViewMode
  • com.appsmith.server.services.ce.ConsolidatedAPIServiceImplTest#testPageLoadResponseWhenPageIdAndApplicationIdMissing
  • com.appsmith.server.services.ce.EmailServiceCEImplTest#
  • com.appsmith.server.services.ce.EmailServiceCEImplTest#sendForgotPasswordEmail
  • com.appsmith.server.services.ce.EmailServiceCEImplTest#sendInviteUserToWorkspaceEmail
  • com.appsmith.server.services.ce.EmailServiceCEImplTest#testInviteWorkspaceUrl
  • com.appsmith.server.services.ce.EmailServiceCEImplTest#testSendInstanceAdminInviteEmail
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#evictFeatureFlags_withUserIdentifier_redisKeyDoesNotExist
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#evictFeatures_withTenantIdentifier_redisKeyDoesNotExist
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#getAllRemoteFeaturesForTenantAndUpdateFeatureFlagsWithPendingMigrations_disableMigration_statesUpdate
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#getAllRemoteFeaturesForTenantAndUpdateFeatureFlagsWithPendingMigrations_emptyMapForPendingMigration_statesUpdate
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#getAllRemoteFeaturesForTenantAndUpdateFeatureFlagsWithPendingMigrations_enableMigration_statesUpdate
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#getCachedTenantFeatureFlags_withDefaultTenant_tenantFeatureFlagsAreCached
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#getFeatureFlags_withUserIdentifier_redisKeyExists
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#getFeatures_withTenantIdentifier_redisKeyExists
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#getTenantFeatureFlags_withDefaultTenant_fetchLatestFlags
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#testGetFeaturesForUser
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#testGetFeaturesForUser_overrideWithTenantFeature
  • com.appsmith.server.services.ce.FeatureFlagServiceCETest#testNullFeatureCheck
  • com.appsmith.server.services.ce.NewActionServiceTest#
  • com.appsmith.server.services.ce.NewActionServiceTest#testActionsPublishedWhenPermissionIsMatched
  • com.appsmith.server.services.ce.PACConfigurationServiceCETest#test_setRolesAndGroups_featureFlagDisabled
  • com.appsmith.server.services.ce.TenantServiceCETest#
  • com.appsmith.server.services.ce.TenantServiceCETest#checkAndExecuteMigrationsForTenantFeatureFlags_emptyMigrationMap_revertSameTenant
  • com.appsmith.server.services.ce.TenantServiceCETest#checkAndExecuteMigrationsForTenantFeatureFlags_withPendingMigration_exceptionWhileRunningMigration_getUpdatedTenant
  • com.appsmith.server.services.ce.TenantServiceCETest#checkAndExecuteMigrationsForTenantFeatureFlags_withPendingMigration_getUpdatedTenant
  • com.appsmith.server.services.ce.TenantServiceCETest#ensureMapsKey
  • com.appsmith.server.services.ce.TenantServiceCETest#getTenantConfig_Valid_AnonymousUser
  • com.appsmith.server.services.ce.TenantServiceCETest#setEmailVerificationEnabledFalseAndGetItBack
  • com.appsmith.server.services.ce.TenantServiceCETest#setEmailVerificationEnabled_WithInvalidSMTPHost_ReturnsError
  • com.appsmith.server.services.ce.TenantServiceCETest#setEmailVerificationEnabled_WithValidSMTPHost_Success
  • com.appsmith.server.services.ce.TenantServiceCETest#setMapsKeyAndGetItBack
  • com.appsmith.server.services.ce.TenantServiceCETest#setMapsKeyWithoutAuthentication
  • com.appsmith.server.services.ce.TenantServiceCETest#setMapsKeyWithoutAuthorization
  • com.appsmith.server.services.ce.TenantServiceCETest#testDeserializationErrors
  • com.appsmith.server.services.ce.TenantServiceCETest#updateTenantConfiguration_updateStrongPasswordPolicy_success
  • com.appsmith.server.services.ce.UserIdentifierServiceCEImplTest#getUserIdentifier_whenCloudHosting_returnsEmail
  • com.appsmith.server.services.ce.UserIdentifierServiceCEImplTest#getUserIdentifier_whenSelfHosted_returnsHashedEmail
  • com.appsmith.server.solutions.AuthenticationServiceTest#
  • com.appsmith.server.solutions.AuthenticationServiceTest#testGetAuthorizationCodeURL_invalidDatasourceWithNullAuthentication
  • com.appsmith.server.solutions.AuthenticationServiceTest#testGetAuthorizationCodeURL_missingDatasource
  • com.appsmith.server.solutions.AuthenticationServiceTest#testGetAuthorizationCodeURL_validDatasource
  • com.appsmith.server.solutions.AuthenticationServiceTest#testGetAuthorizationCodeURL_validDatasourceAndBranchName
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyCaseWhereNoEnvironmentProvided
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyDatasourceStorageStructureEntriesWithTwoEnvironmentId
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyDatasourceStorageStructureGettingSaved
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyDuplicateKeyErrorOnSave
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyEmptyDatasourceStructureObjectIfDatasourceIsInvalid
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyEmptyStructureForPluginsWithNoGetStructureImplementation
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyGenerateNewStructureWhenNotPresent
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyUseCachedStructureWhenStructurePresent
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyUseCachedStructureWhenStructurePresentWithNoEnvironment
  • com.appsmith.server.solutions.DatasourceStructureSolutionTest#verifyUseNewStructureWhenIgnoreCacheSetTrue
  • com.appsmith.server.solutions.DatasourceTriggerSolutionTest#
  • com.appsmith.server.solutions.DatasourceTriggerSolutionTest#datasourceTriggerTest
  • com.appsmith.server.solutions.DatasourceTriggerSolutionTest#datasourceTriggerTest_should_return_collections_inorder
  • com.appsmith.server.solutions.PartialExportServiceTest#
  • com.appsmith.server.solutions.PartialExportServiceTest#testGetPartialExport_gitConnectedApp_branchResourceExported
  • com.appsmith.server.solutions.PartialExportServiceTest#testGetPartialExport_gitConnectedApp_featureBranchResourceExported
  • com.appsmith.server.solutions.PartialExportServiceTest#testGetPartialExport_nonGitConnectedApp_success
  • com.appsmith.server.solutions.PartialImportServiceTest#
  • com.appsmith.server.solutions.PartialImportServiceTest#testPartialImportWithBuildingBlock_nameClash_success
  • com.appsmith.server.solutions.PartialImportServiceTest#testPartialImport_gitConnectedAppDefaultBranch_success
  • com.appsmith.server.solutions.PartialImportServiceTest#testPartialImport_nameClashInAction_successWithNoNameDuplicates
  • com.appsmith.server.solutions.PartialImportServiceTest#testPartialImport_nonGitConnectedApp_success
  • com.appsmith.server.solutions.ReleaseNotesServiceTest#
  • com.appsmith.server.solutions.ReleaseNotesServiceTest#testComputeNewReleases
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#testEnrichExecutionParams_withBlobReference_performsSubstitutionCorrectly
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#testExecuteAPIWithParameterMapAsLastPart
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#testExecuteAPIWithUsualOrderingOfTheParts
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#testExecuteAction_withMalformedExecuteActionDTO_failsValidation
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#testExecuteAction_withoutActionId_failsValidation
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#testExecuteAction_withoutExecuteActionDTOPart_failsValidation
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCEImplTest#testParsePartsAndGetParamsFlux_withBlobIdentifiers_replacesValueInParam
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#checkRecoveryFromStaleConnections
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#executeActionNoStorageFound
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#executeActionWithExternalDatasource
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#executeAction_actionOnMockDatasource_success
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#suggestWidget_ArrayListDataEmpty_SuggestTextWidget
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#suggestWidget_ArrayListData_SuggestTableTextChartDropDownWidget
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#suggestWidget_ArrayListData_SuggestTableTextDropDownWidget
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecute
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteDbQuery
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteErrorResponse
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteNullPaginationParameters
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteNullRequestBody
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteReturnTypeWithNullResultBody
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteSecondaryStaleConnection
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteTimeout
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteWithJsonReturnType
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteWithPreAssignedReturnType
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testActionExecuteWithTableReturnType
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testVariableSubstitution
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testVariableSubstitutionWithNewline
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithArrayOfArray
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithArrayOfStringsDropDownWidget
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithChartWidgetData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithDropdownWidgetData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithEmptyData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithJsonArrayObjectData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithJsonNodeData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithJsonObjectData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithListWidgetData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithNumericData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionAfterExecutionWithTableWidgetData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionNestedData
  • com.appsmith.server.solutions.ce.ActionExecutionSolutionCETest#testWidgetSuggestionNestedDataEmpty
  • com.appsmith.server.solutions.ce.PolicySolutionCEImplTest#testAddNewPoliciesToEmptyObject
  • com.appsmith.server.solutions.ce.PolicySolutionCEImplTest#testAddNewPoliciesToNullPoliciesObject
  • com.appsmith.server.solutions.ce.PolicySolutionCEImplTest#testMergePoliciesWithExistingOnes
  • com.appsmith.server.solutions.ce.PolicySolutionCEImplTest#testOriginalPolicyMapNotModified
  • com.appsmith.server.solutions.ce.PolicySolutionCEImplTest#testReturnModifiedObject
  • com.appsmith.server.transactions.ImportApplicationTransactionServiceTest#
  • com.appsmith.server.transactions.ImportApplicationTransactionServiceTest#importApplication_exceptionDuringImportActions_savedPagesAndApplicationReverted
  • com.appsmith.server.transactions.ImportApplicationTransactionServiceTest#importApplication_transactionExceptionDuringListActionSave_omitTransactionMessagePart
  • com.appsmith.server.transactions.ImportApplicationTransactionServiceTest#importIntoExistingApp_exceptionDuringImport_removedEntitiesRestored
  • com.appsmith.server.transactions.ImportApplicationTransactionServiceTest#importIntoExistingApplication_exceptionDuringImport_dataRestoredBack
  • com.appsmith.server.widgets.refactors.WidgetRefactoringServiceCEImplTest#
  • com.appsmith.server.widgets.refactors.WidgetRefactoringServiceCEImplTest#testRefactorNameInDsl_whenRenamingListWidget_replacesTemplateReferences
  • com.appsmith.server.widgets.refactors.WidgetRefactoringServiceCEImplTest#testRefactorNameInDsl_whenRenamingTextWidget_replacesAllReferences

Copy link
Contributor

@abhvsn abhvsn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AnaghHegde let's speed up this, migration script is at risk because of this change.

@abhvsn
Copy link
Contributor

abhvsn commented Nov 5, 2024

Blocking: #37043

Copy link

This PR has not seen activitiy for a while. It will be closed in 7 days unless further activity is detected.

@github-actions github-actions bot added the Stale label Nov 12, 2024
Copy link

This PR has been closed because of inactivity.

@github-actions github-actions bot closed this Nov 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants