Переглянути джерело

Add unit test for cluster/FlowResponseDataDecoder (#1514)

Signed-off-by: yunfeiyanggzq <yunfeiyang@buaa.edu.cn>
master
ZhiQiang Gu GitHub 4 роки тому
джерело
коміт
a1e3715db1
Не вдалося знайти GPG ключ що відповідає даному підпису Ідентифікатор GPG ключа: 4AEE18F83AFDEB23
2 змінених файлів з 58 додано та 3 видалено
  1. +36
    -0
      sentinel-cluster/sentinel-cluster-client-default/src/test/java/com/alibaba/csp/sentinel/cluster/client/codec/data/FlowResponseDataDecoderTest.java
  2. +22
    -3
      sentinel-cluster/sentinel-cluster-common-default/src/main/java/com/alibaba/csp/sentinel/cluster/response/data/FlowTokenResponseData.java

+ 36
- 0
sentinel-cluster/sentinel-cluster-client-default/src/test/java/com/alibaba/csp/sentinel/cluster/client/codec/data/FlowResponseDataDecoderTest.java Переглянути файл

@@ -0,0 +1,36 @@
/*
* Copyright 1999-2018 Alibaba Group Holding Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.alibaba.csp.sentinel.cluster.client.codec.data;

import com.alibaba.csp.sentinel.cluster.response.data.FlowTokenResponseData;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import org.junit.Assert;
import org.junit.Test;

public class FlowResponseDataDecoderTest {
@Test
public void testDecode() {
ByteBuf buf = Unpooled.buffer();
FlowResponseDataDecoder decoder = new FlowResponseDataDecoder();
FlowTokenResponseData data = new FlowTokenResponseData();
data.setRemainingCount(12);
data.setWaitInMs(13);
buf.writeInt(12);
buf.writeInt(13);
Assert.assertEquals(decoder.decode(buf), data);
}
}

+ 22
- 3
sentinel-cluster/sentinel-cluster-common-default/src/main/java/com/alibaba/csp/sentinel/cluster/response/data/FlowTokenResponseData.java Переглянути файл

@@ -42,11 +42,30 @@ public class FlowTokenResponseData {
return this;
}

@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (!(o instanceof FlowTokenResponseData)) {
return false;
}
FlowTokenResponseData that = (FlowTokenResponseData) o;
return this.remainingCount == that.remainingCount && this.waitInMs == that.waitInMs;
}

@Override
public int hashCode() {
int result = remainingCount;
result = 31 * result + waitInMs;
return result;
}

@Override
public String toString() {
return "FlowTokenResponseData{" +
"remainingCount=" + remainingCount +
", waitInMs=" + waitInMs +
'}';
"remainingCount=" + remainingCount +
", waitInMs=" + waitInMs +
'}';
}
}

Завантаження…
Відмінити
Зберегти