blob: 4cdac84da5d8531375be210f35403c39a87cfaac [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>Namespace Lucene.Net.Store
| Apache Lucene.NET 4.8.0 Documentation </title>
<meta name="viewport" content="width=device-width">
<meta name="title" content="Namespace Lucene.Net.Store
| Apache Lucene.NET 4.8.0 Documentation ">
<meta name="generator" content="docfx 2.47.0.0">
<link rel="shortcut icon" href="../../logo/favicon.ico">
<link rel="stylesheet" href="../../styles/docfx.vendor.css">
<link rel="stylesheet" href="../../styles/docfx.css">
<link rel="stylesheet" href="../../styles/main.css">
<meta property="docfx:navrel" content="../../toc.html">
<meta property="docfx:tocrel" content="../toc.html">
<meta property="docfx:rel" content="../../">
</head>
<body data-spy="scroll" data-target="#affix" data-offset="120">
<div id="wrapper">
<header>
<nav id="autocollapse" class="navbar ng-scope" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="../../index.html">
<img id="logo" class="svg" src="../../logo/lucene-net-color.png" alt="">
</a>
</div>
<div class="collapse navbar-collapse" id="navbar">
<form class="navbar-form navbar-right" role="search" id="search">
<div class="form-group">
<input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
</div>
</form>
</div>
</div>
</nav>
<div class="subnav navbar navbar-default">
<div class="container hide-when-search" id="breadcrumb">
<ul class="breadcrumb">
<li></li>
</ul>
</div>
</div>
</header>
<div class="container body-content">
<div id="search-results">
<div class="search-list"></div>
<div class="sr-items">
<p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
</div>
<ul id="pagination"></ul>
</div>
</div>
<div role="main" class="container body-content hide-when-search">
<div class="sidenav hide-when-search">
<a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
<div class="sidetoggle collapse" id="sidetoggle">
<div id="sidetoc"></div>
</div>
</div>
<div class="article row grid-right">
<div class="col-md-10">
<article class="content wrap" id="_content" data-uid="Lucene.Net.Store">
<h1 id="Lucene_Net_Store" data-uid="Lucene.Net.Store" class="text-break">Namespace Lucene.Net.Store
</h1>
<div class="markdown level0 summary"><!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You 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.
-->
<p>Support for testing store mechanisms. </p>
<p>The primary class is <a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a>, which
wraps any Directory implementation and provides additional checks.</p>
</div>
<div class="markdown level0 conceptual"></div>
<div class="markdown level0 remarks"></div>
<h3 id="classes">Classes
</h3>
<h4><a class="xref" href="Lucene.Net.Store.BaseDirectoryTestCase.html">BaseDirectoryTestCase</a></h4>
<section><p>Base class for per-Directory tests.</p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.BaseDirectoryWrapper.html">BaseDirectoryWrapper</a></h4>
<section><p>Calls check index on dispose.</p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.Failure.html">Failure</a></h4>
<section><p>Objects that represent fail-able conditions. Objects of a derived
class are created and registered with the mock directory. After
register, each object will be invoked once for each first write
of a file, giving the object a chance to throw an <span class="xref">System.IO.IOException</span>.</p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.FakeIOException.html">FakeIOException</a></h4>
<section><p>Use this when throwing fake <span class="xref">System.IO.IOException</span>,
e.g. from <a class="xref" href="Lucene.Net.Store.Failure.html">Failure</a>.</p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a></h4>
<section><p>This is a Directory Wrapper that adds methods
intended to be used only by unit tests.
It also adds a number of features useful for testing:
<ul><li>
Instances created by <a class="xref" href="Lucene.Net.Util.LuceneTestCase.html#Lucene_Net_Util_LuceneTestCase_NewDirectory">NewDirectory()</a> are tracked
to ensure they are disposed by the test.
</li><li>
When a <a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a> is disposed, it will throw an exception if
it has any open files against it (with a stacktrace indicating where
they were opened from).
</li><li>
When a <a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a> is disposed, it runs <a class="xref" href="../Lucene.Net/Lucene.Net.Index.CheckIndex.html">CheckIndex</a> to test if
the index was corrupted.
</li><li>
<a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a> simulates some &quot;features&quot; of Windows, such as
refusing to write/delete to open files.
</li></ul></p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.MockIndexInputWrapper.html">MockIndexInputWrapper</a></h4>
<section><p>Used by <a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a> to create an input stream that
keeps track of when it&apos;s been disposed.</p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.MockIndexOutputWrapper.html">MockIndexOutputWrapper</a></h4>
<section><p>Used by <a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a> to create an output stream that
will throw an <span class="xref">System.IO.IOException</span> on fake disk full, track max
disk space actually used, and maybe throw random
<span class="xref">System.IO.IOException</span>s.</p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.MockLockFactoryWrapper.html">MockLockFactoryWrapper</a></h4>
<section><p>Used by <a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html">MockDirectoryWrapper</a> to wrap another factory
and track open locks.</p>
</section>
<h4><a class="xref" href="Lucene.Net.Store.TestHelper.html">TestHelper</a></h4>
<section><p>This class provides access to namespace-level features defined in the
Store namespace. It is used for testing only.</p>
</section>
<h3 id="enums">Enums
</h3>
<h4><a class="xref" href="Lucene.Net.Store.Throttling.html">Throttling</a></h4>
<section><p>Enum for controlling hard disk throttling.
Set via <a class="xref" href="Lucene.Net.Store.MockDirectoryWrapper.html#Lucene_Net_Store_MockDirectoryWrapper_Throttling">Throttling</a>
<p>
WARNING: can make tests very slow.</p>
</section>
</article>
</div>
<div class="hidden-sm col-md-2" role="complementary">
<div class="sideaffix">
<div class="contribution">
<ul class="nav">
<li>
<a href="https://github.com/apache/lucenenet/blob/docs-4.8.0-beta00007/src/Lucene.Net.TestFramework/Store/package.md/#L2" class="contribution-link">Improve this Doc</a>
</li>
</ul>
</div>
<nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
<!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
</nav>
</div>
</div>
</div>
</div>
<footer>
<div class="grad-bottom"></div>
<div class="footer">
<div class="container">
<span class="pull-right">
<a href="#top">Back to top</a>
</span>
Copyright © 2020 Licensed to the Apache Software Foundation (ASF)
</div>
</div>
</footer>
</div>
<script type="text/javascript" src="../../styles/docfx.vendor.js"></script>
<script type="text/javascript" src="../../styles/docfx.js"></script>
<script type="text/javascript" src="../../styles/main.js"></script>
</body>
</html>