diff --git a/x/gamm/pool-models/balancer/amm_test.go b/x/gamm/pool-models/balancer/amm_test.go
index 42f1c3c5a3c31f3c36bbcd65dc3ecd7ffd7485c0..2559c1f7e054eabb3565d293bc916056b338539d 100644
--- a/x/gamm/pool-models/balancer/amm_test.go
+++ b/x/gamm/pool-models/balancer/amm_test.go
@@ -28,13 +28,14 @@ const (
 )
 
 var (
+	oneTrillion               = sdk.NewInt(1e12)
 	oneTrillionEvenPoolAssets = []balancer.PoolAsset{
 		{
-			Token:  sdk.NewInt64Coin("uosmo", 1_000_000_000_000),
+			Token:  sdk.NewCoin("uosmo", oneTrillion),
 			Weight: sdk.NewInt(100),
 		},
 		{
-			Token:  sdk.NewInt64Coin("uatom", 1_000_000_000_000),
+			Token:  sdk.NewCoin("uatom", oneTrillion),
 			Weight: sdk.NewInt(100),
 		},
 	}
@@ -78,7 +79,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		poolAssets:   oneTrillionEvenPoolAssets,
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(2_499_999_968_750),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -100,7 +100,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		poolAssets:   oneTrillionEvenPoolAssets,
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(2_487_500_000_000),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -122,7 +121,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		poolAssets:   oneTrillionEvenPoolAssets,
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(1_262_500_000_000),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -153,7 +151,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		},
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(321_875_000_000),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -183,7 +180,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		},
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(4_166_666_649_306),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -213,7 +209,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		},
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(4_159_722_200_000),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -243,7 +238,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		},
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(833_333_315_972),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -273,7 +267,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		},
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 		expectShares: sdk.NewInt(819_444_430_000),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 50_000)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -304,7 +297,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		// 156_736 * 3 / 4 = 117552
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", (156_736*3)/4)),
 		expectShares: sdk.NewIntFromUint64(9_775_731_930_496_140_648),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", (156_736*3)/4)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -335,7 +327,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		// 156_736 / 4 * 3 = 117552
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 156_736/4*3)),
 		expectShares: sdk.NewIntFromUint64(9_644_655_900_000_000_000),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 156_736/4*3)),
 	},
 	{
 		// Expected output from Balancer paper (https://balancer.fi/whitepaper.pdf) using equation (25) on page 10:
@@ -365,7 +356,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		},
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 499_999)),
 		expectShares: sdk.NewIntFromUint64(6_504_099_261_800_144_638),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 499_999)),
 	},
 	{
 		// Currently, our Pow approximation function does not work correctly when one tries
@@ -387,7 +377,6 @@ var calcSingleAssetJoinTestCases = []calcJoinSharesTestCase{
 		},
 		tokensIn:     sdk.NewCoins(sdk.NewInt64Coin("uosmo", 500_000)),
 		expectShares: sdk.NewIntFromUint64(6_504_099_261_800_144_638),
-		expectLiq:    sdk.NewCoins(sdk.NewInt64Coin("uosmo", 499_999)),
 		expectPanic:  true,
 	},
 	{
@@ -750,10 +739,6 @@ func TestCalcJoinPoolShares(t *testing.T) {
 			// Initial number of pool shares = 100 * 10**18 = 10**20
 			// Expected increase = liquidity_increase_ratio * initial number of pool shares = (25_000 / 1_000_000_000_000) * 10**20 = 2500000000000.0 = 2.5 * 10**12
 			expectShares: sdk.NewInt(2.5e12),
-			expectLiq: sdk.NewCoins(
-				sdk.NewInt64Coin("uosmo", 25_000),
-				sdk.NewInt64Coin("uatom", 25_000),
-			),
 		},
 		{
 			name:       "swap equal weights with 0.001 swap fee",
@@ -764,10 +749,6 @@ func TestCalcJoinPoolShares(t *testing.T) {
 				sdk.NewInt64Coin("uatom", 25_000),
 			),
 			expectShares: sdk.NewInt(2500000000000),
-			expectLiq: sdk.NewCoins(
-				sdk.NewInt64Coin("uosmo", 25_000),
-				sdk.NewInt64Coin("uatom", 25_000),
-			),
 		},
 		{
 			// For uosmos and uatom
@@ -794,12 +775,7 @@ func TestCalcJoinPoolShares(t *testing.T) {
 				sdk.NewInt64Coin("uosmo", 25_000),
 				sdk.NewInt64Coin("uatom", 50_000),
 			),
-
-			expectShares: sdk.NewInt(2.5e12 + 1249999960937),
-			expectLiq: sdk.NewCoins(
-				sdk.NewInt64Coin("uosmo", 25_000),
-				sdk.NewInt64Coin("uatom", 50_000),
-			),
+			expectShares: sdk.NewInt(2.5e12 + 1249999992187),
 		},
 		{
 			// For uosmos and uatom
@@ -826,12 +802,7 @@ func TestCalcJoinPoolShares(t *testing.T) {
 				sdk.NewInt64Coin("uosmo", 25_000),
 				sdk.NewInt64Coin("uatom", 50_000),
 			),
-
 			expectShares: sdk.NewInt(2.5e12 + 1243749900000),
-			expectLiq: sdk.NewCoins(
-				sdk.NewInt64Coin("uosmo", 25_000),
-				sdk.NewInt64Coin("uatom", 50_000),
-			),
 		},
 		{
 			// join pool is first done to the extent where the ratio can be preserved, which is 25,000 uosmo and 12,500 uatom.
@@ -868,12 +839,7 @@ func TestCalcJoinPoolShares(t *testing.T) {
 				sdk.NewInt64Coin("uosmo", 25_000),
 				sdk.NewInt64Coin("uatom", 50_000),
 			),
-
 			expectShares: sdk.NewInt(1250000000000 + 609374990000),
-			expectLiq: sdk.NewCoins(
-				sdk.NewInt64Coin("uosmo", 25_000),
-				sdk.NewInt64Coin("uatom", 50_000),
-			),
 		},
 	}
 	testCases = append(testCases, calcSingleAssetJoinTestCases...)
@@ -895,7 +861,7 @@ func TestCalcJoinPoolShares(t *testing.T) {
 				} else {
 					require.NoError(t, err)
 					assertExpectedSharesErrRatio(t, tc.expectShares, shares)
-					require.Equal(t, tc.expectLiq, liquidity)
+					assertExpectedLiquidity(t, tc.expectLiq, tc.tokensIn, liquidity)
 				}
 			}
 
@@ -1509,3 +1475,11 @@ func assertExpectedSharesErrRatio(t *testing.T, expectedShares, actualShares sdk
 		errTolerance.Compare(expectedShares, actualShares),
 		fmt.Sprintf("expectedShares: %s, actualShares: %s", expectedShares.String(), actualShares.String()))
 }
+
+func assertExpectedLiquidity(t *testing.T, expectLiq, tokensJoined, liquidity sdk.Coins) {
+	if len(expectLiq) != 0 {
+		require.Equal(t, expectLiq, liquidity)
+	} else {
+		require.Equal(t, tokensJoined, liquidity)
+	}
+}