Skip to content

Commit 070a249

Browse files
committed
Switch to private testnet and upgrade
1 parent 3c59948 commit 070a249

3 files changed

Lines changed: 85 additions & 26 deletions

File tree

BTCPayServer.Plugins.IntegrationTests/Monero/IntegrationTestUtils.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -243,8 +243,8 @@ public static async Task CreateTestXmrWalletFilesViaRpc(string password)
243243
@params = new
244244
{
245245
address =
246-
"43Pnj6ZKGFTJhaLhiecSFfLfr64KPJZw7MyGH73T6PTDekBBvsTAaWEUSM4bmJqDuYLizhA13jQkMRPpz9VXBCBqQQb6y5L",
247-
viewkey = "1bfa03b0c78aa6bc8292cf160ec9875657d61e889c41d0ebe5c54fd3a2c4b40e",
246+
"9yEzCbcYdg6MqZ5AkEh8V3YCriyN1tvmtWEHdBEUHkF6D6kN1MMD2Kd2QVWoTY67aNHNYKMUP3xfteLS2QNavJxpJdx6mWj",
247+
viewkey = "1f4668e8c1979b4c7dae13dc149fd95cd7ff2883becffe160c21f9e02c821c08",
248248
filename = "wallet",
249249
restore_height = 0,
250250
password

BTCPayServer.Plugins.IntegrationTests/Monero/MoneroPluginIntegrationTest.cs

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ public async Task ShouldEnableMoneroPluginSuccessfully()
4141
await s.Page.Locator("a.nav-link[href*='monerolike/XMR']").ClickAsync();
4242
await s.Page.Locator("input#PrimaryAddress")
4343
.FillAsync(
44-
"43Pnj6ZKGFTJhaLhiecSFfLfr64KPJZw7MyGH73T6PTDekBBvsTAaWEUSM4bmJqDuYLizhA13jQkMRPpz9VXBCBqQQb6y5L");
44+
"9yEzCbcYdg6MqZ5AkEh8V3YCriyN1tvmtWEHdBEUHkF6D6kN1MMD2Kd2QVWoTY67aNHNYKMUP3xfteLS2QNavJxpJdx6mWj");
4545
await s.Page.Locator("input#PrivateViewKey")
46-
.FillAsync("1bfa03b0c78aa6bc8292cf160ec9875657d61e889c41d0ebe5c54fd3a2c4b40e");
46+
.FillAsync("1f4668e8c1979b4c7dae13dc149fd95cd7ff2883becffe160c21f9e02c821c08");
4747
await s.Page.Locator("input#RestoreHeight").FillAsync("0");
4848
await s.Page.ClickAsync("button[name='command'][value='set-wallet-details']");
4949
var message = await s.Page
@@ -119,7 +119,7 @@ public async Task ShouldFailWhenWrongPrimaryAddress()
119119
await s.Page.Locator("input#PrimaryAddress")
120120
.FillAsync("wrongprimaryaddressfSF6ZKGFT7MyGH73T6PTDekBBvsTAaWEUSM4bmJqDuYLizhA13jQkMRPpz9VXBCBqQQb6y5L");
121121
await s.Page.Locator("input#PrivateViewKey")
122-
.FillAsync("1bfa03b0c78aa6bc8292cf160ec9875657d61e889c41d0ebe5c54fd3a2c4b40e");
122+
.FillAsync("1f4668e8c1979b4c7dae13dc149fd95cd7ff2883becffe160c21f9e02c821c08");
123123
await s.Page.Locator("input#RestoreHeight").FillAsync("0");
124124
await s.Page.ClickAsync("button[name='command'][value='set-wallet-details']");
125125
var errorText = await s.Page
@@ -136,22 +136,25 @@ public async Task ShouldFailWhenWalletFileAlreadyExists()
136136
await s.StartAsync();
137137

138138
MoneroRpcProvider moneroRpcProvider = s.Server.PayTester.GetService<MoneroRpcProvider>();
139-
await moneroRpcProvider.WalletRpcClients["XMR"].SendCommandAsync<GenerateFromKeysRequest, GenerateFromKeysResponse>("generate_from_keys", new GenerateFromKeysRequest
140-
{
141-
PrimaryAddress = "43Pnj6ZKGFTJhaLhiecSFfLfr64KPJZw7MyGH73T6PTDekBBvsTAaWEUSM4bmJqDuYLizhA13jQkMRPpz9VXBCBqQQb6y5L",
142-
PrivateViewKey = "1bfa03b0c78aa6bc8292cf160ec9875657d61e889c41d0ebe5c54fd3a2c4b40e",
143-
WalletFileName = "wallet",
144-
Password = ""
145-
});
139+
await moneroRpcProvider.WalletRpcClients["XMR"]
140+
.SendCommandAsync<GenerateFromKeysRequest, GenerateFromKeysResponse>("generate_from_keys",
141+
new GenerateFromKeysRequest
142+
{
143+
PrimaryAddress =
144+
"9yEzCbcYdg6MqZ5AkEh8V3YCriyN1tvmtWEHdBEUHkF6D6kN1MMD2Kd2QVWoTY67aNHNYKMUP3xfteLS2QNavJxpJdx6mWj",
145+
PrivateViewKey = "1f4668e8c1979b4c7dae13dc149fd95cd7ff2883becffe160c21f9e02c821c08",
146+
WalletFileName = "wallet",
147+
Password = ""
148+
});
146149
await moneroRpcProvider.CloseWallet("XMR");
147150

148151
await s.RegisterNewUser(true);
149152
await s.CreateNewStore();
150153
await s.Page.Locator("a.nav-link[href*='monerolike/XMR']").ClickAsync();
151154
await s.Page.Locator("input#PrimaryAddress")
152-
.FillAsync("43Pnj6ZKGFTJhaLhiecSFfLfr64KPJZw7MyGH73T6PTDekBBvsTAaWEUSM4bmJqDuYLizhA13jQkMRPpz9VXBCBqQQb6y5L");
155+
.FillAsync("9yEzCbcYdg6MqZ5AkEh8V3YCriyN1tvmtWEHdBEUHkF6D6kN1MMD2Kd2QVWoTY67aNHNYKMUP3xfteLS2QNavJxpJdx6mWj");
153156
await s.Page.Locator("input#PrivateViewKey")
154-
.FillAsync("1bfa03b0c78aa6bc8292cf160ec9875657d61e889c41d0ebe5c54fd3a2c4b40e");
157+
.FillAsync("1f4668e8c1979b4c7dae13dc149fd95cd7ff2883becffe160c21f9e02c821c08");
155158
await s.Page.Locator("input#RestoreHeight").FillAsync("0");
156159
await s.Page.ClickAsync("button[name='command'][value='set-wallet-details']");
157160
var errorText = await s.Page

BTCPayServer.Plugins.IntegrationTests/docker-compose.yml

Lines changed: 68 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ services:
88
TESTS_POSTGRES: User ID=postgres;Include Error Detail=true;Host=postgres;Port=5432;Database=btcpayserver
99
TESTS_HOSTNAME: tests
1010
TESTS_INCONTAINER: "true"
11-
BTCPAY_XMR_DAEMON_URI: http://monerod:18081
11+
BTCPAY_XMR_DAEMON_URI: http://node_1:18081
1212
BTCPAY_XMR_WALLET_DAEMON_URI: http://xmr_wallet:18082
1313
BTCPAY_XMR_WALLET_DAEMON_WALLETDIR: /wallet
1414
BTCPAY_NODEFAULTCHAIN: "true"
@@ -23,37 +23,92 @@ services:
2323

2424
# The dev container is not used, it is just handy to run `docker-compose up dev` to start all services
2525
dev:
26-
image: alpine:3.21
26+
image: alpine:3.7
2727
container_name: dev
2828
command: [ "/bin/sh", "-c", "trap : TERM INT; while :; do echo Ready to code and debug like a rockstar!!!; sleep 2073600; done & wait" ]
2929
depends_on:
3030
- postgres
3131
- xmr_wallet
3232

33-
monerod:
33+
node_1:
3434
image: btcpayserver/monero:0.18.4.3
35-
restart: unless-stopped
36-
container_name: monerod
37-
command: monerod --fixed-difficulty 1 --log-level=2 --rpc-bind-ip=0.0.0.0 --confirm-external-bind --rpc-bind-port=18081 --block-notify="/bin/sh ./scripts/notifier.sh -k -X GET https://host.docker.internal:14142/monerolikedaemoncallback/block?cryptoCode=xmr&hash=%s" --regtest --no-igd --hide-my-port --offline --non-interactive
35+
container_name: node_1
36+
command: [
37+
"monerod",
38+
"--fixed-difficulty=150",
39+
"--p2p-bind-ip=0.0.0.0",
40+
"--p2p-bind-port=18080",
41+
"--rpc-bind-port=18081",
42+
"--log-level=2",
43+
"--rpc-bind-ip=0.0.0.0",
44+
"--confirm-external-bind",
45+
"--add-exclusive-node=node_2:28080",
46+
"--block-notify=/bin/sh ./scripts/notifier.sh -k -X GET https://host.docker.internal:14142/monerolikedaemoncallback/block?cryptoCode=xmr&hash=%s",
47+
"--testnet",
48+
"--no-igd",
49+
"--hide-my-port",
50+
"--non-interactive"
51+
]
3852
volumes:
39-
- xmr_data:/data
53+
- xmr_node_1_data:/data
4054
ports:
55+
- "18080:18080"
4156
- "18081:18081"
4257

58+
node_2:
59+
image: btcpayserver/monero:0.18.4.3
60+
container_name: node_2
61+
command: [
62+
"monerod",
63+
"--fixed-difficulty=150",
64+
"--p2p-bind-ip=0.0.0.0",
65+
"--p2p-bind-port=28080",
66+
"--rpc-bind-port=28081",
67+
"--log-level=2",
68+
"--rpc-bind-ip=0.0.0.0",
69+
"--confirm-external-bind",
70+
"--testnet",
71+
"--add-exclusive-node=node_1:18080",
72+
"--no-igd",
73+
"--hide-my-port",
74+
"--non-interactive"
75+
]
76+
volumes:
77+
- xmr_node_2_data:/data
78+
ports:
79+
- "28080:28080"
80+
- "28081:28081"
81+
depends_on:
82+
- node_1
83+
4384
xmr_wallet:
4485
image: btcpayserver/monero:0.18.4.3
45-
restart: unless-stopped
4686
container_name: xmr_wallet
47-
command: monero-wallet-rpc --log-level 2 --allow-mismatched-daemon-version --rpc-bind-ip=0.0.0.0 --disable-rpc-login --confirm-external-bind --rpc-bind-port=18082 --non-interactive --trusted-daemon --daemon-address=monerod:18081 --wallet-dir=/wallet --tx-notify="/bin/sh ./scripts/notifier.sh -k -X GET https://host.docker.internal:14142/monerolikedaemoncallback/tx?cryptoCode=xmr&hash=%s"
87+
command: [
88+
"monero-wallet-rpc",
89+
"--log-level=2",
90+
"--allow-mismatched-daemon-version",
91+
"--rpc-bind-ip=0.0.0.0",
92+
"--testnet",
93+
"--disable-rpc-login",
94+
"--confirm-external-bind",
95+
"--rpc-bind-port=18082",
96+
"--non-interactive",
97+
"--trusted-daemon",
98+
"--daemon-address=node_2:28081",
99+
"--wallet-dir=/wallet",
100+
"--tx-notify=/bin/sh ./scripts/notifier.sh -k -X GET https://host.docker.internal:14142/monerolikedaemoncallback/tx?cryptoCode=xmr&hash=%s"
101+
]
48102
ports:
49103
- "18082:18082"
50104
volumes:
51105
- xmr_wallet:/wallet
52106
depends_on:
53-
- monerod
107+
- node_1
108+
- node_2
54109

55110
postgres:
56-
image: postgres:17.4
111+
image: postgres:18.1
57112
container_name: postgres
58113
environment:
59114
POSTGRES_HOST_AUTH_METHOD: trust
@@ -63,5 +118,6 @@ services:
63118
- "5432"
64119

65120
volumes:
66-
xmr_data:
121+
xmr_node_1_data:
122+
xmr_node_2_data:
67123
xmr_wallet:

0 commit comments

Comments
 (0)