1
- using System . Numerics ;
1
+ // using System.Numerics;
2
2
using Thirdweb . AI ;
3
3
4
4
namespace Thirdweb . Tests . AI ;
5
5
6
6
public class NebulaTests : BaseTests
7
7
{
8
- private const string NEBULA_TEST_CONTRACT = "0xe2cb0eb5147b42095c2FfA6F7ec953bb0bE347D8" ;
9
- private const string NEBULA_TEST_USDC_ADDRESS = "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238" ;
10
- private const int NEBULA_TEST_CHAIN = 11155111 ;
8
+ // private const string NEBULA_TEST_CONTRACT = "0xe2cb0eb5147b42095c2FfA6F7ec953bb0bE347D8";
9
+ // private const string NEBULA_TEST_USDC_ADDRESS = "0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238";
10
+ // private const int NEBULA_TEST_CHAIN = 11155111;
11
11
12
12
public NebulaTests ( ITestOutputHelper output )
13
13
: base ( output ) { }
@@ -33,104 +33,104 @@ public async Task Create_ResumesSession()
33
33
Assert . Equal ( sessionId , nebula . SessionId ) ;
34
34
}
35
35
36
- [ Fact ( Timeout = 120000 ) ]
37
- public async Task Chat_Single_ReturnsResponse ( )
38
- {
39
- var nebula = await ThirdwebNebula . Create ( this . Client ) ;
40
- var response = await nebula . Chat (
41
- message : "What's the symbol of this contract?" ,
42
- context : new NebulaContext ( contractAddresses : new List < string > { NEBULA_TEST_CONTRACT } , chainIds : new List < BigInteger > { NEBULA_TEST_CHAIN } )
43
- ) ;
44
- Assert . NotNull ( response ) ;
45
- Assert . NotNull ( response . Message ) ;
46
- Assert . Contains ( "CAT" , response . Message ) ;
47
- }
36
+ // [Fact(Timeout = 120000)]
37
+ // public async Task Chat_Single_ReturnsResponse()
38
+ // {
39
+ // var nebula = await ThirdwebNebula.Create(this.Client);
40
+ // var response = await nebula.Chat(
41
+ // message: "What's the symbol of this contract?",
42
+ // context: new NebulaContext(contractAddresses: new List<string> { NEBULA_TEST_CONTRACT }, chainIds: new List<BigInteger> { NEBULA_TEST_CHAIN })
43
+ // );
44
+ // Assert.NotNull(response);
45
+ // Assert.NotNull(response.Message);
46
+ // Assert.Contains("CAT", response.Message);
47
+ // }
48
48
49
- [ Fact ( Timeout = 120000 ) ]
50
- public async Task Chat_Single_NoContext_ReturnsResponse ( )
51
- {
52
- var nebula = await ThirdwebNebula . Create ( this . Client ) ;
53
- var response = await nebula . Chat ( message : $ "What's the symbol of this contract: { NEBULA_TEST_CONTRACT } (Sepolia)?") ;
54
- Assert . NotNull ( response ) ;
55
- Assert . NotNull ( response . Message ) ;
56
- Assert . Contains ( "CAT" , response . Message ) ;
57
- }
49
+ // [Fact(Timeout = 120000)]
50
+ // public async Task Chat_Single_NoContext_ReturnsResponse()
51
+ // {
52
+ // var nebula = await ThirdwebNebula.Create(this.Client);
53
+ // var response = await nebula.Chat(message: $"What's the symbol of this contract: {NEBULA_TEST_CONTRACT} (Sepolia)?");
54
+ // Assert.NotNull(response);
55
+ // Assert.NotNull(response.Message);
56
+ // Assert.Contains("CAT", response.Message);
57
+ // }
58
58
59
- [ Fact ( Timeout = 120000 ) ]
60
- public async Task Chat_Multiple_ReturnsResponse ( )
61
- {
62
- var nebula = await ThirdwebNebula . Create ( this . Client ) ;
63
- var response = await nebula . Chat (
64
- messages : new List < NebulaChatMessage >
65
- {
66
- new ( "What's the symbol of this contract?" , NebulaChatRole . User ) ,
67
- new ( "The symbol is CAT" , NebulaChatRole . Assistant ) ,
68
- new ( "What's the name of this contract?" , NebulaChatRole . User ) ,
69
- } ,
70
- context : new NebulaContext ( contractAddresses : new List < string > { NEBULA_TEST_CONTRACT } , chainIds : new List < BigInteger > { NEBULA_TEST_CHAIN } )
71
- ) ;
72
- Assert . NotNull ( response ) ;
73
- Assert . NotNull ( response . Message ) ;
74
- Assert . Contains ( "CatDrop" , response . Message , StringComparison . OrdinalIgnoreCase ) ;
75
- }
59
+ // [Fact(Timeout = 120000)]
60
+ // public async Task Chat_Multiple_ReturnsResponse()
61
+ // {
62
+ // var nebula = await ThirdwebNebula.Create(this.Client);
63
+ // var response = await nebula.Chat(
64
+ // messages: new List<NebulaChatMessage>
65
+ // {
66
+ // new("What's the symbol of this contract?", NebulaChatRole.User),
67
+ // new("The symbol is CAT", NebulaChatRole.Assistant),
68
+ // new("What's the name of this contract?", NebulaChatRole.User),
69
+ // },
70
+ // context: new NebulaContext(contractAddresses: new List<string> { NEBULA_TEST_CONTRACT }, chainIds: new List<BigInteger> { NEBULA_TEST_CHAIN })
71
+ // );
72
+ // Assert.NotNull(response);
73
+ // Assert.NotNull(response.Message);
74
+ // Assert.Contains("CatDrop", response.Message, StringComparison.OrdinalIgnoreCase);
75
+ // }
76
76
77
- [ Fact ( Timeout = 120000 ) ]
78
- public async Task Chat_UnderstandsWalletContext ( )
79
- {
80
- var wallet = await PrivateKeyWallet . Generate ( this . Client ) ;
81
- var expectedAddress = await wallet . GetAddress ( ) ;
82
- var nebula = await ThirdwebNebula . Create ( this . Client ) ;
83
- var response = await nebula . Chat ( message : "What is my wallet address?" , wallet : wallet ) ;
84
- Assert . NotNull ( response ) ;
85
- Assert . NotNull ( response . Message ) ;
86
- Assert . Contains ( expectedAddress , response . Message ) ;
87
- }
77
+ // [Fact(Timeout = 120000)]
78
+ // public async Task Chat_UnderstandsWalletContext()
79
+ // {
80
+ // var wallet = await PrivateKeyWallet.Generate(this.Client);
81
+ // var expectedAddress = await wallet.GetAddress();
82
+ // var nebula = await ThirdwebNebula.Create(this.Client);
83
+ // var response = await nebula.Chat(message: "What is my wallet address?", wallet: wallet);
84
+ // Assert.NotNull(response);
85
+ // Assert.NotNull(response.Message);
86
+ // Assert.Contains(expectedAddress, response.Message);
87
+ // }
88
88
89
- [ Fact ( Timeout = 120000 ) ]
90
- public async Task Execute_ReturnsMessageAndReceipt ( )
91
- {
92
- var signer = await PrivateKeyWallet . Generate ( this . Client ) ;
93
- var wallet = await SmartWallet . Create ( signer , NEBULA_TEST_CHAIN ) ;
94
- var nebula = await ThirdwebNebula . Create ( this . Client ) ;
95
- var response = await nebula . Execute (
96
- new List < NebulaChatMessage >
97
- {
98
- new ( "What's the address of vitalik.eth" , NebulaChatRole . User ) ,
99
- new ( "The address of vitalik.eth is 0xd8dA6BF26964aF8E437eEa5e3616511D7G3a3298" , NebulaChatRole . Assistant ) ,
100
- new ( "Approve 1 USDC to them" , NebulaChatRole . User ) ,
101
- } ,
102
- wallet : wallet ,
103
- context : new NebulaContext ( contractAddresses : new List < string > ( ) { NEBULA_TEST_USDC_ADDRESS } )
104
- ) ;
105
- Assert . NotNull ( response ) ;
106
- Assert . NotNull ( response . Message ) ;
107
- Assert . NotNull ( response . TransactionReceipts ) ;
108
- Assert . NotEmpty ( response . TransactionReceipts ) ;
109
- Assert . NotNull ( response . TransactionReceipts [ 0 ] . TransactionHash ) ;
110
- Assert . True ( response . TransactionReceipts [ 0 ] . TransactionHash . Length == 66 ) ;
111
- }
89
+ // [Fact(Timeout = 120000)]
90
+ // public async Task Execute_ReturnsMessageAndReceipt()
91
+ // {
92
+ // var signer = await PrivateKeyWallet.Generate(this.Client);
93
+ // var wallet = await SmartWallet.Create(signer, NEBULA_TEST_CHAIN);
94
+ // var nebula = await ThirdwebNebula.Create(this.Client);
95
+ // var response = await nebula.Execute(
96
+ // new List<NebulaChatMessage>
97
+ // {
98
+ // new("What's the address of vitalik.eth", NebulaChatRole.User),
99
+ // new("The address of vitalik.eth is 0xd8dA6BF26964aF8E437eEa5e3616511D7G3a3298", NebulaChatRole.Assistant),
100
+ // new("Approve 1 USDC to them", NebulaChatRole.User),
101
+ // },
102
+ // wallet: wallet,
103
+ // context: new NebulaContext(contractAddresses: new List<string>() { NEBULA_TEST_USDC_ADDRESS })
104
+ // );
105
+ // Assert.NotNull(response);
106
+ // Assert.NotNull(response.Message);
107
+ // Assert.NotNull(response.TransactionReceipts);
108
+ // Assert.NotEmpty(response.TransactionReceipts);
109
+ // Assert.NotNull(response.TransactionReceipts[0].TransactionHash);
110
+ // Assert.True(response.TransactionReceipts[0].TransactionHash.Length == 66);
111
+ // }
112
112
113
- [ Fact ( Timeout = 120000 ) ]
114
- public async Task Execute_ReturnsMessageAndReceipts ( )
115
- {
116
- var signer = await PrivateKeyWallet . Generate ( this . Client ) ;
117
- var wallet = await SmartWallet . Create ( signer , NEBULA_TEST_CHAIN ) ;
118
- var nebula = await ThirdwebNebula . Create ( this . Client ) ;
119
- var response = await nebula . Execute (
120
- new List < NebulaChatMessage >
121
- {
122
- new ( "What's the address of vitalik.eth" , NebulaChatRole . User ) ,
123
- new ( "The address of vitalik.eth is 0xd8dA6BF26964aF8E437eEa5e3616511D7G3a3298" , NebulaChatRole . Assistant ) ,
124
- new ( "Approve 1 USDC to them" , NebulaChatRole . User ) ,
125
- } ,
126
- wallet : wallet ,
127
- context : new NebulaContext ( contractAddresses : new List < string > ( ) { NEBULA_TEST_USDC_ADDRESS } )
128
- ) ;
129
- Assert . NotNull ( response ) ;
130
- Assert . NotNull ( response . Message ) ;
131
- Assert . NotNull ( response . TransactionReceipts ) ;
132
- Assert . NotEmpty ( response . TransactionReceipts ) ;
133
- Assert . NotNull ( response . TransactionReceipts [ 0 ] . TransactionHash ) ;
134
- Assert . True ( response . TransactionReceipts [ 0 ] . TransactionHash . Length == 66 ) ;
135
- }
113
+ // [Fact(Timeout = 120000)]
114
+ // public async Task Execute_ReturnsMessageAndReceipts()
115
+ // {
116
+ // var signer = await PrivateKeyWallet.Generate(this.Client);
117
+ // var wallet = await SmartWallet.Create(signer, NEBULA_TEST_CHAIN);
118
+ // var nebula = await ThirdwebNebula.Create(this.Client);
119
+ // var response = await nebula.Execute(
120
+ // new List<NebulaChatMessage>
121
+ // {
122
+ // new("What's the address of vitalik.eth", NebulaChatRole.User),
123
+ // new("The address of vitalik.eth is 0xd8dA6BF26964aF8E437eEa5e3616511D7G3a3298", NebulaChatRole.Assistant),
124
+ // new("Approve 1 USDC to them", NebulaChatRole.User),
125
+ // },
126
+ // wallet: wallet,
127
+ // context: new NebulaContext(contractAddresses: new List<string>() { NEBULA_TEST_USDC_ADDRESS })
128
+ // );
129
+ // Assert.NotNull(response);
130
+ // Assert.NotNull(response.Message);
131
+ // Assert.NotNull(response.TransactionReceipts);
132
+ // Assert.NotEmpty(response.TransactionReceipts);
133
+ // Assert.NotNull(response.TransactionReceipts[0].TransactionHash);
134
+ // Assert.True(response.TransactionReceipts[0].TransactionHash.Length == 66);
135
+ // }
136
136
}
0 commit comments