Skip to content

Commit

Permalink
Still trying to fix mining.subscribe.
Browse files Browse the repository at this point in the history
  • Loading branch information
Hüseyin Uslu committed Oct 4, 2014
1 parent a8f0ef9 commit 51bce99
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 9 deletions.
7 changes: 4 additions & 3 deletions src/CoiniumServ/Server/Mining/Stratum/StratumService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,10 @@ public class StratumService : JsonRpcService, IRpcService
/// <summary>
/// Subscribes a Miner to allow it to recieve work to begin hashing and submitting shares.
/// </summary>
/// <param name="data">Miner Connection</param>
/// <param name="signature">software signature</param>
/// <param name="sessionId">optional parameter supplied by miners whom wants to reconnect and continue their old session</param>
[JsonRpcMethod("mining.subscribe")]
public SubscribeResponse SubscribeMiner(string data = null)
public SubscribeResponse SubscribeMiner(string signature, string sessionId = null)
{
var context = (StratumContext) JsonRpcContext.Current().Value;

Expand All @@ -58,7 +59,7 @@ public SubscribeResponse SubscribeMiner(string data = null)
ExtraNonce2Size = ExtraNonce.ExpectedExtraNonce2Size // Represents expected length of extranonce2 which will be generated by the miner. (http://mining.bitcoin.cz/stratum-mining)
};

context.Miner.Subscribe(data);
context.Miner.Subscribe(signature);

return response;
}
Expand Down
12 changes: 6 additions & 6 deletions src/Tests/Server/Mining/Stratum/StratumServiceTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -47,12 +47,12 @@ public StratumServiceTests()
}

[Fact]
public void MiningSubscribe_WithZeroParameters_ShouldSuccess()
public void MiningSubscribe_WithOutParameters_ShouldEqual()
{
_poolConfig.Coin.Name.Returns("zero-params");
var service = new StratumService(_poolConfig, _shareManager);

const string request = @"{ 'id' : 1, 'method' : 'mining.subscribe', 'params' : [ ] }";
const string request = @"{ 'id' : 1, 'method' : 'mining.subscribe', 'params' : [] }";
const string expectedResult = "{\"jsonrpc\":\"2.0\",\"result\":[[\"mining.set_difficulty\",\"0\",\"mining.notify\",\"0\"],\"00000000\",4],\"id\":1}";

var task = JsonRpcProcessor.Process(_poolConfig.Coin.Name, request,_stratumContext);
Expand All @@ -62,7 +62,7 @@ public void MiningSubscribe_WithZeroParameters_ShouldSuccess()
}

[Fact]
public void MiningSubscribe_WithSignature_ShouldSuccess()
public void MiningSubscribe_WithSignature_ShouldEqual()
{
_poolConfig.Coin.Name.Returns("signature");
var service = new StratumService(_poolConfig, _shareManager);
Expand All @@ -77,12 +77,12 @@ public void MiningSubscribe_WithSignature_ShouldSuccess()
}

[Fact]
public void MiningSubscribe_WithNonce_ShouldSuccess()
public void MiningSubscribe_WithSessionId_ShouldEqual()
{
_poolConfig.Coin.Name.Returns("nonce");
_poolConfig.Coin.Name.Returns("session");
var service = new StratumService(_poolConfig, _shareManager);

const string request = @"{ 'id' : 1, 'method' : 'mining.subscribe', 'params' : [ 'cgminer/3.7.2', 'aa' ] }";
const string request = @"{ 'id' : 1, 'method' : 'mining.subscribe', 'params' : [ 'cgminer/3.7.2', '02000000b507a8fd1ea2b7d9cdec867086f6935228aba1540154f83930377ea5a2e37108' ] }";
const string expectedResult = "{\"jsonrpc\":\"2.0\",\"result\":[[\"mining.set_difficulty\",\"0\",\"mining.notify\",\"0\"],\"00000000\",4],\"id\":1}";

var task = JsonRpcProcessor.Process(_poolConfig.Coin.Name, request, _stratumContext);
Expand Down

0 comments on commit 51bce99

Please sign in to comment.