rdbuf.pass.cpp revision b64f8b07c104c6cc986570ac8ee0ed16a9f23976
1b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org//===----------------------------------------------------------------------===//
2b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org//
3b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org//                     The LLVM Compiler Infrastructure
4b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org//
5b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org// This file is dual licensed under the MIT and the University of Illinois Open
6b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org// Source Licenses. See LICENSE.TXT for details.
7b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org//
8b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org//===----------------------------------------------------------------------===//
9b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org
10b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org// <fstream>
1120a5c465cf17718743e5c5758baf9266bbb6d852pbos@webrtc.org
12b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org// template <class charT, class traits = char_traits<charT> >
131ed7008c34205d4f606ed4436c3bdd8902c4428akjellander@webrtc.org// class basic_ofstream
14151f6f2b95bc99093ecaf0d41e1843f0c0c1a547henrike@webrtc.org
15151f6f2b95bc99093ecaf0d41e1843f0c0c1a547henrike@webrtc.org// basic_filebuf<charT,traits>* rdbuf() const;
16b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org
171ed7008c34205d4f606ed4436c3bdd8902c4428akjellander@webrtc.org#include <fstream>
181ed7008c34205d4f606ed4436c3bdd8902c4428akjellander@webrtc.org#include <cassert>
1927103e5917380fd80091701876bb16f33a9d72f8kjellander@webrtc.org
201ed7008c34205d4f606ed4436c3bdd8902c4428akjellander@webrtc.orgint main()
211ed7008c34205d4f606ed4436c3bdd8902c4428akjellander@webrtc.org{
22b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org    {
23b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org        std::ofstream fs("test.dat");
24b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org        std::filebuf* fb = fs.rdbuf();
251ed7008c34205d4f606ed4436c3bdd8902c4428akjellander@webrtc.org        assert(fb->sputc('r') == 'r');
261ed7008c34205d4f606ed4436c3bdd8902c4428akjellander@webrtc.org    }
27b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org    remove("test.dat");
28b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org    {
29b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org        std::wofstream fs("test.dat");
30b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org        std::wfilebuf* fb = fs.rdbuf();
31b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org        assert(fb->sputc(L'r') == L'r');
32b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org    }
33b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org    remove("test.dat");
34b015cbede88899f67a53fbbe581b02ce8e32794andrew@webrtc.org}
353f45c2e0ac4cb280f941efa3a3476895795e3dd6pbos@webrtc.org