package imagej.legacy;

import static org.junit.Assert.*;
import ij.ImagePlus;
import ij.process.ByteProcessor;

import net.imglib2.img.Axes;
import net.imglib2.img.Axis;

import org.junit.Test;


public class DatasetHarmonizerTest {

	private DatasetHarmonizer harmonizer;
	private ImageTranslator translator = new DefaultImageTranslator();
	
	@Test
	public void testDatasetHarmonizer() {
		harmonizer = new DatasetHarmonizer(translator);
		assertTrue(true);
	}

	@Test
	public void testRegisterType() {
		harmonizer = new DatasetHarmonizer(translator);
		ByteProcessor proc = new ByteProcessor(1,2,new byte[1*2],null);
		ImagePlus imp = new ImagePlus("junk",proc);
		harmonizer.registerType(imp);
		assertTrue(true);
	}

	@Test
	public void testResetTypeTracking() {
		harmonizer = new DatasetHarmonizer(translator);
		ByteProcessor proc = new ByteProcessor(1,2,new byte[1*2],null);
		ImagePlus imp = new ImagePlus("junk",proc);
		harmonizer.registerType(imp);
		harmonizer.resetTypeTracking();
		assertTrue(true);
	}

	private void tryUpdateDatasetWithOrder(Axis[] axes) {
		
	}
	
	@Test
	public void testUpdateDatasetWeirdAxisOrder() {
		Axis[] axes = new Axis[]{null, Axes.CHANNEL, Axes.Z, Axes.TIME};
		for (Axis outer : axes) {
			for (Axis middle : axes) {
				for (Axis inner : axes) {
					if (TestUtils.allNull(new Axis[]{outer,middle,inner})) continue;
					if (TestUtils.repeated(new Axis[]{outer,middle,inner})) continue;
					tryUpdateDatasetWithOrder(new Axis[]{outer,middle,inner});
				}
			}
		}
	}

	@Test
	public void testUpdateLegacyImageWeirdAxisOrder() {
		//fail("Not yet implemented");
	}

}

@@ -1071,16 +1071,33 @@
 es) %7B%0A%09%09
+assertTrue(true);
 %0A%09%7D%0A%09%0A%09@
@@ -1589,16 +1589,36 @@
 der() %7B%0A
+%09%09assertTrue(true);%0A
 %09%09//fail

make empty tests simply assertTrue(true). I think Eclipse doesn't mind but Hudson does.