diff --git a/unit/TestAll.java b/unit/TestAll.java index 9488c6b..d26e0c7 100644 --- a/unit/TestAll.java +++ b/unit/TestAll.java @@ -7,6 +7,7 @@ import org.junit.runners.Suite.*; @SuiteClasses({ TestCursor.class, TestTextUtils.class, + TestAsmUtils.class, TestListUtils.class }) public class TestAll { diff --git a/unit/TestAsmUtils.java b/unit/TestAsmUtils.java new file mode 100644 index 0000000..4c5adb6 --- /dev/null +++ b/unit/TestAsmUtils.java @@ -0,0 +1,37 @@ +import org.junit.*; +import org.junit.runner.*; +import static org.junit.Assert.*; +import static net.loveruby.cflat.utils.AsmUtils.*; + +public class TestAsmUtils { + static public void main(String[] args) { + JUnitCore.main(TestAsmUtils.class.getName()); + } + + @Test public void test_align() { + assertEquals(0, align(0, 4)); + assertEquals(4, align(1, 4)); + assertEquals(4, align(2, 4)); + assertEquals(4, align(3, 4)); + assertEquals(4, align(4, 4)); + assertEquals(8, align(5, 4)); + assertEquals(8, align(6, 4)); + assertEquals(8, align(7, 4)); + assertEquals(8, align(8, 4)); + assertEquals(12, align(9, 4)); + + assertEquals(0, align(0, 8)); + assertEquals(8, align(1, 8)); + assertEquals(8, align(2, 8)); + assertEquals(8, align(7, 8)); + assertEquals(8, align(8, 8)); + assertEquals(16, align(9, 8)); + assertEquals(16, align(16, 8)); + assertEquals(24, align(17, 8)); + + assertEquals(0, align(0, 16)); + assertEquals(16, align(1, 16)); + assertEquals(16, align(16, 16)); + assertEquals(32, align(17, 16)); + } +}