package net.runelite.deob.deobfuscators.rename;

import java.io.File;
import java.io.IOException;
import net.runelite.deob.ClassGroup;
import net.runelite.deob.Method;
import net.runelite.deob.util.JarUtil;
import org.junit.Assert;
import org.junit.Test;

public class MapStaticTest
{
	private static final String methods[][] = {
		{ "client.vmethod3054", "client.vmethod2973" },
		{ "class99.method2220", "class99.method2149" },
		{ "class146.vmethod3158", "class146.vmethod3070" },
		{ "class166.method3315", "class166.method3254" },
	};
	
	//@Test
	public void testMappable() throws IOException
	{
		ClassGroup group1 = JarUtil.loadJar(new File("c:/rs/adamin1.jar"));
		ClassGroup group2 = JarUtil.loadJar(new File("c:/rs/adamin2.jar"));
		
//		Assert.assertTrue(MappingExecutorUtil.isMappable(
//			group1.findClass("class99").findMethod("method2220"),
//			group2.findClass("class99").findMethod("method2149")
//		));
	}
	
	//@Test
	public void testAll() throws IOException
	{
		ClassGroup group1 = JarUtil.loadJar(new File("c:/rs/adamin1.jar"));
		ClassGroup group2 = JarUtil.loadJar(new File("c:/rs/adamin2.jar"));
		
		for (String[] s : methods)
		{
			String[] one = s[0].split("\\."), two = s[1].split("\\.");
			
			Method m1 = group1.findClass(one[0]).findMethod(one[1]);
			Method m2 = group2.findClass(two[0]).findMethod(two[1]);
		
			ParallelExecutorMapping mappings = MappingExecutorUtil.map(m1, m2);
		}
	}
	
	@Test
	public void test() throws IOException
	{
		ClassGroup group1 = JarUtil.loadJar(new File("c:/rs/adamin1.jar"));
		ClassGroup group2 = JarUtil.loadJar(new File("c:/rs/adamin2.jar"));
		
		Method m1 = group1.findClass("class166").findMethod("method3315");
		Method m2 = group2.findClass("class166").findMethod("method3254");
		
		ParallelExecutorMapping mappings = MappingExecutorUtil.map(m1, m2);
	}
}

@@ -529,16 +529,67 @@
 254%22 %7D,%0A
+%09%09%7B %22class167.method3406%22, %22class167.method3296%22 %7D%0A
 %09%7D;%0A%09%0A%09/
@@ -1694,33 +1694,33 @@
 ndClass(%22class16
-6
+7
 %22).findMethod(%22m
@@ -1725,19 +1725,19 @@
 %22method3
-315
+406
 %22);%0A%09%09Me
@@ -1771,17 +1771,17 @@
 %22class16
-6
+7
 %22).findM
@@ -1795,18 +1795,18 @@
 method32
-54
+96
 %22);%0A%09%09%0A%09

Add to test