mirror of
https://github.com/DatabaseCleaner/database_cleaner
synced 2023-03-27 23:22:03 -04:00
75 lines
1.9 KiB
Markdown
75 lines
1.9 KiB
Markdown
# Database Cleaner Adapter for Neo4j
|
|
|
|
[](https://travis-ci.org/DatabaseCleaner/database_cleaner-neo4j)
|
|
[](https://codeclimate.com/github/DatabaseCleaner/database_cleaner-neo4j)
|
|
|
|
Clean your Neo4j databases with Database Cleaner.
|
|
|
|
See https://github.com/DatabaseCleaner/database_cleaner for more information.
|
|
|
|
## Installation
|
|
|
|
```ruby
|
|
# Gemfile
|
|
group :test do
|
|
gem 'database_cleaner-neo4j'
|
|
end
|
|
```
|
|
|
|
## Supported Strategies
|
|
|
|
<table>
|
|
<tbody>
|
|
<tr>
|
|
<th>Truncation</th>
|
|
<th>Transaction</th>
|
|
<th>Deletion</th>
|
|
</tr>
|
|
<tr>
|
|
<td> Yes</td>
|
|
<td> <b>Yes</b></td>
|
|
<td> Yes</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
(Default strategy is denoted in bold)
|
|
|
|
## Configuration options
|
|
|
|
<table>
|
|
<tbody>
|
|
<tr>
|
|
<th>ORM</th>
|
|
<th>How to access</th>
|
|
<th>Notes</th>
|
|
</tr>
|
|
<tr>
|
|
<td>Neo4j</td>
|
|
<td><code>DatabaseCleaner[:neo4j]</code></td>
|
|
<td>Database type and path(URI) <code>DatabaseCleaner[:neo4j, db: {type: :server_db, path: 'http://localhost:7475'}].</code></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
Note that Truncation and Deletion strategies for Neo4j will just delete all nodes and relationships from the database.
|
|
|
|
## Common Errors
|
|
|
|
### Model fails to load with Neo4j using transactions
|
|
|
|
When you are using [neo4j](https://github.com/neo4jrb/neo4j) gem it creates schema and reads indexes upon loading models. These operations can't be done during a transaction. You have to preload your models before DatabaseCleaner starts a transaction.
|
|
|
|
Add to your rails_helper or spec_helper after requiring database_cleaner-neo4j:
|
|
|
|
```ruby
|
|
require 'database_cleaner/neo4j'
|
|
|
|
Dir["#{Rails.root}/app/models/**/*.rb"].each do |model|
|
|
load model
|
|
end
|
|
```
|
|
|
|
## COPYRIGHT
|
|
|
|
See [LICENSE] for details.
|