Revision 21615 trunk/libraries/libRaster/src-test/org/gvsig/raster/buffer/cache/TestStructCache.java

View differences:

TestStructCache.java
1
/* gvSIG. Sistema de Informaci?n Geogr?fica de la Generalitat Valenciana
2
 *
3
 * Copyright (C) 2007 IVER T.I. and Generalitat Valenciana.
4
 *
5
 * This program is free software; you can redistribute it and/or
6
 * modify it under the terms of the GNU General Public License
7
 * as published by the Free Software Foundation; either version 2
8
 * of the License, or (at your option) any later version.
9
 *
10
 * This program is distributed in the hope that it will be useful,
11
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 * GNU General Public License for more details.
14
 *
15
 * You should have received a copy of the GNU General Public License
16
 * along with this program; if not, write to the Free Software
17
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,USA.
18
 */
1 19
package org.gvsig.raster.buffer.cache;
2 20

  
3 21
import junit.framework.TestCase;
4 22

  
5 23
import org.gvsig.raster.RasterLibrary;
6 24
import org.gvsig.raster.dataset.IBuffer;
7

  
8

  
9 25
/**
10 26
 * Test para comprobar la inicializaci?n de la cach?. El constructor de CacheStruct es el 
11 27
 * encargado de crear la estructura de cache. Esta clase comprueba que esta creaci?n
......
14 30
 * 
15 31
 * @author Nacho Brodin (nachobrodin@gmail.com)
16 32
 */
17
public class TestStructCache extends TestCase{
18
	private CacheStruct cs = null;
19
	
20
	static{
21
		RasterLibrary.wakeUp();	
33
public class TestStructCache extends TestCase {
34
	private boolean     showCode = false;
35
	private CacheStruct cs       = null;
36

  
37
	static {
38
		RasterLibrary.wakeUp();
22 39
	}
23
	
24
	public void start(){
40

  
41
	public void start() {
25 42
		this.setUp();
26 43
		this.testStack();
27 44
	}
28
	
45

  
29 46
	public void setUp() {
30 47
		System.err.println("TestStructCache running...");
31
		
32 48
	}
33 49
	
34 50
	public void testStack(){
35
		//Test para los siguientes valores
36
		//Cach? size = 20M
37
		//Pags Per Group = 5
38
		//Page size = 2M
51
		// Test para los siguientes valores
52
		// Cach? size = 20M
53
		// Pags Per Group = 5
54
		// Page size = 2M
39 55

  
40 56
		cs = new CacheStruct(3, IBuffer.TYPE_BYTE, 2048, 2048, 20, 2);
41
		print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 2048, 2048, IBuffer.TYPE_BYTE);
57
		if (showCode)
58
			print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 2048, 2048, IBuffer.TYPE_BYTE);
42 59
		assertEquals(cs.getHPag(), 256);
43 60
		assertEquals(cs.getNBands(), 3);
44 61
		assertEquals(cs.getCacheSize(), 23592960);
......
46 63
		assertEquals(cs.getPagSize(), 1572864);
47 64
		assertEquals(cs.getNPags(), 15);
48 65
		assertEquals(cs.getNGroups(), 3);
49
		System.out.println("**********************************************");
50
		
51
		
66
		if (showCode)
67
			System.out.println("**********************************************");
68

  
52 69
		cs = new CacheStruct(4, IBuffer.TYPE_INT, 5000, 5000, 20, 2);
53
		print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 5000, 5000, IBuffer.TYPE_INT);
70
		if (showCode)
71
			print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 5000, 5000, IBuffer.TYPE_INT);
54 72
		assertEquals(cs.getHPag(), 16);
55 73
		assertEquals(cs.getNBands(), 4);
56 74
		assertEquals(cs.getCacheSize(), 25600000);
......
58 76
		assertEquals(cs.getPagSize(), 1280000);
59 77
		assertEquals(cs.getNPags(), 20);
60 78
		assertEquals(cs.getNGroups(), 4);
61
		System.out.println("**********************************************");
62
		
79
		if (showCode)
80
			System.out.println("**********************************************");
81

  
63 82
		cs = new CacheStruct(3, IBuffer.TYPE_FLOAT, 42000, 42000, 20, 2);
64
		print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 42000, 42000, IBuffer.TYPE_FLOAT);
83
		if (showCode)
84
			print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 42000, 42000, IBuffer.TYPE_FLOAT);
65 85
		assertEquals(cs.getHPag(), 4);
66 86
		assertEquals(cs.getNBands(), 3);
67 87
		assertEquals(cs.getCacheSize(), 20160000);
......
69 89
		assertEquals(cs.getPagSize(), 2016000);
70 90
		assertEquals(cs.getNPags(), 10);
71 91
		assertEquals(cs.getNGroups(), 2);
72
		System.out.println("**********************************************");
73
		
92
		if (showCode)
93
			System.out.println("**********************************************");
94

  
74 95
		cs = new CacheStruct(1, IBuffer.TYPE_FLOAT, 105000, 105000, 20, 2);
75
		print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 105000, 105000, IBuffer.TYPE_FLOAT);
96
		if (showCode)
97
			print(cs, "Size = 20M; Pags Per Group = 5; Page size = 2M", 105000, 105000, IBuffer.TYPE_FLOAT);
76 98
		assertEquals(cs.getHPag(), 4);
77 99
		assertEquals(cs.getNBands(), 1);
78 100
		assertEquals(cs.getCacheSize(), 25200000);
......
80 102
		assertEquals(cs.getPagSize(), 1680000);
81 103
		assertEquals(cs.getNPags(), 15);
82 104
		assertEquals(cs.getNGroups(), 3);
83
		System.out.println("**********************************************");		
105
		if (showCode)
106
			System.out.println("**********************************************");
84 107
	}
85 108
	
86
	private void print(CacheStruct cs, String initValues, int w, int h, int type) {
109
	public void print(CacheStruct cs, String initValues, int w, int h, int type) {
87 110
		System.out.println(initValues);
88 111
		System.out.println("W x H = " + w + " x " + h);
89 112
		cs.show();
90 113
	}
91
}
114
}

Also available in: Unified diff