aboutsummaryrefslogtreecommitdiffstats
path: root/rpc/api_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'rpc/api_test.go')
-rw-r--r--rpc/api_test.go101
1 files changed, 101 insertions, 0 deletions
diff --git a/rpc/api_test.go b/rpc/api_test.go
new file mode 100644
index 000000000..ac9b67fac
--- /dev/null
+++ b/rpc/api_test.go
@@ -0,0 +1,101 @@
+package rpc
+
+import (
+ "encoding/json"
+ // "sync"
+ "testing"
+ // "time"
+
+ // "github.com/ethereum/go-ethereum/xeth"
+)
+
+func TestWeb3Sha3(t *testing.T) {
+ jsonstr := `{"jsonrpc":"2.0","method":"web3_sha3","params":["0x68656c6c6f20776f726c64"],"id":64}`
+ expected := "0x47173285a8d7341e5e972fc677286384f802f8ef42a5ec5f03bbfa254cb01fad"
+
+ api := &EthereumApi{}
+
+ var req RpcRequest
+ json.Unmarshal([]byte(jsonstr), &req)
+
+ var response interface{}
+ _ = api.GetRequestReply(&req, &response)
+
+ if response.(string) != expected {
+ t.Errorf("Expected %s got %s", expected, response)
+ }
+}
+
+// func TestDbStr(t *testing.T) {
+// jsonput := `{"jsonrpc":"2.0","method":"db_putString","params":["testDB","myKey","myString"],"id":64}`
+// jsonget := `{"jsonrpc":"2.0","method":"db_getString","params":["testDB","myKey"],"id":64}`
+// expected := "myString"
+
+// xeth := &xeth.XEth{}
+// api := NewEthereumApi(xeth)
+// var response interface{}
+
+// var req RpcRequest
+// json.Unmarshal([]byte(jsonput), &req)
+// _ = api.GetRequestReply(&req, &response)
+
+// json.Unmarshal([]byte(jsonget), &req)
+// _ = api.GetRequestReply(&req, &response)
+
+// if response.(string) != expected {
+// t.Errorf("Expected %s got %s", expected, response)
+// }
+// }
+
+// func TestDbHexStr(t *testing.T) {
+// jsonput := `{"jsonrpc":"2.0","method":"db_putHex","params":["testDB","beefKey","0xbeef"],"id":64}`
+// jsonget := `{"jsonrpc":"2.0","method":"db_getHex","params":["testDB","beefKey"],"id":64}`
+// expected := "0xbeef"
+
+// xeth := &xeth.XEth{}
+// api := NewEthereumApi(xeth)
+// defer api.db.Close()
+// var response interface{}
+
+// var req RpcRequest
+// json.Unmarshal([]byte(jsonput), &req)
+// _ = api.GetRequestReply(&req, &response)
+
+// json.Unmarshal([]byte(jsonget), &req)
+// _ = api.GetRequestReply(&req, &response)
+
+// if response.(string) != expected {
+// t.Errorf("Expected %s got %s", expected, response)
+// }
+// }
+
+// func TestFilterClose(t *testing.T) {
+// t.Skip()
+// api := &EthereumApi{
+// logs: make(map[int]*logFilter),
+// messages: make(map[int]*whisperFilter),
+// quit: make(chan struct{}),
+// }
+
+// filterTickerTime = 1
+// api.logs[0] = &logFilter{}
+// api.messages[0] = &whisperFilter{}
+// var wg sync.WaitGroup
+// wg.Add(1)
+// go api.start()
+// go func() {
+// select {
+// case <-time.After(500 * time.Millisecond):
+// api.stop()
+// wg.Done()
+// }
+// }()
+// wg.Wait()
+// if len(api.logs) != 0 {
+// t.Error("expected logs to be empty")
+// }
+
+// if len(api.messages) != 0 {
+// t.Error("expected messages to be empty")
+// }
+// }