Skip to content

Commit 620d8d0

Browse files
committed
added first test cases
1 parent 0dc33b5 commit 620d8d0

File tree

3 files changed

+87
-30
lines changed

3 files changed

+87
-30
lines changed

lib/mongo/bulk_write.ex

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ defmodule Mongo.BulkWrite do
2929
3030
bulk = "bulk"
3131
|> UnorderedBulk.new()
32-
|> insert_one(%{name: "Greta"})
33-
|> insert_one(%{name: "Tom"})
34-
|> insert_one(%{name: "Waldo"})
35-
|> update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
36-
|> update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
37-
|> update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
38-
|> delete_one(%{kind: "dog"})
39-
|> delete_one(%{kind: "dog"})
40-
|> delete_one(%{kind: "dog"})
32+
|> UnorderedBulk.insert_one(%{name: "Greta"})
33+
|> UnorderedBulk.insert_one(%{name: "Tom"})
34+
|> UnorderedBulk.insert_one(%{name: "Waldo"})
35+
|> UnorderedBulk.update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
36+
|> UnorderedBulk.update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
37+
|> UnorderedBulk.update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
38+
|> UnorderedBulk.delete_one(%{kind: "dog"})
39+
|> UnorderedBulk.delete_one(%{kind: "dog"})
40+
|> UnorderedBulk.delete_one(%{kind: "dog"})
4141
4242
result = BulkWrite.write(:mongo, bulk, w: 1)
4343
```
@@ -51,17 +51,17 @@ defmodule Mongo.BulkWrite do
5151
5252
```
5353
bulk = "bulk"
54-
|> new()
55-
|> insert_one(%{name: "Greta"})
56-
|> insert_one(%{name: "Tom"})
57-
|> insert_one(%{name: "Waldo"})
58-
|> update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
59-
|> update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
60-
|> update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
61-
|> update_many(%{kind: "dog"}, %{"$set": %{kind: "cat"}})
62-
|> delete_one(%{kind: "cat"})
63-
|> delete_one(%{kind: "cat"})
64-
|> delete_one(%{kind: "cat"})
54+
|> OrderedBulk.new()
55+
|> OrderedBulk.insert_one(%{name: "Greta"})
56+
|> OrderedBulk.insert_one(%{name: "Tom"})
57+
|> OrderedBulk.insert_one(%{name: "Waldo"})
58+
|> OrderedBulk.update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
59+
|> OrderedBulk.update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
60+
|> OrderedBulk.update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
61+
|> OrderedBulk.update_many(%{kind: "dog"}, %{"$set": %{kind: "cat"}})
62+
|> OrderedBulk.delete_one(%{kind: "cat"})
63+
|> OrderedBulk.delete_one(%{kind: "cat"})
64+
|> OrderedBulk.delete_one(%{kind: "cat"})
6565
6666
result = BulkWrite.write(:mongo, bulk, w: 1)
6767
```

lib/mongo/unordered_bulk.ex

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,16 @@ defmodule Mongo.UnorderedBulk do
1414
1515
```
1616
bulk = "bulk"
17-
|> new()
18-
|> insert_one(%{name: "Greta"})
19-
|> insert_one(%{name: "Tom"})
20-
|> insert_one(%{name: "Waldo"})
21-
|> update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
22-
|> update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
23-
|> update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
24-
|> delete_one(%{kind: "dog"})
25-
|> delete_one(%{kind: "dog"})
26-
|> delete_one(%{kind: "dog"})
17+
|> UnorderedBulk.new()
18+
|> UnorderedBulk.insert_one(%{name: "Greta"})
19+
|> UnorderedBulk.insert_one(%{name: "Tom"})
20+
|> UnorderedBulk.insert_one(%{name: "Waldo"})
21+
|> UnorderedBulk.update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
22+
|> UnorderedBulk.update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
23+
|> UnorderedBulk.update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
24+
|> UnorderedBulk.delete_one(%{kind: "dog"})
25+
|> UnorderedBulk.delete_one(%{kind: "dog"})
26+
|> UnorderedBulk.delete_one(%{kind: "dog"})
2727
2828
result = BulkWrite.write(:mongo, bulk, w: 1)
2929
```

test/mongo/bulk_writes_test.exs

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
defmodule Mongo.BulkWritesTest do
2+
use MongoTest.Case
3+
4+
alias Mongo.UnorderedBulk
5+
alias Mongo.OrderedBulk
6+
alias Mongo.BulkWrite
7+
8+
setup_all do
9+
assert {:ok, pid} = Mongo.TestConnection.connect
10+
{:ok, [pid: pid]}
11+
end
12+
13+
test "check unordered bulk", top do
14+
coll = unique_name()
15+
16+
bulk = coll
17+
|> UnorderedBulk.new()
18+
|> UnorderedBulk.insert_one(%{name: "Greta"})
19+
|> UnorderedBulk.insert_one(%{name: "Tom"})
20+
|> UnorderedBulk.insert_one(%{name: "Waldo"})
21+
|> UnorderedBulk.update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
22+
|> UnorderedBulk.update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
23+
|> UnorderedBulk.update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
24+
|> UnorderedBulk.delete_one(%{kind: "dog"})
25+
|> UnorderedBulk.delete_one(%{kind: "dog"})
26+
|> UnorderedBulk.delete_one(%{kind: "dog"})
27+
28+
result = BulkWrite.write(top.pid, bulk, w: 1)
29+
30+
assert {:ok, 0} == Mongo.count(top.pid, coll, %{})
31+
32+
end
33+
34+
test "check ordered bulk", top do
35+
coll = unique_name()
36+
37+
bulk = coll
38+
|> OrderedBulk.new()
39+
|> OrderedBulk.insert_one(%{name: "Greta"})
40+
|> OrderedBulk.insert_one(%{name: "Tom"})
41+
|> OrderedBulk.insert_one(%{name: "Waldo"})
42+
|> OrderedBulk.update_one(%{name: "Greta"}, %{"$set": %{kind: "dog"}})
43+
|> OrderedBulk.update_one(%{name: "Tom"}, %{"$set": %{kind: "dog"}})
44+
|> OrderedBulk.update_one(%{name: "Waldo"}, %{"$set": %{kind: "dog"}})
45+
|> OrderedBulk.update_many(%{kind: "dog"}, %{"$set": %{kind: "cat"}})
46+
|> OrderedBulk.delete_one(%{kind: "cat"})
47+
|> OrderedBulk.delete_one(%{kind: "cat"})
48+
|> OrderedBulk.delete_one(%{kind: "cat"})
49+
50+
result = BulkWrite.write(top.pid, bulk, w: 1)
51+
52+
assert {:ok, 0} == Mongo.count(top.pid, coll, %{})
53+
54+
end
55+
56+
57+
end

0 commit comments

Comments
 (0)