1*b1cdbd2cSJim Jagielski /**************************************************************
2*b1cdbd2cSJim Jagielski  *
3*b1cdbd2cSJim Jagielski  * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski  * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski  * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski  * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski  * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski  * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski  * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski  *
11*b1cdbd2cSJim Jagielski  *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski  *
13*b1cdbd2cSJim Jagielski  * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski  * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski  * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski  * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski  * under the License.
19*b1cdbd2cSJim Jagielski  *
20*b1cdbd2cSJim Jagielski  *************************************************************/
21*b1cdbd2cSJim Jagielski 
22*b1cdbd2cSJim Jagielski 
23*b1cdbd2cSJim Jagielski 
24*b1cdbd2cSJim Jagielski // MARKER(update_precomp.py): autogen include statement, do not remove
25*b1cdbd2cSJim Jagielski #include "precompiled_sal.hxx"
26*b1cdbd2cSJim Jagielski 
27*b1cdbd2cSJim Jagielski // LLA:
28*b1cdbd2cSJim Jagielski // this file is converted to use with testshl2
29*b1cdbd2cSJim Jagielski // original was placed in sal/test/textenc.cxx
30*b1cdbd2cSJim Jagielski 
31*b1cdbd2cSJim Jagielski 
32*b1cdbd2cSJim Jagielski // -----------------------------------------------------------------------------
33*b1cdbd2cSJim Jagielski #include <stdio.h>
34*b1cdbd2cSJim Jagielski #include <osl/profile.h>
35*b1cdbd2cSJim Jagielski 
36*b1cdbd2cSJim Jagielski #include "cppunit/TestAssert.h"
37*b1cdbd2cSJim Jagielski #include "cppunit/TestFixture.h"
38*b1cdbd2cSJim Jagielski #include "cppunit/extensions/HelperMacros.h"
39*b1cdbd2cSJim Jagielski #include "cppunit/plugin/TestPlugIn.h"
40*b1cdbd2cSJim Jagielski 
41*b1cdbd2cSJim Jagielski //==================================================================================================
42*b1cdbd2cSJim Jagielski // -----------------------------------------------------------------------------
43*b1cdbd2cSJim Jagielski namespace osl_Profile
44*b1cdbd2cSJim Jagielski {
45*b1cdbd2cSJim Jagielski     class oldtests : public CppUnit::TestFixture
46*b1cdbd2cSJim Jagielski     {
47*b1cdbd2cSJim Jagielski     public:
48*b1cdbd2cSJim Jagielski         void test_profile();
49*b1cdbd2cSJim Jagielski 
50*b1cdbd2cSJim Jagielski         CPPUNIT_TEST_SUITE( oldtests );
51*b1cdbd2cSJim Jagielski         CPPUNIT_TEST( test_profile );
52*b1cdbd2cSJim Jagielski         CPPUNIT_TEST_SUITE_END( );
53*b1cdbd2cSJim Jagielski     };
54*b1cdbd2cSJim Jagielski 
test_profile(void)55*b1cdbd2cSJim Jagielski void oldtests::test_profile(void)
56*b1cdbd2cSJim Jagielski {
57*b1cdbd2cSJim Jagielski 	oslProfile hProfile;
58*b1cdbd2cSJim Jagielski     rtl_uString* ustrProfileName=0;
59*b1cdbd2cSJim Jagielski     rtl_uString* ustrProfileName2=0;
60*b1cdbd2cSJim Jagielski 
61*b1cdbd2cSJim Jagielski     rtl_uString_newFromAscii(&ustrProfileName,"//./tmp/soffice.ini");
62*b1cdbd2cSJim Jagielski     rtl_uString_newFromAscii(&ustrProfileName2,"//./tmp/not_existing_path/soffice.ini");
63*b1cdbd2cSJim Jagielski 
64*b1cdbd2cSJim Jagielski 
65*b1cdbd2cSJim Jagielski 	// successful write
66*b1cdbd2cSJim Jagielski     hProfile = osl_openProfile( ustrProfileName, 0 );
67*b1cdbd2cSJim Jagielski 	if (hProfile != 0)
68*b1cdbd2cSJim Jagielski 	{
69*b1cdbd2cSJim Jagielski 		if (! osl_writeProfileBool( hProfile, "testsection", "testbool", 1 ))
70*b1cdbd2cSJim Jagielski 			printf( "### cannot write into init file!\n" );
71*b1cdbd2cSJim Jagielski 
72*b1cdbd2cSJim Jagielski 		osl_closeProfile( hProfile );
73*b1cdbd2cSJim Jagielski 	}
74*b1cdbd2cSJim Jagielski 
75*b1cdbd2cSJim Jagielski 	// unsuccessful write
76*b1cdbd2cSJim Jagielski     hProfile = osl_openProfile( ustrProfileName2, 0 );
77*b1cdbd2cSJim Jagielski 	if (hProfile != 0)
78*b1cdbd2cSJim Jagielski 	{
79*b1cdbd2cSJim Jagielski 		if (osl_writeProfileBool( hProfile, "testsection", "testbool", 1 ))
80*b1cdbd2cSJim Jagielski 			printf( "### unexpected success writing into test2.ini!\n" );
81*b1cdbd2cSJim Jagielski 
82*b1cdbd2cSJim Jagielski 		osl_closeProfile( hProfile );
83*b1cdbd2cSJim Jagielski 	}
84*b1cdbd2cSJim Jagielski 
85*b1cdbd2cSJim Jagielski     rtl_uString_release(ustrProfileName);
86*b1cdbd2cSJim Jagielski     rtl_uString_release(ustrProfileName2);
87*b1cdbd2cSJim Jagielski }
88*b1cdbd2cSJim Jagielski 
89*b1cdbd2cSJim Jagielski } // namespace osl_Profile
90*b1cdbd2cSJim Jagielski 
91*b1cdbd2cSJim Jagielski // -----------------------------------------------------------------------------
92*b1cdbd2cSJim Jagielski CPPUNIT_TEST_SUITE_REGISTRATION( osl_Profile::oldtests );
93*b1cdbd2cSJim Jagielski 
94*b1cdbd2cSJim Jagielski // -----------------------------------------------------------------------------
95*b1cdbd2cSJim Jagielski CPPUNIT_PLUGIN_IMPLEMENT();
96