DSA_sheets/dsa/src/test/java/com/hithomelabs/dsa/array/best_time_to_buy_and_sell_stock/SolutionTest.java

36 lines
1.1 KiB
Java

package com.hithomelabs.dsa.array.best_time_to_buy_and_sell_stock;
import static org.junit.jupiter.api.Assertions.assertEquals;
// https://example.com/best_time_to_buy_and_sell_stock
public class SolutionTest {
@Test
void testSolve() {
Solution solution = new Solution();
// Test case 1: Normal case with increasing prices
int[] prices1 = {7, 1, 5, 3, 6, 4};
assertEquals(5, solution.solve(prices1));
// Test case 2: Prices decrease
int[] prices2 = {7, 6, 4, 3, 1};
assertEquals(0, solution.solve(prices2));
// Test case 3: Prices are constant
int[] prices3 = {5, 5, 5, 5, 5};
assertEquals(0, solution.solve(prices3));
// Test case 4: Prices with a single day
int[] prices4 = {1};
assertEquals(0, solution.solve(prices4));
// Test case 5: Prices with two days, increasing
int[] prices5 = {1, 2};
assertEquals(1, solution.solve(prices5));
// Test case 6: Prices with two days, decreasing
int[] prices6 = {2, 1};
assertEquals(0, solution.solve(prices6));
}
}