Test to ensure that the code for working out the "most recent" versions
of the key records (from PersistPtr records) is working correctly git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@353730 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
70002e644d
commit
fb53350066
@ -0,0 +1,99 @@
|
|||||||
|
|
||||||
|
/* ====================================================================
|
||||||
|
Copyright 2002-2004 Apache Software Foundation
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
==================================================================== */
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
package org.apache.poi.hslf.usermodel;
|
||||||
|
|
||||||
|
|
||||||
|
import junit.framework.TestCase;
|
||||||
|
import org.apache.poi.hslf.*;
|
||||||
|
import org.apache.poi.hslf.record.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Tests that SlideShow finds the right records as its most recent ones
|
||||||
|
*
|
||||||
|
* @author Nick Burch (nick at torchbox dot com)
|
||||||
|
*/
|
||||||
|
public class TestMostRecentRecords extends TestCase {
|
||||||
|
// HSLFSlideShow primed on the test data
|
||||||
|
private HSLFSlideShow hss;
|
||||||
|
// SlideShow primed on the test data
|
||||||
|
private SlideShow ss;
|
||||||
|
|
||||||
|
public TestMostRecentRecords() throws Exception {
|
||||||
|
String dirname = System.getProperty("HSLF.testdata.path");
|
||||||
|
String filename = dirname + "/basic_test_ppt_file.ppt";
|
||||||
|
hss = new HSLFSlideShow(filename);
|
||||||
|
ss = new SlideShow(hss);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testCount() throws Exception {
|
||||||
|
// Most recent core records
|
||||||
|
Record[] mrcr = ss.getMostRecentCoreRecords();
|
||||||
|
|
||||||
|
// Master sheet + master notes + 2 slides + 2 notes + document
|
||||||
|
assertEquals(7, mrcr.length);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testRightRecordTypes() throws Exception {
|
||||||
|
// Most recent core records
|
||||||
|
Record[] mrcr = ss.getMostRecentCoreRecords();
|
||||||
|
|
||||||
|
// Document
|
||||||
|
assertEquals(1000, mrcr[0].getRecordType());
|
||||||
|
// Notes of master
|
||||||
|
assertEquals(1008, mrcr[1].getRecordType());
|
||||||
|
// Master
|
||||||
|
assertEquals(1016, mrcr[2].getRecordType());
|
||||||
|
|
||||||
|
// Slide
|
||||||
|
assertEquals(1006, mrcr[3].getRecordType());
|
||||||
|
// Notes
|
||||||
|
assertEquals(1008, mrcr[4].getRecordType());
|
||||||
|
// Slide
|
||||||
|
assertEquals(1006, mrcr[5].getRecordType());
|
||||||
|
// Notes
|
||||||
|
assertEquals(1008, mrcr[6].getRecordType());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testCorrectRecords() throws Exception {
|
||||||
|
// Most recent core records
|
||||||
|
Record[] mrcr = ss.getMostRecentCoreRecords();
|
||||||
|
|
||||||
|
// All records
|
||||||
|
Record[] allr = hss.getRecords();
|
||||||
|
|
||||||
|
// Ensure they are the right (latest) version of each
|
||||||
|
|
||||||
|
// Document - late version
|
||||||
|
assertEquals(allr[12], mrcr[0]);
|
||||||
|
// Notes of master - unchanged
|
||||||
|
assertEquals(allr[2], mrcr[1]);
|
||||||
|
// Master - unchanged
|
||||||
|
assertEquals(allr[1], mrcr[2]);
|
||||||
|
|
||||||
|
// Slide - added at start
|
||||||
|
assertEquals(allr[3], mrcr[3]);
|
||||||
|
// Notes - added at start
|
||||||
|
assertEquals(allr[4], mrcr[4]);
|
||||||
|
// Slide - added later and then changed
|
||||||
|
assertEquals(allr[13], mrcr[5]);
|
||||||
|
// Notes - added later but not changed
|
||||||
|
assertEquals(allr[9], mrcr[6]);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user