package dot.junit.opcodes.div_float;
import dot.junit.DxTestCase;
import dot.junit.DxUtil;
import dot.junit.opcodes.div_float.d.T_div_float_1;
import dot.junit.opcodes.div_float.d.T_div_float_5;
public class Test_div_float extends DxTestCase {
/**
* @title Arguments = 2.7f, 3.14f
*/
public void testN1() {
T_div_float_1 t = new T_div_float_1();
assertEquals(0.8598726f, t.run(2.7f, 3.14f));
}
/**
* @title Dividend = 0
*/
public void testN2() {
T_div_float_1 t = new T_div_float_1();
assertEquals(0f, t.run(0, 3.14f));
}
/**
* @title Dividend is negative
*/
public void testN3() {
T_div_float_1 t = new T_div_float_1();
assertEquals(-1.162963f, t.run(-3.14f, 2.7f));
}
/**
* @title Types of arguments - int, float. Dalvik doens't distinguish 32-bits types internally,
* so this division of float and int makes no sense but shall not crash the VM.
*/
public void testN4() {
T_div_float_5 t = new T_div_float_5();
try {
t.run(1, 3.14f);
} catch (Throwable e) {
}
}
/**
* @title Arguments = Float.MAX_VALUE, Float.NaN
*/
public void testB1() {
T_div_float_1 t = new T_div_float_1();
assertEquals(Float.NaN, t.run(Float.MAX_VALUE, Float.NaN));
}
/**
* @title Arguments = Float.POSITIVE_INFINITY,
* Float.NEGATIVE_INFINITY
*/
public void testB2() {
T_div_float_1 t = new T_div_float_1();
assertEquals(Float.NaN, t.run(Float.POSITIVE_INFINITY,
Float.NEGATIVE_INFINITY));
}
/**
* @title Arguments = Float.POSITIVE_INFINITY, -2.7f
*/
public void testB3() {
T_div_float_1 t = new T_div_float_1();
assertEquals(Float.NEGATIVE_INFINITY, t.run(Float.POSITIVE_INFINITY,
-2.7f));
}
/**
* @title Arguments = -2.7f, Float.NEGATIVE_INFINITY
*/
public void testB4() {
T_div_float_1 t = new T_div_float_1();
assertEquals(0f, t.run(-2.7f, Float.NEGATIVE_INFINITY));
}
/**
* @title Arguments = 0, 0
*/
public void testB5() {
T_div_float_1 t = new T_div_float_1();
assertEquals(Float.NaN, t.run(0, 0));
}
/**
* @title Arguments = 0, -2.7
*/
public void testB6() {
T_div_float_1 t = new T_div_float_1();
assertEquals(-0f, t.run(0, -2.7f));
}
/**
* @title Arguments = -2.7, 0
*/
public void testB7() {
T_div_float_1 t = new T_div_float_1();
assertEquals(Float.NEGATIVE_INFINITY, t.run(-2.7f, 0));
}
/**
* @title Arguments = 1, Float.MAX_VALUE
*/
public void testB8() {
T_div_float_1 t = new T_div_float_1();
assertEquals(Float.POSITIVE_INFINITY, t.run(1, Float.MIN_VALUE));
}
/**
* @title Arguments = Float.MAX_VALUE, -1E-9f
*/
public void testB9() {
T_div_float_1 t = new T_div_float_1();
assertEquals(Float.NEGATIVE_INFINITY, t.run(Float.MAX_VALUE, -1E-9f));
}
/**
* @constraint B1
* @title types of arguments - float / double
*/
public void testVFE1() {
try {
Class.forName("dot.junit.opcodes.div_float.d.T_div_float_2");
fail("expected a verification exception");
} catch (Throwable t) {
DxUtil.checkVerifyException(t);
}
}
/**
* @constraint B1
* @title types of arguments - long / float
*/
public void testVFE2() {
try {
Class.forName("dot.junit.opcodes.div_float.d.T_div_float_3");
fail("expected a verification exception");
} catch (Throwable t) {
DxUtil.checkVerifyException(t);
}
}
/**
* @constraint B1
* @title types of arguments - reference / float
*/
public void testVFE3() {
try {
Class.forName("dot.junit.opcodes.div_float.d.T_div_float_4");
fail("expected a verification exception");
} catch (Throwable t) {
DxUtil.checkVerifyException(t);
}
}
/**
* @constraint A23
* @title number of registers
*/
public void testVFE4() {
try {
Class.forName("dot.junit.opcodes.div_float.d.T_div_float_6");
fail("expected a verification exception");
} catch (Throwable t) {
DxUtil.checkVerifyException(t);
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Test_div_float.rar_float
共1个文件
java:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 15 浏览量
2022-09-24
05:58:12
上传
评论
收藏 914B RAR 举报
温馨提示
@title Types of arguments - int, float. Dalvik doens t distinguish 32-bits types internally, so this division of float and int makes no sense but shall not crash the VM.
资源推荐
资源详情
资源评论
收起资源包目录
Test_div_float.rar (1个子文件)
Test_div_float.java 4KB
共 1 条
- 1
资源评论
周楷雯
- 粉丝: 89
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- VC6.0 windows.h 头文件 原始上传备份
- 基于Flask框架的JavaScript、HTML、CSS、Python整合的天气系统设计源码
- ad7606_drv.h
- 基于YOLOv5的工地安全帽识别及危险区域禁入系统设计源码
- 基于Alberto Abadie理论的Penalized Synthetic Control方法设计源码
- Reality安全下载.apk
- 基于Java语言的ape-club程序员社区交流平台设计源码
- 12864yejin.OBJ
- AirportItlwm-v2.3.0-stable-Sonoma14.0.kext.zip
- BOOT-00001前后端分离个人财务管理系统源码+数据库.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功